-
18 Jun 2012 11:55 PM #1
Issues - Co-existence of GXT3 with GXT2.2.5 - Deferred binding failed Error
Issues - Co-existence of GXT3 with GXT2.2.5 - Deferred binding failed Error
Hi,
I tried to upgrade my application to use GXT3 with existing GXT2 hence I followed the steps mentioned in GXT3 setup.txt and steps in URL - http://www.sencha.com/learn/running-...cWGog80wlWGeiU
But, when I run my project in DevMode I got following errors:
Code:13:01:03.160 [ERROR] [myproj] Deferred binding failed for 'com.google.gwt.user.client.UserAgentAsserter.UserAgentProperty'; expect subsequent failures
FYI:Code:13:01:03.209 [ERROR] [dxweb] Unable to load module entry point class com.google.gwt.user.client.UserAgentAsserter (see associated exception for details) java.lang.RuntimeException: Deferred binding failed for 'com.google.gwt.user.client.UserAgentAsserter$UserAgentProperty' (did you forget to inherit a required module?) at com.google.gwt.dev.shell.GWTBridgeImpl.create(GWTBridgeImpl.java:53) at com.google.gwt.core.client.GWT.create(GWT.java:97) at com.google.gwt.user.client.UserAgentAsserter.onModuleLoad(UserAgentAsserter.java:44) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) at com.google.gwt.dev.shell.ModuleSpace.onLoad(ModuleSpace.java:396) at com.google.gwt.dev.shell.OophmSessionHandler.loadModule(OophmSessionHandler.java:200) at com.google.gwt.dev.shell.BrowserChannelServer.processConnection(BrowserChannelServer.java:525) at com.google.gwt.dev.shell.BrowserChannelServer.run(BrowserChannelServer.java:363) at java.lang.Thread.run(Unknown Source) Caused by: com.google.gwt.core.ext.UnableToCompleteException: (see previous log entries) at com.google.gwt.dev.shell.ModuleSpace.rebind(ModuleSpace.java:595) at com.google.gwt.dev.shell.ModuleSpace.rebindAndCreate(ModuleSpace.java:455) at com.google.gwt.dev.shell.GWTBridgeImpl.create(GWTBridgeImpl.java:49) at com.google.gwt.core.client.GWT.create(GWT.java:97) at com.google.gwt.user.client.UserAgentAsserter.onModuleLoad(UserAgentAsserter.java:44) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) at com.google.gwt.dev.shell.ModuleSpace.onLoad(ModuleSpace.java:396) at com.google.gwt.dev.shell.OophmSessionHandler.loadModule(OophmSessionHandler.java:200) at com.google.gwt.dev.shell.BrowserChannelServer.processConnection(BrowserChannelServer.java:525) at com.google.gwt.dev.shell.BrowserChannelServer.run(BrowserChannelServer.java:363) at java.lang.Thread.run(Unknown Source)
I changed the project module file(xxx.gwt.xml) and made necessary changes in project build path. Added the required JARs in lib folder of the module which creates EAR file.
My 'xxx.gwt.xml' has following :
Code:<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE module PUBLIC "-//Google Inc.//DTD Google Web Toolkit 2.1.0//EN" "http://google-web-toolkit.googlecode.com/svn/tags/2.1.0/distro-source/core/src/gwt-module.dtd"> <module rename-to='myproj'> <!-- Inherit the core Web Toolkit stuff. --> <inherits name='com.google.gwt.user.User'/> <!-- Other module inherits --> <inherits name="com.google.gwt.http.HTTP"/> <!-- For Ext-GWT 2 --> <inherits name='com.extjs.gxt.ui.GXT'/> <!-- For Ext-GWT 3 --> <inherits name='com.sencha.gxt.ui.GXT' /> <inherits name='com.google.gwt.visualization.Visualization'/> <!-- Specify the app entry point class. --> <entry-point class='com.hhhh.gggg.client.core.MyMainEntryPoint'/> <!-- Specify the paths for translatable code --> <source path='client'/> <source path='shared'/> </module>
-
18 Jun 2012 11:59 PM #2
This is hard to say. Is that the full stacktrace or are there more excetions, as the stacktrace indicates this?
Also what is the version of GWT you are using? Is it really 2.1.0 as your xml file indicates?
-
19 Jun 2012 1:46 AM #3
Thanks Sven for instant response. I am using GWT 2.4.0, as you pointed I changed the xml file entry to -
But, still I am getting the same error.Code:<!DOCTYPE module PUBLIC "-//Google Inc.//DTD Google Web Toolkit 2.4.0//EN" "http://google-web-toolkit.googlecode.com/svn/tags/2.4.0/distro-source/core/src/gwt-module.dtd">
The DevMode error stacktrace is:
DevMode Console Error stacktrace is:Code:15:08:44.400 [DEBUG] [myproj] Rebinding com.google.gwt.user.client.UserAgentAsserter.UserAgentProperty 15:08:44.400 [DEBUG] [myproj] Rebinding com.google.gwt.user.client.UserAgentAsserter.UserAgentProperty 15:08:44.449 [ERROR] [myproj] Unable to load module entry point class com.google.gwt.user.client.UserAgentAsserter (see associated exception for details) java.lang.RuntimeException: Deferred binding failed for 'com.google.gwt.user.client.UserAgentAsserter$UserAgentProperty' (did you forget to inherit a required module?) at com.google.gwt.dev.shell.GWTBridgeImpl.create(GWTBridgeImpl.java:53) at com.google.gwt.core.client.GWT.create(GWT.java:97) at com.google.gwt.user.client.UserAgentAsserter.onModuleLoad(UserAgentAsserter.java:44) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) at com.google.gwt.dev.shell.ModuleSpace.onLoad(ModuleSpace.java:396) at com.google.gwt.dev.shell.OophmSessionHandler.loadModule(OophmSessionHandler.java:200) at com.google.gwt.dev.shell.BrowserChannelServer.processConnection(BrowserChannelServer.java:525) at com.google.gwt.dev.shell.BrowserChannelServer.run(BrowserChannelServer.java:363) at java.lang.Thread.run(Unknown Source) Caused by: com.google.gwt.core.ext.UnableToCompleteException: (see previous log entries) at com.google.gwt.dev.shell.ModuleSpace.rebind(ModuleSpace.java:595) at com.google.gwt.dev.shell.ModuleSpace.rebindAndCreate(ModuleSpace.java:455) at com.google.gwt.dev.shell.GWTBridgeImpl.create(GWTBridgeImpl.java:49) at com.google.gwt.core.client.GWT.create(GWT.java:97) at com.google.gwt.user.client.UserAgentAsserter.onModuleLoad(UserAgentAsserter.java:44) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) at com.google.gwt.dev.shell.ModuleSpace.onLoad(ModuleSpace.java:396) at com.google.gwt.dev.shell.OophmSessionHandler.loadModule(OophmSessionHandler.java:200) at com.google.gwt.dev.shell.BrowserChannelServer.processConnection(BrowserChannelServer.java:525) at com.google.gwt.dev.shell.BrowserChannelServer.run(BrowserChannelServer.java:363) at java.lang.Thread.run(Unknown Source) 15:08:44.465 [ERROR] [myproj] Failed to load module 'myproj' from user agent 'Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Win64; x64; Trident/5.0; .NET CLR 2.0.50727; SLCC2; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0)' at 127.0.0.1:5628
Code:Exception in thread "Thread-0" java.lang.NullPointerException at com.google.gwt.dev.shell.JavaScriptHost.invokeNativeObject(JavaScriptHost.java:91) at com.google.gwt.core.client.JavaScriptException.getName0(JavaScriptException.java) at com.google.gwt.core.client.JavaScriptException.getName(JavaScriptException.java:64) at com.google.gwt.core.client.JavaScriptException.init(JavaScriptException.java:179) at com.google.gwt.core.client.JavaScriptException.getMessage(JavaScriptException.java:162) at com.google.gwt.dev.util.log.AbstractTreeLogger.getStackTraceAsString(AbstractTreeLogger.java:70) at com.google.gwt.dev.shell.remoteui.ViewerServiceClient.generateLogData(ViewerServiceClient.java:296) at com.google.gwt.dev.shell.remoteui.ViewerServiceClient.addLogEntry(ViewerServiceClient.java:118) at com.google.gwt.dev.shell.remoteui.ViewerServiceTreeLogger.sendEntry(ViewerServiceTreeLogger.java:158) at com.google.gwt.dev.shell.remoteui.ViewerServiceTreeLogger$PendingLog.send(ViewerServiceTreeLogger.java:72) at com.google.gwt.dev.shell.remoteui.ViewerServiceTreeLogger.initLogHandle(ViewerServiceTreeLogger.java:134) at com.google.gwt.dev.shell.remoteui.ViewerServiceTreeLogger$1.onDone(ViewerServiceTreeLogger.java:145) at com.google.gwt.dev.shell.remoteui.ViewerServiceTreeLogger$1.onDone(ViewerServiceTreeLogger.java:143) at com.google.gwt.dev.shell.remoteui.ViewerServiceClient$1.onDone(ViewerServiceClient.java:96) at com.google.gwt.dev.shell.remoteui.ViewerServiceClient$1.onDone(ViewerServiceClient.java:94) at com.google.gwt.dev.shell.remoteui.MessageTransport$PendingRequest.setResponse(MessageTransport.java:124) at com.google.gwt.dev.shell.remoteui.MessageTransport.processServerResponse(MessageTransport.java:423) at com.google.gwt.dev.shell.remoteui.MessageTransport.processMessage(MessageTransport.java:399) at com.google.gwt.dev.shell.remoteui.MessageTransport.access$400(MessageTransport.java:44) at com.google.gwt.dev.shell.remoteui.MessageTransport$3.run(MessageTransport.java:322) at java.lang.Thread.run(Unknown Source)
-
19 Jun 2012 1:51 AM #4
Hard to say without being able to reproduce this on my own.
Have you tried to switch the inherit order, like first loading GXT 3 and than GXT 2?
-
19 Jun 2012 1:52 AM #5
I referred to URL (http://www.sencha.com/forum/showthre...dgeImpl.create) - any solution provided to fix the reported issue?
-
20 Jun 2012 7:21 AM #6
Sven,
I found one workaround.
As the issue is related with GWT UserAgentPropertyGenerator.java, hence I used 'com.sencha.gxt.core.rebind.useragent.UserAgentPropertyGenerator' instead.
Although the application is loading but now I am getting Serialization Policy related exception.
Workaround:
I added following entry in my module xml file:
As you can see, this is hardcoding 'user.agent', hence expecting some update on GXT to resolve this hardcoding.Code:<!-- Workaround - Remove when GWT UserAgentPropertyGenerator gets fixed - Using Sencha UserAgentPropertyGenerator without test on GoogleFrame --> <property-provider name="user.agent" generator="com.sencha.gxt.core.rebind.useragent.UserAgentPropertyGenerator"/> <!-- Mask error message --> <set-configuration-property name="user.agent.runtimeWarning" value="false"/> <!-- IE --> <set-property name="user.agent" value="ie6" /> <extend-property name="user.agent" values="ie8" /> <extend-property name="user.agent" values="ie9" /> <!-- FF --> <extend-property name="user.agent" values="gecko1_8" /> <!-- CHROME --> <extend-property name="user.agent" values="safari" /> <!-- Workaround - End -->
SerializationPolicy Exception Issue:
My application's models implement BeanModelTag, IsSerializable, Serializable interfaces.
As updated, after the module the application is loading fine. But in DevMode - now I am getting exception related to Serialization policy:
With GXT2.2.5 same models implementing BeanModelTag and Serializable worked fine.Code:2012-06-20 20:28:01,588 INFO [org.apache.catalina.core.ContainerBase.[jboss.web].[localhost].[/myProj]] (http-localhost%2F127.0.0.1-8080-4) myPackageService: ERROR: The serialization policy file '/myproj/F1A0525D5045A9D4B8A55884842E03D1.gwt.rpc' was not found; did you forget to include it in this deployment? 2012-06-20 20:28:01,588 INFO [org.apache.catalina.core.ContainerBase.[jboss.web].[localhost].[/myProj]] (http-localhost%2F127.0.0.1-8080-4) myPackageService: WARNING: Failed to get the SerializationPolicy 'F1A0525D5045A9D4B8A55884842E03D1' for module 'http://localhost:8080/myProj/myProj/'; a legacy, 1.3.3 compatible, serialization policy will be used. You may experience SerializationExceptions as a result. 2012-06-20 20:28:01,591 ERROR [org.apache.catalina.core.ContainerBase.[jboss.web].[localhost].[/myProj]] (http-localhost%2F127.0.0.1-8080-4) myPackageService: An IncompatibleRemoteServiceException was thrown while processing this call. com.google.gwt.user.client.rpc.IncompatibleRemoteServiceException: Type 'com.extjs.gxt.ui.client.data.BasePagingLoadConfig' was not assignable to 'com.google.gwt.user.client.rpc.IsSerializable' and did not have a custom field serializer. For security purposes, this type will not be deserialized. at com.google.gwt.user.server.rpc.RPC.decodeRequest(RPC.java:315) at com.google.gwt.user.server.rpc.RemoteServiceServlet.processCall(RemoteServiceServlet.java:206) at com.google.gwt.user.server.rpc.RemoteServiceServlet.processPost(RemoteServiceServlet.java:248) at com.google.gwt.user.server.rpc.AbstractRemoteServiceServlet.doPost(AbstractRemoteServiceServlet.java:62) at javax.servlet.http.HttpServlet.service(HttpServlet.java:637) at javax.servlet.http.HttpServlet.service(HttpServlet.java:717) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:235) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191) at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:183) at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:433) at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:95) at org.jboss.web.tomcat.security.SecurityContextEstablishmentValve.process(SecurityContextEstablishmentValve.java:126) at org.jboss.web.tomcat.security.SecurityContextEstablishmentValve.invoke(SecurityContextEstablishmentValve.java:70) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) at org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:158) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:330) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:829) at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:598) at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:451) at java.lang.Thread.run(Unknown Source) Caused by: com.google.gwt.user.client.rpc.SerializationException: Type 'com.extjs.gxt.ui.client.data.BasePagingLoadConfig' was not assignable to 'com.google.gwt.user.client.rpc.IsSerializable' and did not have a custom field serializer. For security purposes, this type will not be deserialized. at com.google.gwt.user.server.rpc.impl.LegacySerializationPolicy.validateDeserialize(LegacySerializationPolicy.java:127) at com.google.gwt.user.server.rpc.impl.ServerSerializationStreamReader.deserialize(ServerSerializationStreamReader.java:549) at com.google.gwt.user.client.rpc.impl.AbstractSerializationStreamReader.readObject(AbstractSerializationStreamReader.java:119) at com.google.gwt.user.server.rpc.impl.ServerSerializationStreamReader$ValueReader$8.readValue(ServerSerializationStreamReader.java:137) at com.google.gwt.user.server.rpc.impl.ServerSerializationStreamReader.deserializeValue(ServerSerializationStreamReader.java:384) at com.google.gwt.user.server.rpc.RPC.decodeRequest(RPC.java:303) ... 26 more
Need your suggestion.
-
20 Jun 2012 7:24 AM #7
That workaround is not a good one, as it will introduce more issues than it solves.
The best i think is to open a real support ticket in your ticket system and schedule a remote desktop session, so we can debug the problem directly in yout setup. Would this be possible?
-
11 Oct 2012 10:58 AM #8
I have a problem too about this problem. How could you solve this .
GWT Version : 2.0.4
GXT Version : 3.0.1 GPL
00:00:17,186 [ERROR] Error while executing the JavaScript provider for property 'gxt.user.agent'
com.google.gwt.core.client.JavaScriptException: (TypeError) __gwt_getProperty([string: 'gxt.user.agent']): v[a] is not a function
at com.google.gwt.dev.shell.BrowserChannelServer.invokeJavascript(BrowserChannelServer.java:249)
at com.google.gwt.dev.shell.ModuleSpaceOOPHM.doInvoke(ModuleSpaceOOPHM.java:136)
at com.google.gwt.dev.shell.ModuleSpace.invokeNative(ModuleSpace.java:570)
at com.google.gwt.dev.shell.ModuleSpace.invokeNativeObject(ModuleSpace.java:278)
at com.google.gwt.dev.shell.ModuleSpacePropertyOracle.computePropertyValue(ModuleSpacePropertyOracle.java:193)
at com.google.gwt.dev.shell.ModuleSpacePropertyOracle.getSelectionProperty(ModuleSpacePropertyOracle.java:130)
at com.google.gwt.dev.cfg.ConditionWhenPropertyIs.doEval(ConditionWhenPropertyIs.java:61)
at com.google.gwt.dev.cfg.Condition.isTrue(Condition.java:52)
at com.google.gwt.dev.cfg.ConditionAny.doEval(ConditionAny.java:36)
at com.google.gwt.dev.cfg.Condition.isTrue(Condition.java:52)
at com.google.gwt.dev.cfg.ConditionAll.doEval(ConditionAll.java:37)
at com.google.gwt.dev.cfg.Condition.isTrue(Condition.java:52)
at com.google.gwt.dev.shell.ModuleSpacePropertyOracle.computeActiveCondition(ModuleSpacePropertyOracle.java:151)
at com.google.gwt.dev.shell.ModuleSpacePropertyOracle.computePropertyValue(ModuleSpacePropertyOracle.java:182)
at com.google.gwt.dev.shell.ModuleSpacePropertyOracle.getSelectionProperty(ModuleSpacePropertyOracle.java:130)
at com.google.gwt.useragent.rebind.UserAgentGenerator.generate(UserAgentGenerator.java:82)
at com.google.gwt.core.ext.IncrementalGenerator.generateNonIncrementally(IncrementalGenerator.java:40)
at com.google.gwt.dev.javac.StandardGeneratorContext.runGeneratorIncrementally(StandardGeneratorContext.java:657)
at com.google.gwt.dev.cfg.RuleGenerateWith.realize(RuleGenerateWith.java:41)
at com.google.gwt.dev.shell.StandardRebindOracle$Rebinder.rebind(StandardRebindOracle.java:79)
at com.google.gwt.dev.shell.StandardRebindOracle.rebind(StandardRebindOracle.java:276)
at com.google.gwt.dev.shell.ShellModuleSpaceHost.rebind(ShellModuleSpaceHost.java:141)
at com.google.gwt.dev.shell.ModuleSpace.rebind(ModuleSpace.java:594)
at com.google.gwt.dev.shell.ModuleSpace.rebindAndCreate(ModuleSpace.java:464)
at com.google.gwt.dev.shell.GWTBridgeImpl.create(GWTBridgeImpl.java:49)
at com.google.gwt.core.shared.GWT.create(GWT.java:57)
at com.google.gwt.core.client.GWT.create(GWT.java:85)
at com.google.gwt.useragent.client.UserAgentAsserter.onModuleLoad(UserAgentAsserter.java:66)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:601)
at com.google.gwt.dev.shell.ModuleSpace.onLoad(ModuleSpace.java:405)
at com.google.gwt.dev.shell.OophmSessionHandler.loadModule(OophmSessionHandler.java:200)
at com.google.gwt.dev.shell.BrowserChannelServer.processConnection(BrowserChannelServer.java:526)
at com.google.gwt.dev.shell.BrowserChannelServer.run(BrowserChannelServer.java:364)
at java.lang.Thread.run(Thread.java:722)
-
11 Oct 2012 11:51 AM #9
I solved problem.
1- I updated GWT version 2.4 to 2.5 RC2
2- I cleaned Browser Cache/Coockie/etc
3- I rebuilded application problem is solved.
-
11 Oct 2012 4:20 PM #10
Whenever I've seen this error in the past, it has been from multiple, inconsistent copies of GWT on the classpath. Moving to 2.5.0 RC2 in all places seems to have cleared out any other possible copies, but if the issue comes back, be sure to check that all gwt-user, gwt-dev, and gwt-servlet (not to mention requestfactory, if you use it) jars are the version you intend them to be.
Thank you for reporting this bug. We will make it our priority to review this report.


Reply With Quote