Hi all, I am experiencing problems when using GWT / JSNI :
For tests, let's have a parent class with a JSNI method such as public class TestParent { public native void show()/*-{ $doc.write("PARENT JSNI"); }-*/; } and a child class overriding the parent JSNI method, such as public class TestChild extends TestParent { @Override public void show() { super.show(); RootPanel.get().add(new HTML("TestChild.show")); } } and a basic EntryPoint : public class Helloworld implements EntryPoint { public void onModuleLoad() { TestChild t = new TestChild(); t.show(); } } When calling the TestChild .show() method, we could assume getting the result : "PARENT JSNI" + "TestChild.show" And in fact, we get the following result : On Google Chrome 11 in development mode with GWT plugin : "PARENT JSNI" and an error in the GWT plugin Development mode tab : [DEBUG] [helloworld] - Rebinding com.google.gwt.user.client.impl.WindowImpl [DEBUG] [helloworld] - Checking rule <replace-with class='com.google.gwt.user.client.impl.WindowImplIE'/> [ERROR] [helloworld] - Error while executing the JavaScript provider for property 'user.agent' [ERROR] [helloworld] - Unable to get value of property 'user.agent' [ERROR] [helloworld] - Deferred binding failed for 'com.google.gwt.user.client.impl.WindowImpl'; expect subsequent failures [ERROR] [helloworld] - Unable to load module entry point class fr.helloworld.client.Helloworld (see associated exception for details) [ERROR] [helloworld] - Failed to load module 'helloworld' from user agent 'Mozilla/5.0 (Windows NT 5.1) AppleWebKit/534.24 (KHTML, like Gecko) Chrome/11.0.696.0 Safari/534.24' at localhost:2222 This error stops any further instruction in the application. On Firefox 3.6 in development mode with GWT plugin: "PARENT JSNI" + "TestChild.show" (fine) but the browser is redirected to http://127.0.0.1:8888/helloworld/hosted.html?helloworld and keeps loading forever When building the GWT project, the result are also different : Chrome : correct , works fine Firefox 3.6 : correct text displayed but the browser is redirected to helloworld/ F0E90C8F76FAE58BAB597BFF7095D19A.cache.html (compiled version for firefox user agent) and keeps loading forever. I encountered the problem on a real application, and of course the compiled application was unable to run correctly. Should I conclude that developer should never try to override JSNI methods ? Should we guess that it is a GWT compiler bug ? -- You received this message because you are subscribed to the Google Groups "Google Web Toolkit" group. To post to this group, send email to google-web-toolkit@googlegroups.com. To unsubscribe from this group, send email to google-web-toolkit+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-web-toolkit?hl=en.