This looks like a bug. I believe you can work around it temporarily by patching BeansWrapper to call setAccessible on the enum Constructor. Can you please file an issue in our tracker?
On Wed, Sep 2, 2009 at 7:30 PM, Hani Naguib <[email protected]> wrote: > > The root exception seems to be: > > Nested in org.springframework.beans.factory.BeanCreationException: > Error creating bean with name 'freemarkerConfig' defined in > ServletContext resource [/WEB-INF/gae/gae-web.xml]: Invocation of init > method failed; nested exception is > java.lang.ExceptionInInitializerError: > Undeclared throwable:java.lang.IllegalAccessException: Class > > com.google.apphosting.runtime.security.shared.intercept.java.lang.reflect.Constructor_ > can not access a member of class freemarker.ext.beans.EnumModels with > modifiers "" > at com.google.appengine.runtime.Request.process-8239fb992975c163 > (Request.java) > at sun.reflect.Reflection.ensureMemberAccess(Unknown Source) > at java.lang.reflect.Constructor.newInstance(Constructor.java:42) > at freemarker.ext.beans.BeansWrapper.createEnumModels > (BeansWrapper.java:1535) > at freemarker.ext.beans.BeansWrapper.<init>(BeansWrapper.java:174) > at freemarker.ext.beans.BeansWrapper.<clinit>(BeansWrapper.java:164) > at > freemarker.template.ObjectWrapper.<clinit>(ObjectWrapper.java:69) > at freemarker.core.Configurable.<init>(Configurable.java:132) > at freemarker.template.Configuration.<init>(Configuration.java:109) > at freemarker.template.Configuration.<clinit>(Configuration.java:96) > at > > org.springframework.ui.freemarker.FreeMarkerConfigurationFactory.newConfiguration > (FreeMarkerConfigurationFactory.java:332) > at > > org.springframework.ui.freemarker.FreeMarkerConfigurationFactory.createConfiguration > (FreeMarkerConfigurationFactory.java:265) > at > > org.springframework.web.servlet.view.freemarker.FreeMarkerConfigurer.afterPropertiesSet > (FreeMarkerConfigurer.java:114) > at > > org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods > (AbstractAutowireCapableBeanFactory.java:1369) > at > > org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean > (AbstractAutowireCapableBeanFactory.java:1335) > at > > org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean > (AbstractAutowireCapableBeanFactory.java:473) > at > > org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory > $1.run(AbstractAutowireCapableBeanFactory.java:409) > at java.security.AccessController.doPrivileged(Native Method) > at > > org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean > (AbstractAutowireCapableBeanFactory.java:380) > at org.springframework.beans.factory.support.AbstractBeanFactory > $1.getObject(AbstractBeanFactory.java:264) > at > > org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton > (DefaultSingletonBeanRegistry.java:222) > at > org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean > (AbstractBeanFactory.java:261) > at > org.springframework.beans.factory.support.AbstractBeanFactory.getBean > (AbstractBeanFactory.java:185) > at > org.springframework.beans.factory.support.AbstractBeanFactory.getBean > (AbstractBeanFactory.java:164) > at > > org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons > (DefaultListableBeanFactory.java:429) > at > > org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization > (AbstractApplicationContext.java:728) > at > org.springframework.context.support.AbstractApplicationContext.refresh > (AbstractApplicationContext.java:380) > at > > org.springframework.web.servlet.FrameworkServlet.createWebApplicationContext > (FrameworkServlet.java:402) > at > org.springframework.web.servlet.FrameworkServlet.initWebApplicationContext > (FrameworkServlet.java:316) > at org.springframework.web.servlet.FrameworkServlet.initServletBean > (FrameworkServlet.java:282) > at org.springframework.web.servlet.HttpServletBean.init > (HttpServletBean.java:126) > at javax.servlet.GenericServlet.init(GenericServlet.java:215) > at org.mortbay.jetty.servlet.ServletHolder.initServlet > (ServletHolder.java:433) > at > org.mortbay.jetty.servlet.ServletHolder.doStart(ServletHolder.java: > 256) > at org.mortbay.component.AbstractLifeCycle.start > (AbstractLifeCycle.java:40) > at org.mortbay.jetty.servlet.ServletHandler.initialize > (ServletHandler.java:612) > at org.mortbay.jetty.servlet.Context.startContext(Context.java:139) > at org.mortbay.jetty.webapp.WebAppContext.startContext > (WebAppContext.java:1218) > at org.mortbay.jetty.handler.ContextHandler.doStart > (ContextHandler.java:500) > at > org.mortbay.jetty.webapp.WebAppContext.doStart(WebAppContext.java: > 448) > at org.mortbay.component.AbstractLifeCycle.start > (AbstractLifeCycle.java:40) > at > com.google.apphosting.runtime.jetty.AppVersionHandlerMap.createHandler > (AppVersionHandlerMap.java:190) > at > com.google.apphosting.runtime.jetty.AppVersionHandlerMap.getHandler > (AppVersionHandlerMap.java:167) > at > > com.google.apphosting.runtime.jetty.JettyServletEngineAdapter.serviceRequest > (JettyServletEngineAdapter.java:127) > at com.google.apphosting.runtime.JavaRuntime.handleRequest > (JavaRuntime.java:235) > at com.google.apphosting.base.RuntimePb$EvaluationRuntime > $6.handleBlockingRequest(RuntimePb.java:4950) > at com.google.apphosting.base.RuntimePb$EvaluationRuntime > $6.handleBlockingRequest(RuntimePb.java:4948) > at com.google.net.rpc.impl.BlockingApplicationHandler.handleRequest > (BlockingApplicationHandler.java:24) > at com.google.net.rpc.impl.RpcUtil.runRpcInApplication(RpcUtil.java: > 359) > at com.google.net.rpc.impl.Server$2.run(Server.java:823) > at com.google.tracing.LocalTraceSpanRunnable.run > (LocalTraceSpanRunnable.java:56) > at com.google.tracing.LocalTraceSpanBuilder.internalContinueSpan > (LocalTraceSpanBuilder.java:516) > at com.google.net.rpc.impl.Server.startRpc(Server.java:778) > at com.google.net.rpc.impl.Server.processRequest(Server.java:351) > at com.google.net.rpc.impl.ServerConnection.messageReceived > (ServerConnection.java:437) > at com.google.net.rpc.impl.RpcConnection.parseMessages > (RpcConnection.java:319) > at com.google.net.rpc.impl.RpcConnection.dataReceived > (RpcConnection.java:290) > at com.google.net.async.Connection.handleReadEvent(Connection.java: > 428) > at com.google.net.async.EventDispatcher.processNetworkEvents > (EventDispatcher.java:762) > at com.google.net.async.EventDispatcher.internalLoop > (EventDispatcher.java:207) > at com.google.net.async.EventDispatcher.loop(EventDispatcher.java: > 101) > at com.google.net.rpc.RpcService.runUntilServerShutdown > (RpcService.java:251) > at com.google.apphosting.runtime.JavaRuntime$RpcRunnable.run > (JavaRuntime.java:392) > at java.lang.Thread.run(Unknown Source) > > > > --~--~---------~--~----~------------~-------~--~----~ 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 -~----------~----~----~----~------~----~------~--~---
