Note that there are some explanatory texts on larger screens.

plurals
  1. POProblem with configuring servletModule with Guice injecting GWT RequestFactory
    primarykey
    data
    text
    <p>I want to use GUICE on the server side with the GWT 2.3 RequestFactory. I have my class that extends the ServletModule with :</p> <pre><code>@Override public void configureServlets() { // RequestFactory servlet bind(RequestFactoryServlet.class).in(Singleton.class); serve("/gwtRequest").with(RequestFactoryServlet.class); } </code></pre> <p>and in the web.xml I have added :</p> <pre><code>&lt;filter&gt; &lt;filter-name&gt;guiceFilter&lt;/filter-name&gt; &lt;filter-class&gt;com.google.inject.servlet.GuiceFilter&lt;/filter-class&gt; &lt;/filter&gt; &lt;filter-mapping&gt; &lt;filter-name&gt;guiceFilter&lt;/filter-name&gt; &lt;url-pattern&gt;/*&lt;/url-pattern&gt; &lt;/filter-mapping&gt; </code></pre> <p>and I have the validation-api.XXX.jar referenced (as it is part of GWT)</p> <p>When I run it (under Eclipse with the GWT plugin), it says: </p> <p>jetty-6.1.x [WARN] failed guiceFilter: com.google.inject.ProvisionException: Guice provision errors:</p> <p>1) Error injecting constructor, java.lang.NoClassDefFoundError: javax/validation/ValidationException at com.google.web.bindery.requestfactory.server.RequestFactoryServlet.(RequestFactoryServlet.java:74) at com.djay.eyeandtrack.server.EatServletModule.configureServlets(EatServletModule.java:13) while locating com.google.web.bindery.requestfactory.server.RequestFactoryServlet</p> <p>1 error [WARN] Failed startup of context com.google.apphosting.utils.jetty.DevAppEngineWebAppContext@17b3de2{/,C:\5_DJAY\03_EYEANDTRACK\branches\djaysbox\EyeAndTrack\war} com.google.inject.ProvisionException: Guice provision errors:</p> <p>1) Error injecting constructor, java.lang.NoClassDefFoundError: javax/validation/ValidationException at com.google.web.bindery.requestfactory.server.RequestFactoryServlet.(RequestFactoryServlet.java:74) at com.djay.eyeandtrack.server.EatServletModule.configureServlets(EatServletModule.java:13) while locating com.google.web.bindery.requestfactory.server.RequestFactoryServlet</p> <p>1 error at com.google.inject.internal.InjectorImpl$4.get(InjectorImpl.java:987) at com.google.inject.internal.InjectorImpl.getInstance(InjectorImpl.java:1009) at com.google.inject.servlet.ServletDefinition.init(ServletDefinition.java:108) at com.google.inject.servlet.ManagedServletPipeline.init(ManagedServletPipeline.java:82) at com.google.inject.servlet.ManagedFilterPipeline.initPipeline(ManagedFilterPipeline.java:102) at com.google.inject.servlet.GuiceFilter.init(GuiceFilter.java:172) at org.mortbay.jetty.servlet.FilterHolder.doStart(FilterHolder.java:97) at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50) at org.mortbay.jetty.servlet.ServletHandler.initialize(ServletHandler.java:662) at org.mortbay.jetty.servlet.Context.startContext(Context.java:140) at org.mortbay.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1250) at org.mortbay.jetty.handler.ContextHandler.doStart(ContextHandler.java:517) at org.mortbay.jetty.webapp.WebAppContext.doStart(WebAppContext.java:467) at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50) at org.mortbay.jetty.handler.HandlerWrapper.doStart(HandlerWrapper.java:130) at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50) at org.mortbay.jetty.handler.HandlerWrapper.doStart(HandlerWrapper.java:130) at org.mortbay.jetty.Server.doStart(Server.java:224) at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50) at com.google.appengine.tools.development.JettyContainerService.startContainer(JettyContainerService.java:186) at com.google.appengine.tools.development.AbstractContainerService.startup(AbstractContainerService.java:157) at com.google.appengine.tools.development.DevAppServerImpl.start(DevAppServerImpl.java:169) at com.google.appengine.tools.development.gwt.AppEngineLauncher.start(AppEngineLauncher.java:119) at com.google.gwt.dev.DevMode.doStartUpServer(DevMode.java:500) at com.google.gwt.dev.DevModeBase.startUp(DevModeBase.java:1055) at com.google.gwt.dev.DevModeBase.run(DevModeBase.java:804) at com.google.gwt.dev.DevMode.main(DevMode.java:309) Caused by: java.lang.NoClassDefFoundError: javax/validation/ValidationException at com.google.web.bindery.requestfactory.server.ServiceLayer.create(ServiceLayer.java:74) at com.google.web.bindery.requestfactory.server.RequestFactoryServlet.(RequestFactoryServlet.java:88) at com.google.web.bindery.requestfactory.server.RequestFactoryServlet.(RequestFactoryServlet.java:74) at com.google.web.bindery.requestfactory.server.RequestFactoryServlet$$FastClassByGuice$$54253391.newInstance() at com.google.inject.internal.cglib.reflect.$FastConstructor.newInstance(FastConstructor.java:40) at com.google.inject.internal.DefaultConstructionProxyFactory$1.newInstance(DefaultConstructionProxyFactory.java:60) at com.google.inject.internal.ConstructorInjector.construct(ConstructorInjector.java:85) at com.google.inject.internal.ConstructorBindingImpl$Factory.get(ConstructorBindingImpl.java:254) at com.google.inject.internal.ProviderToInternalFactoryAdapter$1.call(ProviderToInternalFactoryAdapter.java:46) at com.google.inject.internal.InjectorImpl.callInContext(InjectorImpl.java:1031) at com.google.inject.internal.ProviderToInternalFactoryAdapter.get(ProviderToInternalFactoryAdapter.java:40) at com.google.inject.Scopes$1$1.get(Scopes.java:65) at com.google.inject.internal.InternalFactoryToProviderAdapter.get(InternalFactoryToProviderAdapter.java:40) at com.google.inject.internal.InjectorImpl$4$1.call(InjectorImpl.java:978) at com.google.inject.internal.InjectorImpl.callInContext(InjectorImpl.java:1024) at com.google.inject.internal.InjectorImpl$4.get(InjectorImpl.java:974) ... 26 more Caused by: java.lang.ClassNotFoundException: javax.validation.ValidationException 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) ... 42 more</p> <p>I'm probably missing something but I don't knwo where to look... Thanks</p>
    singulars
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload