Thank you! Will proceed in that direction. -Mateo On May 11, 3:57 pm, Christian <[email protected]> wrote: > Hi Mateo, > > Your GWT rpc servlet is not guice managed, so this is still Tomcat trying > instantiating it > insteasd of Guice. > You want to do this > :http://stuffthathappens.com/blog/2009/09/14/guice-with-gwt/ > > 2010/5/11 Mateo <[email protected]> > > > > > I'm somewhat familiar with Spring, trying to learn Guice, and I'm > > pretty sure I'm missing something simple. Nonetheless my reading and > > searching has yet to produce any insights, so I'll reveal my > > foolishness here. > > > My problem appears to be that Guice is not instantiating the > > GreetingServiceImpl class. (I'm using the auto-created GWT > > GreetingService application as a learning point.) > > > The specific error I am getting comes when I click "Send" (sending my > > name to the server). Tomcat prints the following: > > > Stack Trace: > > [java] INFO: Marking servlet greetServlet as unavailable > > [java] May 11, 2010 11:20:33 AM > > org.apache.catalina.core.StandardWrapperValve invoke > > [java] SEVERE: Allocate exception for servlet greetServlet > > [java] java.lang.InstantiationException: > > com.~~~.server.GreetingServiceImpl > > [java] at java.lang.Class.newInstance0(Class.java:340) > > [java] at java.lang.Class.newInstance(Class.java:308) > > [java] at > > org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java: > > 1104) > > ... > > > So, here's what I have. (I've provided a lot - sorry it's a bit long. > > At the same time, let me know if I need to provide something more.) > > > I've included the following jars from Guice2.0.zip: > > * aopalliance.jar > > * guice-2.0.jar > > * guice-servlet-2.0.jar > > ================== > > > My GreetingServiceImpl class is as follows: > > > ... package and imports ... > > @SuppressWarnings("serial") > > public class GreetingServiceImpl extends RemoteServiceServlet > > implements GreetingService > > { > > private final SecurityHandlerService securityHandlerService; > > private final AuthenticationHandlerService > > authenticationHandlerService; > > > �...@inject > > GreetingServiceImpl(SecurityHandlerService securityHandlerService, > > AuthenticationHandlerService > > authenticationHandlerService) > > { > > this.securityHandlerService = securityHandlerService; > > this.authenticationHandlerService = > > authenticationHandlerService; > > } > > > public String greetServer(String input) throws > > IllegalArgumentException > > { > > ... uses both securityHandlerService and > > authenticationHandlerService ... > > } > > } > > ========================= > > > My GuiceServletContextListener impl: > > > ... package and imports ... > > public class SkyclientGuiceServletConfig extends > > GuiceServletContextListener > > { > > �...@override > > protected Injector getInjector() > > { > > return Guice.createInjector(new ServletModule()); > > } > > } > > ================== > > > My Abstract Module: > > > ... package and imports ... > > public class SkyclientBusModule extends AbstractModule > > { > > �...@override > > public void configure() > > { > > System.out.println("\t * Configuring SkyclientBusModule!"); > > > bind(SecurityHandlerService.class).to(SecurityHandlerServiceImpl.class); > > > bind(AuthenticationHandlerService.class).to(AuthenticationHandlerServiceImpl.class); > > } > > > } > > ============= > > > My web.xml is as follows: > > > ... xml and doctype ... > > <web-app> > > <!-- Guice Stuff --> > > <filter> > > <filter-name>guiceFilter</filter-name> > > <filter-class>com.google.inject.servlet.GuiceFilter</filter- > > class> > > </filter> > > <filter-mapping> > > <filter-name>guiceFilter</filter-name> > > <url-pattern>/*</url-pattern> > > </filter-mapping> > > <listener> > > <listener-class>com.~~~.server.SkyclientGuiceServletConfig</ > > listener-class> > > </listener> > > > <!-- Servlets --> > > <servlet> > > <servlet-name>greetServlet</servlet-name> > > <servlet-class>com.~~~.server.GreetingServiceImpl</servlet-class> > > </servlet> > > <servlet-mapping> > > <servlet-name>greetServlet</servlet-name> > > <url-pattern>/skyclient/greet</url-pattern> > > </servlet-mapping> > > > <!-- Default page to serve --> > > <welcome-file-list> > > <welcome-file>SkyClient.html</welcome-file> > > </welcome-file-list> > > > </web-app> > > =========================== > > > Again - sorry it's so long. Is there something obvious I'm missing? > > > -- > > You received this message because you are subscribed to the Google Groups > > "google-guice" group. > > To post to this group, send email to [email protected]. > > To unsubscribe from this group, send email to > > [email protected]<google-guice%[email protected]> > > . > > For more options, visit this group at > >http://groups.google.com/group/google-guice?hl=en. > > -- > You received this message because you are subscribed to the Google Groups > "google-guice" group. > To post to this group, send email to [email protected]. > To unsubscribe from this group, send email to > [email protected]. > For more options, visit this group > athttp://groups.google.com/group/google-guice?hl=en.
-- You received this message because you are subscribed to the Google Groups "google-guice" group. To post to this group, send email to [email protected]. To unsubscribe from this group, send email to [email protected]. For more options, visit this group at http://groups.google.com/group/google-guice?hl=en.
