eclipsesource / tabris

Tabris for Eclipse RAP
https://eclipsesource.com/products/tabris
53 stars 18 forks source link

Browser Widget - EntryPoint URL fails on iOS #373

Open tpittner opened 10 years ago

tpittner commented 10 years ago

setting the URL of the browser widget fails on iOS devices, if the URL represents an entrypoint.

This can be reproduced e.g. by using tabris demo-application. We've added a new EntryPoint to the demo-application e.g. "application.addEntryPoint("/test", Test.class, null);" ... while corresponding class implements nothing more than a browser widget.

Now if the URL of an existing EntryPoint is invoked (e.g. setUrl("http://localhost:1234/input") the browser shows strange output.

It seems that the embedded javascript in file "test" (which is first of all transferred from tabris server to the client) was misinterpreted by iOS internal browser.

This could not be reproduced on web- or android-client. We used Tabris 1.4 and iPhone5c/iOS8 for testing.

jordiboehme commented 10 years ago

Thanks for the bug report. Which iOS8 version are you using? iOS 8.0, 8.0.1 or 8.0.2?

tpittner commented 10 years ago

we are using version 8.0.2, but this also occurs with version 8.0.1

jordiboehme commented 10 years ago

Can you post a screenshot of the "strange output"?

tpittner commented 10 years ago

here you go! On second view it seems like json-data...

img_0070_1

jordiboehme commented 10 years ago

Ok, thanks again. We identified the problem. In iOS8 the Browser widget (UIWebView) inherits the User-Agent from the Tabris framework. The User-Agent on the other hand is used by the RAP-based Tabris Server to distinguish between an Browser (to send HTML) and a tabris client (to send JSON). So basically the server thinks your browser widget is a tabris client.

We will fix this and provide you with a new build in the next days.

tpittner commented 10 years ago

Great, looking forward for the new build!