views:

345

answers:

1

I'm building application with GWT + GAE on my MAC. In this app i have DTO's and to convert from DTO to Persistent entities I'm using Dozer Library, its Mapper object. Everything compiles and runs fine on Windows but when I'm trying to run my app in hosted mode on MAC i'm getting following WARNING:

The server is running at http://localhost:8080/
2009-06-26 16:16:47.496 java[1378:80f] Can't open input server /Library/InputManagers/MultiClutchInputManager.bundle
2009-06-26 16:16:47.498 java[1378:80f] [Java CocoaComponent compatibility mode]: Enabled
2009-06-26 16:16:47.498 java[1378:80f] [Java CocoaComponent compatibility mode]: Setting timeout for SWT to 0.100000
Jun 26, 2009 11:17:00 PM org.dozer.DozerInitializer init
WARNING: Unable to register Dozer JMX MBeans with the PlatformMBeanServer.  Dozer will still function normally, but management via JMX may not be available
java.security.AccessControlException: access denied (javax.management.MBeanServerPermission createMBeanServer)
    at java.security.AccessControlContext.checkPermission(AccessControlContext.java:264)
    at java.security.AccessController.checkPermission(AccessController.java:427)
    at java.lang.SecurityManager.checkPermission(SecurityManager.java:532)
    at com.google.appengine.tools.development.DevAppServerFactory$CustomSecurityManager.checkPermission(DevAppServerFactory.java:122)
    at java.lang.management.ManagementFactory.getPlatformMBeanServer(ManagementFactory.java:508)
    at org.dozer.DozerInitializer.registerJMXBean(DozerInitializer.java:108)
    at org.dozer.DozerInitializer.registerJMXBeans(DozerInitializer.java:97)
    at org.dozer.DozerInitializer.init(DozerInitializer.java:64)
    at org.dozer.DozerBeanMapper.<clinit>(DozerBeanMapper.java:56)
    at com.athena.server.ContentServiceImpl.saveContent(ContentServiceImpl.java:24)
    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:585)
    at com.google.gwt.user.server.rpc.RPC.invokeAndEncodeResponse(RPC.java:527)
    at com.google.gwt.user.server.rpc.RemoteServiceServlet.processCall(RemoteServiceServlet.java:166)
    at com.google.gwt.user.server.rpc.RemoteServiceServlet.doPost(RemoteServiceServlet.java:86)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:713)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:806)
    at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:487)
    at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1093)
    at com.google.apphosting.utils.servlet.TransactionCleanupFilter.doFilter(TransactionCleanupFilter.java:43)
    at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
    at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:360)
    at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
    at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:181)
    at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:712)
    at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:405)
    at com.google.apphosting.utils.jetty.DevAppEngineWebAppContext.handle(DevAppEngineWebAppContext.java:54)
    at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:139)
    at com.google.appengine.tools.development.JettyContainerService$ApiProxyHandler.handle(JettyContainerService.java:306)
    at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:139)
    at org.mortbay.jetty.Server.handle(Server.java:313)
    at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:506)
    at org.mortbay.jetty.HttpConnection$RequestHandler.content(HttpConnection.java:844)
    at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:644)
    at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:211)
    at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:381)
    at org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:396)
    at org.mortbay.thread.BoundedThreadPool$PoolThread.run(BoundedThreadPool.java:442)

Is it possible to fix this Warning?

+1  A: 

Yes, disable auto-registration of JMX beans. From the Dozer configuration page, dozer.autoregister.jmx.beans defaults to true. Set it to false. Now that's done via a properties file and I'm not sure you can do that either with GAE. If you can't, you'll have to obtain a copy of the source, disable it and recompile it.

That being said, it does look like a warning but I don't know how Dozer will react to that so you're just going to have to try it and see. It may be fine but even if it is, I'd still fix it.

cletus
The link there describes it can be done:- either with a properties file- or with setting a property when running the JVM (-D...).
Grzegorz Oledzki
thanks, it worked.
Maksim