Guice Servlet itself works fine in appengine, so Im a little puzzled as to how you're seeing this error =(
Are you building from trunk? Or using a binary from somewhere? Dhanji. On Tue, Jul 27, 2010 at 6:32 PM, Stuart McCulloch <[email protected]> wrote: > On 23 July 2010 21:53, Dennis <[email protected]> wrote: > >> I followed the instructions for using guice servlet on App Engine >> ( http://code.google.com/p/google-guice/wiki/GoogleAppEngine , >> http://code.google.com/p/google-guice/wiki/Servlets ). >> Basically I copied the whole stuff and did not change anything except >> package names (and of course the Servlets to serve). >> >> Whenever I run the project this is what happens: >> >> 23.07.2010 13:46:34 com.google.apphosting.utils.jetty.JettyLogger warn >> WARNING: failed >> com.google.apphosting.utils.jetty.devappenginewebappcont...@1d36dfe{/,D: >> \Data\eclipse\workspace\project\war}: java.lang.AssertionError: >> java.lang.IllegalAccessException: Class >> com.google.inject.DefaultConstructionProxyFactory$1 can not access a >> member of class com.google.inject.servlet.ManagedServletPipeline with >> modifiers "public" >> 23.07.2010 13:46:34 com.google.apphosting.utils.jetty.JettyLogger warn >> WARNING: failed jettycontainerservice$apiproxyhand...@14d5bc9: >> java.lang.AssertionError: java.lang.IllegalAccessException: Class >> com.google.inject.DefaultConstructionProxyFactory$1 can not access a >> member of class com.google.inject.servlet.ManagedServletPipeline with >> modifiers "public" >> 23.07.2010 13:46:34 com.google.apphosting.utils.jetty.JettyLogger warn >> WARNING: Error starting handlers >> java.lang.AssertionError: java.lang.IllegalAccessException: Class >> com.google.inject.DefaultConstructionProxyFactory$1 can not access a >> member of class com.google.inject.servlet.ManagedServletPipeline with >> modifiers "public" >> at com.google.inject.DefaultConstructionProxyFactory >> $1.newInstance(DefaultConstructionProxyFactory.java:85) >> at >> com.google.inject.ConstructorInjector.construct(ConstructorInjector.java: >> 85) >> at com.google.inject.ConstructorBindingImpl >> $Factory.get(ConstructorBindingImpl.java:111) >> at com.google.inject.ProviderToInternalFactoryAdapter >> $1.call(ProviderToInternalFactoryAdapter.java:45) >> at com.google.inject.InjectorImpl.callInContext(InjectorImpl.java: >> 811) >> at >> >> com.google.inject.ProviderToInternalFactoryAdapter.get(ProviderToInternalFactoryAdapter.java: >> 42) >> at com.google.inject.Scopes$1$1.get(Scopes.java:54) >> at >> >> com.google.inject.InternalFactoryToProviderAdapter.get(InternalFactoryToProviderAdapter.java: >> 48) >> at >> >> com.google.inject.SingleParameterInjector.inject(SingleParameterInjector.java: >> 42) >> at >> >> com.google.inject.SingleParameterInjector.getAll(SingleParameterInjector.java: >> 66) >> at >> com.google.inject.ConstructorInjector.construct(ConstructorInjector.java: >> 84) >> at com.google.inject.ConstructorBindingImpl >> $Factory.get(ConstructorBindingImpl.java:111) >> at com.google.inject.ProviderToInternalFactoryAdapter >> $1.call(ProviderToInternalFactoryAdapter.java:45) >> at com.google.inject.InjectorImpl.callInContext(InjectorImpl.java: >> 811) >> at >> >> com.google.inject.ProviderToInternalFactoryAdapter.get(ProviderToInternalFactoryAdapter.java: >> 42) >> at com.google.inject.Scopes$1$1.get(Scopes.java:54) >> at >> >> com.google.inject.InternalFactoryToProviderAdapter.get(InternalFactoryToProviderAdapter.java: >> 48) >> at com.google.inject.FactoryProxy.get(FactoryProxy.java:56) >> at com.google.inject.ProviderToInternalFactoryAdapter >> $1.call(ProviderToInternalFactoryAdapter.java:45) >> at com.google.inject.InjectorImpl.callInContext(InjectorImpl.java: >> 811) >> at >> >> com.google.inject.ProviderToInternalFactoryAdapter.get(ProviderToInternalFactoryAdapter.java: >> 42) >> at com.google.inject.Scopes$1$1.get(Scopes.java:54) >> at >> >> com.google.inject.InternalFactoryToProviderAdapter.get(InternalFactoryToProviderAdapter.java: >> 48) >> at >> >> com.google.inject.SingleParameterInjector.inject(SingleParameterInjector.java: >> 42) >> at >> >> com.google.inject.SingleParameterInjector.getAll(SingleParameterInjector.java: >> 66) >> at >> com.google.inject.SingleMethodInjector.inject(SingleMethodInjector.java: >> 84) >> at com.google.inject.InjectionRequestProcessor$StaticInjection >> $1.call(InjectionRequestProcessor.java:109) >> at com.google.inject.InjectionRequestProcessor$StaticInjection >> $1.call(InjectionRequestProcessor.java:106) >> at com.google.inject.InjectorImpl.callInContext(InjectorImpl.java: >> 804) >> at com.google.inject.InjectionRequestProcessor >> $StaticInjection.injectMembers(InjectionRequestProcessor.java:106) >> at >> >> com.google.inject.InjectionRequestProcessor.injectMembers(InjectionRequestProcessor.java: >> 74) >> at >> com.google.inject.InjectorBuilder.injectDynamically(InjectorBuilder.java: >> 168) >> at >> com.google.inject.InjectorBuilder.build(InjectorBuilder.java:113) >> at com.google.inject.Guice.createInjector(Guice.java:92) >> at com.google.inject.Guice.createInjector(Guice.java:69) >> at com.google.inject.Guice.createInjector(Guice.java:59) >> at >> >> com.project.server.guice.MyGuiceServletContextListener.getInjector(MyGuiceServletContextListener.java: >> 11) >> at >> >> com.google.inject.servlet.GuiceServletContextListener.contextInitialized(GuiceServletContextListener.java: >> 43) >> (...) >> >> Any ideas? >> > > one thing I notice is that ManagedServletPipeline is package-private, but > has a public constructor - so it may be security related > > btw, are you using the latest trunk code? walking through the code in > trunk, Guice should try "setAccessible(true)" before falling back to JDK > reflection to call the constructor - and if that fails then there's not much > else we can do as there must be a security manager somewhere that's blocking > the call > > -- >> >> 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. >> > > -- > Cheers, Stuart > > -- > 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 at http://groups.google.com/group/google-guice?hl=en.
