Logo
My Account |  Site Map | Contact Us  
Welcome Guest Search | Active Topics | Sign In | Register

WebBrowser Not rendering Page Options
Michal
Posted: Friday, November 10, 2017 2:29:47 AM
Rank: Newbie
Groups: Member

Joined: 11/10/2017
Posts: 4
I have a very simple code that loads pages. It fails on this page though. https://www.tab.com.au
It renders this page as gray and nothing in in. This also happens if I load google, and search for the url and then click on it through the search results.

my code is simple, as below and loads all other pages I have tried without issues.

Url = InputBox("URL?")
WebControl1.WebView.Url = Url
eo_support
Posted: Friday, November 10, 2017 10:12:06 AM
Rank: Administration
Groups: Administration

Joined: 5/27/2007
Posts: 19,749
Hi,

We tested this page with the latest TabbedBrowser sample application and it loads fine here. Can you try it and see if it works for you?

Thanks
Michal
Posted: Friday, November 10, 2017 3:17:50 PM
Rank: Newbie
Groups: Member

Joined: 11/10/2017
Posts: 4
Tabbed browser - Same outcome, gray screen no rendered page.

I can confirm I have access to the page, through all other browsers without any issues.

After some further investigation, I have found that the issue is that my application has stopped rendering this website after installing the latest update; 17.3.13.0. I can also confirm that this website throws up a certificate error if not handled. I have seen some posts regarding this before version 17.2.43. Which I believe is being "suppressed" in the latest update if looking at other posts here is an indication. This has now caused these further issues.

1. In the previous version of E.O. Webbrowser, EO.Total.2017.1.76.0, I handled the certificate error and the page loaded OK. Now it does not. This is regardless if I have the certificate error handler in or out.

2. I also access this site using the thread-runner, it only returns the pre-rendering code NOT the actual HTML that renders the webpage (the whole point of having the E.O. webview) and again the code worked pre-instaling the new update.

Quote:
Dim threadRunner As New EO.WebBrowser.ThreadRunner()
Dim webView As EO.WebBrowser.WebView = threadRunner.CreateWebView()
s = threadRunner.Send(Function()
webView.LoadUrl(url).WaitOne(10000)
Return webView.GetHtml
End Function)



other threads on support indicates that there is no way to handle the error in the thread-runner; is this correct? If not can you suggest a solution of how to handle the certificate error in the above code?

Further I have re-installed the previous version of E.O. Total I had before: (EO.Total.2017.1.76.0) In this instance the tabbed Browser sample throws up the unhandeled Certificate error:
Quote:
The server's response was insecure (e.g. there was a cert error).

To customize this message, please handle the WebView's LoadFailed event and then Set e.ErrorMessage in your event handler based on e.ErrorCode, or call e.UseDefaultMessage if you just wish to display the error message without this help message.


and I can get the page to load through my EO webbrowser if I handle the error.

By the way the certificate error message is a "-214" if handled and pops up before the page finally renders. You could also try https://www.tab.com.au/racing/meetings/today/R as this has several of those same errors.
eo_support
Posted: Friday, November 10, 2017 4:04:32 PM
Rank: Administration
Groups: Administration

Joined: 5/27/2007
Posts: 19,749
Hi,

Error code -214 is CERTIFICATE_TRANSPARENCY_REQUIRED, this is a known issue existed in the version of Chromium browser engine the current version of EO.WebBrowser is based on (V54). Our next version (based on Chromium V62) will be out in a few weeks. Once that is out this issue should be resolved.

We also realized that while we though the current version of TabbedBrowser works, it actually displays a "tab.com.au is unavailable from your location" error message. The page is a perfectly legal and even good looking HTML page and the browser engine displayed it correctly --- except that it must be different than the one you are actually having problem with. As a result, we will not be able to verify this particular page from here. If you have a different page for us to check, we can check it here with our internal builds of the new version to make sure that this issue is resolved in the new version.

Thanks!

Michal
Posted: Friday, November 10, 2017 4:43:11 PM
Rank: Newbie
Groups: Member

Joined: 11/10/2017
Posts: 4
OK thanks, I can't give you a website at the moment that behaves the same as the website I have an issue.

Further 1:

Is the Error -214 being suppressed in the current version? Because it is not being thrown, the page simply does not render. In the older version the error is thrown (which is how I found what it was) and can be handled at least in the browser. If it is suppressed will you revert to the previous state once you update to the new version of chromium ? Or will it be that the error simply will not be an issue so the suppression code wont be triggered?

EDIT: An observation In regards to the above issue, I have found some other pages that throw the error in the older version, (https://www.verisign.com) but these render OK in the new version, without the error being thrown. That leads me to think that the error is being suppressed somehow ?

Further 2:

I had to revert to EO.Total.2017.1.76.0, where at least I can view the page with the error being handled by me. This however brings up the question you didn't confirm previously:

Using the code below, with threadrunner, can I handle the error, or is this not possible? If possible can you suggest a solution of how to handle the certificate error in the below code?


Quote:
Dim threadRunner As New EO.WebBrowser.ThreadRunner()
Dim webView As EO.WebBrowser.WebView = threadRunner.CreateWebView()
s = threadRunner.Send(Function()
webView.LoadUrl(url).WaitOne(10000)
Return webView.GetHtml
End Function)

Thank you for your assistance
eo_support
Posted: Friday, November 10, 2017 6:20:42 PM
Rank: Administration
Groups: Administration

Joined: 5/27/2007
Posts: 19,749
Hi,

Without a page being able to see the problem we can't tell you exactly for sure what caused this particular page to fail.

The root of the problem is caused by a bug in the Chromium's browser engine that has since been fixed by the Chromium team. We generally do not back port fixes made by the Chromium team since there are literally hundreds of changes being submitted daily to the Chromium project. However we made an exception on this issue due to the severity of the issue. The fix was back ported into build 17.2.43. This is why the latest build works with https://www.verisign.com now.

We do not know why it still has problems with your particular page. Due to the nature of the issue and the fact that Chromium has already fixed, we would start from the current version of Chromium code base if we were to investigate further on this issue. This way we can compare the behavior of Google Chrome browser with EO.WebBrowser and then debug into the source code of both to find the difference. Since we are already in the process of switching to the new Chromium version, we would do that after we finished switching.

There should be no different as to handling CertificateError event regard to how the WebView is created. So the fact that your WebView is created through a ThreadRunner should be irrelevant.

Thanks!
Michal
Posted: Friday, November 10, 2017 7:02:35 PM
Rank: Newbie
Groups: Member

Joined: 11/10/2017
Posts: 4
Thanks, as you said, we'll see what happens with the new release. In the meanwhile I reverted back and handled the error through the error handler on both the form webbrowser and the threadrunner webview and it all works now.

I include the code for the threadrunner just in case someone might find it useful

Quote:
Dim threadRunner As New EO.WebBrowser.ThreadRunner()
Dim webView As EO.WebBrowser.WebView = threadRunner.CreateWebView()
AddHandler webView.CertificateError, New EO.WebBrowser.CertificateErrorHandler(AddressOf webview_CertificateError)
MainPageStartTimes = threadRunner.Send(Function()
webView.LoadUrl(url).WaitOne(10000)
Return webView.GetHtml
End Function)




Quote:
Sub webview_CertificateError(sender As Object, e As EO.WebBrowser.CertificateErrorEventArgs)
e.Continue()
End Sub



You cannot post new topics in this forum.
You cannot reply to topics in this forum.
You cannot delete your posts in this forum.
You cannot edit your posts in this forum.
You cannot create polls in this forum.
You cannot vote in polls in this forum.