I'm also getting this StackOverflowError, but the app engine log view
is truncated, so I can't see the initial cause.  Is there any way to
see the whole log message, so I can try to help track it down/produce
a test case?

Cheers,
Kris

On Oct 7, 4:36 pm, Toby Reyelts <to...@google.com> wrote:
> Unfortunately this is an issue that will be very difficult for us to solve
> unless you can provide us with a simple reproducing app that we can use to
> debug. If the issue is important to you, that is the most important thing
> you can do to help us.On Wed, Oct 7, 2009 at 6:57 AM, Dave Cheong 
> <d...@davecheong.com> wrote:
>
> > Hi there,
>
> > I'm having the same problem and was wondering if you or anyone else
> > out there have found a solution.
> > I'm currently using GAE/J 1.2.5 and Spring 2.5.
>
> > Like the previous author, everything works locally but I get a
> > StackOverflowError on Appspot. However, if I comment out ...
>
> > <aop:aspectj-autoproxy/>
>
> > ... things work on Appspot.
>
> > Any help provided is much appreciated.
>
> > thanks,
> > dave
>
> > On Aug 26, 3:38 pm, Gabriel Moreira <gabrielmore...@gmail.com> wrote:
> > > My app is using Spring 3.0.
>
> > > If i disable Spring AOP, my app runs fine both on local and appspot.
>
> > > But when i enable Spring AOP (tested with advice or aspects), in local
> > > runtime everything is fine and works, but in appspot im getting this
> > > error:
>
> > > java.lang.StackOverflowError
> > >         at java.lang.String.endsWith(Unknown Source)
> > >         at sun.security.provider.PolicyFile.canonPath(Unknown Source)
> > >         at java.io.FilePermission$1.run(Unknown Source)
> > >         at java.io.FilePermission$1.run(Unknown Source)
> > >         at java.security.AccessController.doPrivileged(Native Method)
> > >         at java.io.FilePermission.init(Unknown Source)
> > >         at java.io.FilePermission.<init>(Unknown Source)
> > >         at
> > sun.net.www.protocol.file.FileURLConnection.getPermission(Unknown
> > > Source)
> > >         at sun.misc.URLClassPath.check(Unknown Source)
> > >         at sun.misc.URLClassPath$FileLoader.getResource(Unknown Source)
> > >         at sun.misc.URLClassPath$FileLoader.findResource(Unknown Source)
> > >         at sun.misc.URLClassPath.findResource(Unknown Source)
> > >         at java.net.URLClassLoader$2.run(Unknown Source)
> > >         at java.security.AccessController.doPrivileged(Native Method)
> > >         at java.net.URLClassLoader.findResource(Unknown Source)
> > >         at
> > com.google.apphosting.runtime.security.UserClassLoader.findResource
> > > (UserClassLoader.java:631)
> > >         at java.lang.ClassLoader.getResource(Unknown Source)
> > >         at com.google.apphosting.runtime.security.UserClassLoader$4.run
> > > (UserClassLoader.java:665)
> > >         at com.google.apphosting.runtime.security.UserClassLoader$4.run
> > > (UserClassLoader.java:659)
> > >         at java.security.AccessController.doPrivileged(Native Method)
> > >         at
> > com.google.apphosting.runtime.security.UserClassLoader.findResource
> > > (UserClassLoader.java:659)
> > >         at java.lang.ClassLoader.getResource(Unknown Source)
> > >         at com.google.apphosting.runtime.security.UserClassLoader$4.run
> > > (UserClassLoader.java:665)
> > >         at com.google.apphosting.runtime.security.UserClassLoader$4.run
> > > (UserClassLoader.java:659)
> > >         at java.security.AccessController.doPrivileged(Native Method)
> > >         at
> > com.google.apphosting.runtime.security.UserClassLoader.findResource
> > > (UserClassLoader.java:659)
> > >         at java.lang.ClassLoader.getResource(Unknown Source)
> > >         at com.google.apphosting.runtime.security.UserClassLoader$4.run
> > > (UserClassLoader.java:665)
> > >         at com.google.apphosting.runtime.security.UserClassLoader$4.run
> > > (UserClassLoader.java:659)
> > >         at java.security.AccessController.doPrivileged(Native Method)
> > >         at
> > > com.google.apphosting.runtime.security.UserClassLoader.findResour...
>
> > > My applicationContext.xml:
>
> > > <?xml version="1.0" encoding="UTF-8"?>
> > > <beans xmlns="http://www.springframework.org/schema/beans";
> > > xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
> > >         xmlns:aop="http://www.springframework.org/schema/aop";
> > > xmlns:context="http://www.springframework.org/schema/context";
> > >         xmlns:tx="http://www.springframework.org/schema/tx";
> > >         xsi:schemaLocation="http://www.springframework.org/schema/beans
>
> >http://www.springframework.org/schema/beans/spring-beans-2.5.xsd
> > >                        http://www.springframework.org/schema/aop
>
> >http://www.springframework.org/schema/aop/spring-aop-2.5.xsd
> > >                        http://www.springframework.org/schema/tx
>
> >http://www.springframework.org/schema/tx/spring-tx-2.5.xsd
> > >                        http://www.springframework.org/schema/context
>
> >http://www.springframework.org/schema/context/spring-context-2.5.xsd";>
> > >         <!--
> > >                 Habilita annotations para JPA
> > >         -->
> > >         <!--
> > >                 VERIFICAR: <bean
>
> > class="org.springframework.orm.jpa.support.PersistenceAnnotationBeanPostPro
> > cessor" /
>
> > >         -->
>
> > >         <bean
>
> > class="org.springframework.dao.annotation.PersistenceExceptionTranslationPo
> > stProcessor" /
>
> > >         <context:property-placeholder
> > > location="classpath:application.properties" />
>
> > >         <!--
> > >                 JPA Entity Manager
> > >         -->
> > >         <bean id="entityManagerFactory"
> > > class="org.springframework.orm.jpa.LocalEntityManagerFactoryBean">
> > >                 <property name="persistenceUnitName"
> > value="transactions-optional" /
>
> > >         </bean>
>
> > >         <!--
> > >                 Activates spring transaction container
> > >         -->
> > >         <bean id="transactionManager"
> > > class="org.springframework.orm.jpa.JpaTransactionManager">
> > >                 <property name="entityManagerFactory"
> > ref="entityManagerFactory" />
> > >         </bean>
>
> > >         <!--
> > >                 Cache configuration
> > >          -->
> > >         <bean id="cacheManager"
> > > class="org.springframework.cache.ehcache.EhCacheManagerFactoryBean">
> > >                 <property name="configLocation">
> > >                         <value>classpath:ehcache.xml</value>
> > >                 </property>
> > >         </bean>
>
> > >         <!--
> > >                 Activates annotations to be detected in bean classes:
> > @Transaction
> > >         -->
> > >         <tx:annotation-driven transaction-manager="transactionManager" />
>
> > >         <!--
> > >                 Activates various annotations to be detected in bean
> > classes:
> > > Spring's @Required and @Autowired,
> > >                 as well as JSR 250's @Resource.
> > >         -->
> > >         <context:annotation-config />
>
> > >         <!--
> > >                 Habilita o AOP AspectJ por annotations.
> > >         -->
>
> > > <--
> > >         <aop:aspectj-autoproxy proxy-target-class="false" />
> > > -->
> > >         <aop:config proxy-target-class="false">
>
> > >                 <aop:advisor pointcut="@annotation
> > > (br.com.myapplication.infrastructure.web.AjaxMethod)"
>
> >  advice-ref="ajaxErrorHandlerInteceptor"/>
>
> > >         </aop:config>
>
> > >         <!--
> > >                 Instruct Spring to find beans components.
> > >         -->
> > >         <context:component-scan base-package="br.com.myapplication" />
> > > </beans>
>
> > > My class AjaxErrorHandlerInteceptor :
>
> > > package br.com.myapplication.infrastructure.web;
>
> > > import org.aopalliance.intercept.MethodInterceptor;
> > > import org.aopalliance.intercept.MethodInvocation;
> > > import org.apache.log4j.Logger;
> > > import org.springframework.stereotype.Component;
>
> > > @Component
> > > public class AjaxErrorHandlerInteceptor implements MethodInterceptor {
>
> > >         @Override
> > >         public Object invoke(MethodInvocation mi) throws Throwable {
> > >                 try {
> > >                         return mi.proceed();
> > >                 } catch (Exception e) {
> > >                         Logger targetLogger =
> > Logger.getLogger(mi.getThis().getClass());
> > >                 }
> > >                 return "success";
>
> > >         }
>
> > > }
>
> > > ---------------------
>
> > > Complete error message:
>
> > > Failed startup of context
> > > com.google.apphosting.utils.jetty.runtimeappenginewebappcont...@6147d9
> > > {/,/base/data/home/apps/myapp/1.335882616755927913}
> > > org.springframework.beans.factory.BeanCreationException: Error
> > > creating bean with name 'transactionManager' defined in URL [file:/
> > > base/data/home/apps/myapp/1.335882616755927913/WEB-INF/classes/
> > > applicationContext.xml]: Cannot resolve reference to bean
> > > 'entityManagerFactory' while setting bean property
> > > 'entityManagerFactory'; nested exception is
> > > org.springframework.beans.factory.BeanCreationException: Error
> > > creating bean with name 'entityManagerFactory': Post-processing of the
> > > FactoryBean's object failed; nested exception is
> > > java.lang.StackOverflowError
> > >         at
>
> > org.springframework.beans.factory.support.BeanDefinitionValueResolver.resol
> > veReference
> > > (BeanDefinitionValueResolver.java:315)
> > >         at
>
> > org.springframework.beans.factory.support.BeanDefinitionValueResolver.resol
> > veValueIfNecessary
> > > (BeanDefinitionValueResolver.java:106)
> > >         at
>
> > org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactor
> > y.applyPropertyValues
> > > (AbstractAutowireCapableBeanFactory.java:1298)
> > >         at
>
> > org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactor
> > y.populateBean
> > > (AbstractAutowireCapableBeanFactory.java:1060)
> > >         at
>
> > org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactor
> > y.doCreateBean
> > > (AbstractAutowireCapableBeanFactory.java:510)
> > >         at
>
> > org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactor
> > y.createBean
> > > (AbstractAutowireCapableBeanFactory.java:449)
> > >         at org.springframework.beans.factory.support.AbstractBeanFactory
> > > $1.getObject(AbstractBeanFactory.java:289)
> > >         at
>
> > org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getS
> > ingleton
> > > (DefaultSingletonBeanRegistry.java:222)
> > >         at
> > > org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean
> > > (AbstractBeanFactory.java:286)
> > >         at
> > > org.springframework.beans.factory.support.AbstractBeanFactory.getBean
> > > (AbstractBeanFactory.java:188)
> > >         at
>
> > org.springframework.beans.factory.support.DefaultListableBeanFactory.preIns
> > tantiateSingletons
> > > (DefaultListableBeanFactory.java:528)
> > >         at
>
> > org.springframework.context.support.AbstractApplicationContext.finishBeanFa
> > ctoryInitialization
> > > (AbstractApplicationContext.java:716)
> > >         at
> > > org.springframework.context.support.AbstractApplicationContext.refresh
> > > (AbstractApplicationContext.java:383)
> > >         at
> > > org.springframework.web.context.ContextLoader.createWebApplicationContext
> > > (ContextLoader.java:270)
> > >         at
> > > org.springframework.web.context.ContextLoader.initWebApplicationContext
> > > (ContextLoader.java:197)
> > >         at
> > > org.springframework.web.context.ContextLoaderListener.contextInitialized
> > > (ContextLoaderListener.java:47)
> > >         at org.mortbay.jetty.handler.ContextHandler.startContext
> > > (ContextHandler.java:530)
> > >         at
> > org.mortbay.jetty.servlet.Context.startContext(Context.java:135)
> > >         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.serviceReques
> > t
> > > (JettyServletEngineAdapter.java:127)
> > >         at com.google.apphosting.runtime.JavaRuntime.handleRequest
> > > (JavaRuntime.java:235)
> > >         at com.google.apphosting.base.RuntimePb$EvaluationRuntime
> > > $6.handleBlockingRequest(RuntimePb.java:4823)
> > >         at com.google.apphosting.base.RuntimePb$EvaluationRuntime
> > > $6.handleBlockingRequest(RuntimePb.java:4821)
> > >         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:820)
> > >         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:775)
> > >         at com.google.net.rpc.impl.Server.processRequest(Server.java:348)
> > >         at com.google.net.rpc.impl.ServerConnection.messageReceived
> > > (ServerConnection.java:436)
> > >         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:374)
> > >         at java.lang.Thread.run(Unknown Source)
> > > Caused by: org.springframework.beans.factory.BeanCreationException:
> > > Error creating bean with name 'entityManagerFactory': Post-processing
> > > of the FactoryBean's object failed; nested exception is
> > > java.lang.StackOverflowError
> > >         at
>
> > org.springframework.beans.factory.support.FactoryBeanRegistrySupport.doGetO
> > bjectFromFactoryBean
> > > (FactoryBeanRegistrySupport.java:166)
> > >         at
>
> > org.springframework.beans.factory.support.FactoryBeanRegistrySupport.getObj
> > ectFromFactoryBean
> > > (FactoryBeanRegistrySupport.java:102)
> > >         at
>
> > org.springframework.beans.factory.support.AbstractBeanFactory.getObjectForB
> > eanInstance
> > > (AbstractBeanFactory.java:1376)
> > >         at
> > > org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean
> > > (AbstractBeanFactory.java:243)
> > >         at
> > > org.springframework.beans.factory.support.AbstractBeanFactory.getBean
> > > (AbstractBeanFactory.java:188)
> > >         at
>
> > org.springframework.beans.factory.support.BeanDefinitionValueResolver.resol
> > veReference
> > > (BeanDefinitionValueResolver.java:309)
> > >         ... 44 more
> > > Caused by: java.lang.StackOverflowError
> > >         at java.lang.String.endsWith(Unknown Source)
> > >         at sun.security.provider.PolicyFile.canonPath(Unknown Source)
> > >         at java.io.FilePermission$1.run(Unknown Source)
> > >         at java.io.FilePermission$1.run(Unknown Source)
> > >         at java.security.AccessController.doPrivileged(Native Method)
> > >         at java.io.FilePermission.init(Unknown Source)
> > >         at java.io.FilePermission.<init>(Unknown Source)
> > >         at
> > sun.net.www.protocol.file.FileURLConnection.getPermission(Unknown
> > > Source)
> > >         at sun.misc.URLClassPath.check(Unknown Source)
> > >         at sun.misc.URLClassPath$FileLoader.getResource(Unknown Source)
> > >         at sun.misc.URLClassPath$FileLoader.findResource(Unknown Source)
> > >         at sun.misc.URLClassPath.findResource(Unknown Source)
> > >         at java.net.URLClassLoader$2.run(Unknown Source)
> > >         at java.security.AccessController.doPrivileged(Native Method)
> > >         at java.net.URLClassLoader.findResource(Unknown Source)
> > >         at
> > com.google.apphosting.runtime.security.UserClassLoader.findResource
> > > (UserClassLoader.java:631)
> > >         at java.lang.ClassLoader.getResource(Unknown Source)
> > >         at com.google.apphosting.runtime.security.UserClassLoader$4.run
> > > (UserClassLoader.java:665)
> > >         at com.google.apphosting.runtime.security.UserClassLoader$4.run
> > > (UserClassLoader.java:659)
> > >         at java.security.AccessController.doPrivileged(Native Method)
> > >         at
> > com.google.apphosting.runtime.security.UserClassLoader.findResource
> > > (UserClassLoader.java:659)
> > >         at java.lang.ClassLoader.getResource(Unknown Source)
> > >         at com.google.apphosting.runtime.security.UserClassLoader$4.run
> > > (UserClassLoader.java:665)
> > >         at com.google.apphosting.runtime.security.UserClassLoader$4.run
> > > (UserClassLoader.java:659)
> > >         at java.security.AccessController.doPrivileged(Native Method)
> > >         at
> > com.google.apphosting.runtime.security.UserClassLoader.findResource
> > > (UserClassLoader.java:659)
> > >         at java.lang.ClassLoader.getResource(Unknown Source)
> > >         at com.google.apphosting.runtime.security.UserClassLoader$4.run
> > > (UserClassLoader.java:665)
> > >         at com.google.apphosting.runtime.security.UserClassLoader$4.run
> > > (UserClassLoader.java:659)
> > >         at java.security.AccessController.doPrivileged(Native Method)
> > >         at
> > com.google.apphosting.runtime.security.UserClassLoader.findResour
--~--~---------~--~----~------------~-------~--~----~
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 google-appengine-java@googlegroups.com
To unsubscribe from this group, send email to 
google-appengine-java+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/google-appengine-java?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to