Hi,
I'm trying to do this;
public class PostalServiceImpl extends RemoteServiceServlet implements
PostalService {
private static final Logger log =
Logger.getLogger(PostalServiceImpl.class.getName());
@Inject
private PostalManager postalManager;
public PostalServiceImpl() {
Injector injector = Guice.createInjector(new
NetGazelleModule());
injector.injectMembers(this);
}
public String getCity(String postal) {
log.info("PostalServiceImpl.getCity(" + postal + ")");
if (postalManager == null) {
log.severe("PostalServiceImpl.getCity: postalManager is
null !");
}
return postalManager.getCity(postal);
}
...
But I get the following exception;
INFO: The server is running at http://localhost:8888/
Jun 11, 2010 6:38:57 AM
com.google.inject.internal.FinalizableReferenceQueue <init>
INFO: Failed to start reference finalizer thread. Reference cleanup
will only occur when new references are created.
java.lang.reflect.InvocationTargetException
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:
39)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:
25)
at java.lang.reflect.Method.invoke(Method.java:597)
at
com.google.appengine.tools.development.agent.runtime.Runtime.invoke(Runtime.java:
100)
at
com.google.inject.internal.FinalizableReferenceQueue.<init>(FinalizableReferenceQueue.java:
124)
at com.google.inject.internal.MapMaker
$QueueHolder.<clinit>(MapMaker.java:787)
at com.google.inject.internal.MapMaker$WeakEntry.<init>(MapMaker.java:
946)
at com.google.inject.internal.MapMaker$Strength
$1.newEntry(MapMaker.java:312)
at com.google.inject.internal.MapMaker
$StrategyImpl.newEntry(MapMaker.java:498)
at com.google.inject.internal.MapMaker
$StrategyImpl.newEntry(MapMaker.java:419)
at com.google.inject.internal.CustomConcurrentHashMap
$ComputingImpl.get(CustomConcurrentHashMap.java:2029)
at
com.google.inject.internal.BytecodeGen.getClassLoader(BytecodeGen.java:
149)
at
com.google.inject.internal.BytecodeGen.getClassLoader(BytecodeGen.java:
132)
at
com.google.inject.internal.BytecodeGen.newFastClass(BytecodeGen.java:
162)
at com.google.inject.DefaultConstructionProxyFactory
$1.<init>(DefaultConstructionProxyFactory.java:54)
at
com.google.inject.DefaultConstructionProxyFactory.create(DefaultConstructionProxyFactory.java:
52)
at com.google.inject.ProxyFactory.create(ProxyFactory.java:152)
at
com.google.inject.ConstructorInjectorStore.createConstructor(ConstructorInjectorStore.java:
84)
at com.google.inject.ConstructorInjectorStore.access
$000(ConstructorInjectorStore.java:31)
at com.google.inject.ConstructorInjectorStore
$1.create(ConstructorInjectorStore.java:39)
at com.google.inject.ConstructorInjectorStore
$1.create(ConstructorInjectorStore.java:35)
at com.google.inject.internal.FailableCache
$1.apply(FailableCache.java:35)
at com.google.inject.internal.MapMaker
$StrategyImpl.compute(MapMaker.java:549)
at com.google.inject.internal.MapMaker
$StrategyImpl.compute(MapMaker.java:419)
at com.google.inject.internal.CustomConcurrentHashMap
$ComputingImpl.get(CustomConcurrentHashMap.java:2041)
at com.google.inject.internal.FailableCache.get(FailableCache.java:
46)
at
com.google.inject.ConstructorInjectorStore.get(ConstructorInjectorStore.java:
52)
at
com.google.inject.ConstructorBindingImpl.initialize(ConstructorBindingImpl.java:
57)
at com.google.inject.InjectorImpl.initializeBinding(InjectorImpl.java:
377)
at com.google.inject.BindingProcessor$1$1.run(BindingProcessor.java:
169)
at
com.google.inject.BindingProcessor.initializeBindings(BindingProcessor.java:
224)
at
com.google.inject.InjectorBuilder.initializeStatically(InjectorBuilder.java:
120)
at com.google.inject.InjectorBuilder.build(InjectorBuilder.java:105)
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.netgazelle.server.service.PostalServiceImpl.<init>(PostalServiceImpl.java:
20)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native
Method)
at
sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:
39)
at
sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:
27)
at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
at java.lang.Class.newInstance0(Class.java:355)
at java.lang.Class.newInstance(Class.java:308)
at org.mortbay.jetty.servlet.Holder.newInstance(Holder.java:153)
at
org.mortbay.jetty.servlet.ServletHolder.initServlet(ServletHolder.java:
428)
at
org.mortbay.jetty.servlet.ServletHolder.getServlet(ServletHolder.java:
339)
at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:
487)
at org.mortbay.jetty.servlet.ServletHandler
$CachedChain.doFilter(ServletHandler.java:1166)
at
com.google.appengine.api.blobstore.dev.ServeBlobFilter.doFilter(ServeBlobFilter.java:
51)
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
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:349)
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.security.AccessControlException: access denied
(java.lang.RuntimePermission modifyThreadGroup)
at
java.security.AccessControlContext.checkPermission(AccessControlContext.java:
323)
at
java.security.AccessController.checkPermission(AccessController.java:
546)
at java.lang.SecurityManager.checkPermission(SecurityManager.java:
532)
at com.google.appengine.tools.development.DevAppServerFactory
$CustomSecurityManager.checkPermission(DevAppServerFactory.java:166)
at com.google.appengine.tools.development.DevAppServerFactory
$CustomSecurityManager.checkAccess(DevAppServerFactory.java:191)
at java.lang.ThreadGroup.checkAccess(ThreadGroup.java:299)
at java.lang.Thread.init(Thread.java:332)
at java.lang.Thread.<init>(Thread.java:429)
at com.google.inject.internal.Finalizer.<init>(Finalizer.java:92)
at com.google.inject.internal.Finalizer.startFinalizer(Finalizer.java:
81)
... 72 more
Jun 11, 2010 6:38:57 AM
com.netgazelle.server.service.PostalServiceImpl getCity
INFO: PostalServiceImpl.getCity(9999)
It seems like my code is reached anyhow, but I don't like exceptions
to occur ! :-) Can someone point me to a solution ?
Thanks.
--
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 [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-appengine-java?hl=en.