Hi John,

Gwt-servlet-deps is automatically included by Google Plugin for Eclipse 2.3+
for new projects, and the Maven sample POMs have been updated accordingly in
2.3 and 2.4, but we didn't do a very good job of communicating the change
for migrations like yours. It did come up a number of times on the
google-web-toolkit group, so you might want to join that one.

Best!
/dmc

On Wed, Sep 21, 2011 at 1:45 AM, John Howe <jhowe...@gmail.com> wrote:

> Hi David,
>
> Evidently, I didn't force a project rebuild.
>
> Your suggestion worked. So, thank you very much!!
>
> I"m not a java/GWT expert but I am puzzled why this apparently new step
> became necessary for me as part of the migration from GWT 2.2 to GWT 2.4. My
> app had been working just fine under the older GWT version for many months.
>
> Thanks again!!!!
>
> On Tue, Sep 20, 2011 at 9:43 PM, John Howe <jhowe...@gmail.com> wrote:
>
>> Hi David,
>>
>> The gwt-servlet-deps jar is contained in WEB-INF/lib.
>> Here's a complete listing
>>
>> appengine-api-1.0-sdk-1.5.3.jar
>> appengine-api-labs-1.5.3.jar
>> appengine-jsr107cache-1.5.3.jar
>> datanucleus-appengine-1.0.9.final.jar
>> datanucleus-core-1.1.5.jar
>> datanucleus-jpa-1.1.5.jar
>> geronimo-jpa_3.0_spec-1.1.1.jar
>> geronimo-jta_1.1_spec-1.1.1.jar
>> gwt-servlet-deps.jar
>> gwt-servlet.jar
>> gxt-2.2.5-gwt22.jar
>> jdo2-api-2.3-eb.jar
>> jsr107cache-1.1.jar
>>
>> gwt-servlet-deps is also on the class path.
>> Any more suggestions would be greatly and sincerely appreciated.
>> I'm currently dead in the water.
>>
>> On Tue, Sep 20, 2011 at 11:24 AM, David Chandler 
>> <drfibona...@google.com>wrote:
>>
>>> Make sure that validation-api is in your WEB-INF/lib. Add it via
>>> gwt-servlet-deps (see lib folder in GWT SDK distro).
>>>
>>> /dmc
>>>
>>> On Tue, Sep 20, 2011 at 12:46 AM, John Howe <jhowe...@gmail.com> wrote:
>>>
>>>> I thought this was going to be easy.
>>>>
>>>> I'm trying to move a working GAE java app up to GWT 2.4.
>>>>
>>>> But when I do, I see the following stack trace on the first RPC call.
>>>>
>>>> At least one other guy has seen this while doing same and posted a query
>>>> at
>>>>
>>>> http://groups.google.com/group/google-appengine/browse_frm/thread/a78f4c443bd3b249
>>>>
>>>> Any help, suggestions, or insight would be most appreciated!
>>>>
>>>> Thanks.
>>>>
>>>>
>>>> The server is running at http://localhost:8888/
>>>> mozilla/5.0 (windows nt 6.0) applewebkit/535.1 (khtml, like gecko)
>>>> chrome/14.0.835.163 safari/535.1
>>>> [ERROR] javax.servlet.ServletContext log: Exception while dispatching
>>>> incoming RPC call
>>>> java.lang.NoClassDefFoundError: javax/validation/Path
>>>> at java.lang.ClassLoader.defineClass1(Native Method)
>>>>  at java.lang.ClassLoader.defineClass(Unknown Source)
>>>>  at java.security.SecureClassLoader.defineClass(Unknown Source)
>>>> at java.net.URLClassLoader.defineClass(Unknown Source)
>>>>  at java.net.URLClassLoader.access$100(Unknown Source)
>>>>  at java.net.URLClassLoader$1.run(Unknown Source)
>>>> at java.net.URLClassLoader$1.run(Unknown Source)
>>>>  at java.security.AccessController.doPrivileged(Native Method)
>>>>  at java.net.URLClassLoader.findClass(Unknown Source)
>>>> at java.lang.ClassLoader.loadClass(Unknown Source)
>>>>  at
>>>> com.google.appengine.tools.development.IsolatedAppClassLoader.loadClass(IsolatedAppClassLoader.java:176)
>>>>  at java.lang.ClassLoader.loadClass(Unknown Source)
>>>>  at java.lang.Class.forName0(Native Method)
>>>> at java.lang.Class.forName(Unknown Source)
>>>>  at
>>>> com.google.gwt.user.server.rpc.SerializationPolicyLoader.loadFromStream(SerializationPolicyLoader.java:196)
>>>>  at
>>>> com.google.gwt.user.server.rpc.RemoteServiceServlet.loadSerializationPolicy(RemoteServiceServlet.java:90)
>>>>  at
>>>> com.google.gwt.user.server.rpc.RemoteServiceServlet.doGetSerializationPolicy(RemoteServiceServlet.java:293)
>>>>  at
>>>> com.google.gwt.user.server.rpc.RemoteServiceServlet.getSerializationPolicy(RemoteServiceServlet.java:157)
>>>>  at
>>>> com.google.gwt.user.server.rpc.impl.ServerSerializationStreamReader.prepareToRead(ServerSerializationStreamReader.java:455)
>>>>  at com.google.gwt.user.server.rpc.RPC.decodeRequest(RPC.java:237)
>>>>  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.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:511)
>>>>  at
>>>> org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1166)
>>>> at
>>>> com.sportzcasterbeta.server.ServiceFilterImpl.doFilter(ServiceFilterImpl.java:25)
>>>>  at
>>>> org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
>>>>  at
>>>> com.sportzcasterbeta.server.ServiceFilterImpl.doFilter(ServiceFilterImpl.java:25)
>>>> at
>>>> org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
>>>>  at
>>>> com.google.appengine.tools.development.HeaderVerificationFilter.doFilter(HeaderVerificationFilter.java:35)
>>>>  at
>>>> org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
>>>>  at
>>>> com.google.appengine.api.blobstore.dev.ServeBlobFilter.doFilter(ServeBlobFilter.java:58)
>>>> at
>>>> org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
>>>>  at
>>>> com.google.apphosting.utils.servlet.TransactionCleanupFilter.doFilter(TransactionCleanupFilter.java:43)
>>>>  at
>>>> org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
>>>>  at
>>>> com.google.appengine.tools.development.StaticFileFilter.doFilter(StaticFileFilter.java:122)
>>>> at
>>>> org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
>>>>  at
>>>> com.google.appengine.tools.development.BackendServersFilter.doFilter(BackendServersFilter.java:97)
>>>>  at
>>>> org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
>>>>  at
>>>> org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:388)
>>>> at
>>>> org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
>>>>  at
>>>> org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:182)
>>>>  at
>>>> org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:765)
>>>> at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:418)
>>>>  at
>>>> com.google.apphosting.utils.jetty.DevAppEngineWebAppContext.handle(DevAppEngineWebAppContext.java:70)
>>>>  at
>>>> org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
>>>>  at
>>>> com.google.appengine.tools.development.JettyContainerService$ApiProxyHandler.handle(JettyContainerService.java:351)
>>>>  at
>>>> org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
>>>> at org.mortbay.jetty.Server.handle(Server.java:326)
>>>>  at
>>>> org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:542)
>>>>  at
>>>> org.mortbay.jetty.HttpConnection$RequestHandler.content(HttpConnection.java:938)
>>>> at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:755)
>>>>  at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:218)
>>>>  at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404)
>>>> at
>>>> org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:409)
>>>>  at
>>>> org.mortbay.thread.QueuedThreadPool$PoolThread.run(QueuedThreadPool.java:582)
>>>> Caused by: java.lang.ClassNotFoundException: javax.validation.Path
>>>> at java.net.URLClassLoader$1.run(Unknown Source)
>>>>  at java.net.URLClassLoader$1.run(Unknown Source)
>>>>  at java.security.AccessController.doPrivileged(Native Method)
>>>> at java.net.URLClassLoader.findClass(Unknown Source)
>>>>  at java.lang.ClassLoader.loadClass(Unknown Source)
>>>>  at
>>>> com.google.appengine.tools.development.IsolatedAppClassLoader.loadClass(IsolatedAppClassLoader.java:176)
>>>>  at java.lang.ClassLoader.loadClass(Unknown Source)
>>>> ... 58 more
>>>>
>>>> [ERROR] javax.servlet.ServletContext log: Exception while dispatching
>>>> incoming RPC call
>>>> java.lang.NoClassDefFoundError: javax/validation/Path
>>>> at java.lang.ClassLoader.defineClass1(Native Method)
>>>>  at java.lang.ClassLoader.defineClass(Unknown Source)
>>>>  at java.security.SecureClassLoader.defineClass(Unknown Source)
>>>> at java.net.URLClassLoader.defineClass(Unknown Source)
>>>>  at java.net.URLClassLoader.access$100(Unknown Source)
>>>>  at java.net.URLClassLoader$1.run(Unknown Source)
>>>> at java.net.URLClassLoader$1.run(Unknown Source)
>>>>  at java.security.AccessController.doPrivileged(Native Method)
>>>>  at java.net.URLClassLoader.findClass(Unknown Source)
>>>> at java.lang.ClassLoader.loadClass(Unknown Source)
>>>>  at
>>>> com.google.appengine.tools.development.IsolatedAppClassLoader.loadClass(IsolatedAppClassLoader.java:176)
>>>>  at java.lang.ClassLoader.loadClass(Unknown Source)
>>>>  at java.lang.Class.forName0(Native Method)
>>>> at java.lang.Class.forName(Unknown Source)
>>>>  at
>>>> com.google.gwt.user.server.rpc.SerializationPolicyLoader.loadFromStream(SerializationPolicyLoader.java:196)
>>>>  at
>>>> com.google.gwt.user.server.rpc.RemoteServiceServlet.loadSerializationPolicy(RemoteServiceServlet.java:90)
>>>>  at
>>>> com.google.gwt.user.server.rpc.RemoteServiceServlet.doGetSerializationPolicy(RemoteServiceServlet.java:293)
>>>>  at
>>>> com.google.gwt.user.server.rpc.RemoteServiceServlet.getSerializationPolicy(RemoteServiceServlet.java:157)
>>>>  at
>>>> com.google.gwt.user.server.rpc.impl.ServerSerializationStreamReader.prepareToRead(ServerSerializationStreamReader.java:455)
>>>>  at com.google.gwt.user.server.rpc.RPC.decodeRequest(RPC.java:237)
>>>>  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.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:511)
>>>>  at
>>>> org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1166)
>>>> at
>>>> com.sportzcasterbeta.server.ServiceFilterImpl.doFilter(ServiceFilterImpl.java:25)
>>>>  at
>>>> org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
>>>>  at
>>>> com.sportzcasterbeta.server.ServiceFilterImpl.doFilter(ServiceFilterImpl.java:25)
>>>> at
>>>> org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
>>>>  at
>>>> com.google.appengine.tools.development.HeaderVerificationFilter.doFilter(HeaderVerificationFilter.java:35)
>>>>  at
>>>> org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
>>>>  at
>>>> com.google.appengine.api.blobstore.dev.ServeBlobFilter.doFilter(ServeBlobFilter.java:58)
>>>> at
>>>> org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
>>>>  at
>>>> com.google.apphosting.utils.servlet.TransactionCleanupFilter.doFilter(TransactionCleanupFilter.java:43)
>>>>  at
>>>> org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
>>>>  at
>>>> com.google.appengine.tools.development.StaticFileFilter.doFilter(StaticFileFilter.java:122)
>>>> at
>>>> org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
>>>>  at
>>>> com.google.appengine.tools.development.BackendServersFilter.doFilter(BackendServersFilter.java:97)
>>>>  at
>>>> org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
>>>>  at
>>>> org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:388)
>>>> at
>>>> org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
>>>>  at
>>>> org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:182)
>>>>  at
>>>> org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:765)
>>>> at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:418)
>>>>  at
>>>> com.google.apphosting.utils.jetty.DevAppEngineWebAppContext.handle(DevAppEngineWebAppContext.java:70)
>>>>  at
>>>> org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
>>>>  at
>>>> com.google.appengine.tools.development.JettyContainerService$ApiProxyHandler.handle(JettyContainerService.java:351)
>>>>  at
>>>> org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
>>>> at org.mortbay.jetty.Server.handle(Server.java:326)
>>>>  at
>>>> org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:542)
>>>>  at
>>>> org.mortbay.jetty.HttpConnection$RequestHandler.content(HttpConnection.java:938)
>>>> at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:755)
>>>>  at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:218)
>>>>  at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404)
>>>> at
>>>> org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:409)
>>>>  at
>>>> org.mortbay.thread.QueuedThreadPool$PoolThread.run(QueuedThreadPool.java:582)
>>>> Caused by: java.lang.ClassNotFoundException: javax.validation.Path
>>>> at java.net.URLClassLoader$1.run(Unknown Source)
>>>>  at java.net.URLClassLoader$1.run(Unknown Source)
>>>>  at java.security.AccessController.doPrivileged(Native Method)
>>>> at java.net.URLClassLoader.findClass(Unknown Source)
>>>>  at java.lang.ClassLoader.loadClass(Unknown Source)
>>>>  at
>>>> com.google.appengine.tools.development.IsolatedAppClassLoader.loadClass(IsolatedAppClassLoader.java:176)
>>>>  at java.lang.ClassLoader.loadClass(Unknown Source)
>>>> ... 58 more
>>>>
>>>>  --
>>>> You received this message because you are subscribed to the Google
>>>> Groups "Google App Engine for Java" group.
>>>> To post to this group, send email to
>>>> google-appengine-java@googlegroups.com.
>>>> To unsubscribe from this group, send email to
>>>> google-appengine-java+unsubscr...@googlegroups.com.
>>>> For more options, visit this group at
>>>> http://groups.google.com/group/google-appengine-java?hl=en.
>>>>
>>>
>>>
>>>
>>> --
>>> David Chandler
>>> Developer Programs Engineer, GWT+GAE
>>> w: http://code.google.com/
>>> b: http://turbomanage.wordpress.com/
>>> b: http://googlewebtoolkit.blogspot.com/
>>> t: @googledevtools
>>>
>>>  --
>>> You received this message because you are subscribed to the Google Groups
>>> "Google App Engine for Java" group.
>>> To post to this group, send email to
>>> google-appengine-java@googlegroups.com.
>>> To unsubscribe from this group, send email to
>>> google-appengine-java+unsubscr...@googlegroups.com.
>>> For more options, visit this group at
>>> http://groups.google.com/group/google-appengine-java?hl=en.
>>>
>>
>>
>  --
> You received this message because you are subscribed to the Google Groups
> "Google App Engine for Java" group.
> To post to this group, send email to
> google-appengine-java@googlegroups.com.
> To unsubscribe from this group, send email to
> google-appengine-java+unsubscr...@googlegroups.com.
> For more options, visit this group at
> http://groups.google.com/group/google-appengine-java?hl=en.
>



-- 
David Chandler
Developer Programs Engineer, GWT+GAE
w: http://code.google.com/
b: http://turbomanage.wordpress.com/
b: http://googlewebtoolkit.blogspot.com/
t: @googledevtools

-- 
You received this message because you are subscribed to the Google Groups 
"Google App Engine for Java" group.
To post to this group, send email to google-appengine-java@googlegroups.com.
To unsubscribe from this group, send email to 
google-appengine-java+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/google-appengine-java?hl=en.

Reply via email to