[ 
https://issues.apache.org/jira/browse/TAPESTRY-2055?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12570705#action_12570705
 ] 

Jesse Kuhnert commented on TAPESTRY-2055:
-----------------------------------------

Now that I think about it more your second error message about duplicated 
tapestry-annotation definitions sounds suspicious.   It should only see the 
other hivemodule.xml definition if it is on the same classpath - which means 
the classpath hasn't really been separated for both web apps.   I have a server 
running multiple tapestry war'ed apps with no shared libs and don't get the 
duplicated error message so am thinking that there are still some jars being 
shared somehow in your environment. 

> Problem when running 2+ tapestry web apps in same application server
> --------------------------------------------------------------------
>
>                 Key: TAPESTRY-2055
>                 URL: https://issues.apache.org/jira/browse/TAPESTRY-2055
>             Project: Tapestry
>          Issue Type: Bug
>    Affects Versions: 4.1.3
>         Environment: JBoss 4.2.x, Tapestry 4.1.3, MySQL5
>            Reporter: Eduardo Magdalena
>            Assignee: Jesse Kuhnert
>             Fix For: 4.1.6
>
>
> I have an enterprise Java Bean which feeds multiple tapestry apps. I can open 
> a session on two apps but when I open a second session on one of them and 
> enter on a page not previously loaded (in the first session) I get:
> On browser:
> java.lang.NullPointerException
>       $ExceptionDisplay_50.getClientId($ExceptionDisplay_50.java)
>       
> org.apache.tapestry.AbstractComponent.hashCode(AbstractComponent.java:917)
>       java.lang.Object.toString(Object.java:219)
>       
> org.apache.tapestry.AbstractComponent.toString(AbstractComponent.java:564)
>       
> org.apache.tapestry.util.exception.ExceptionAnalyzer.buildDescription(ExceptionAnalyzer.java:184)
>       
> org.apache.tapestry.util.exception.ExceptionAnalyzer.analyze(ExceptionAnalyzer.java:93)
>       
> org.apache.tapestry.util.exception.ExceptionAnalyzer.reportException(ExceptionAnalyzer.java:379)
>       org.apache.tapestry.ApplicationServlet.show(ApplicationServlet.java:158)
>       
> org.apache.tapestry.ApplicationServlet.doService(ApplicationServlet.java:132)
>       
> org.apache.tapestry.ApplicationServlet.doGet(ApplicationServlet.java:103)
>       javax.servlet.http.HttpServlet.service(HttpServlet.java:690)
>       javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
>       
> org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
> On JBoss Console I get a thousand of stack traces (sometimes infinite), being 
> the most relevant:
> First Stack Trace:
> 12:02:58,171 ERROR [HiveMindExpressionCompiler] Error generating OGNL getter 
> for expression @[EMAIL PROTECTED](sessionDescriptor.leve
> l, @[EMAIL PROTECTED]) with root [EMAIL PROTECTED] and body:
> { return  ($w) 
> (com.indra.localiza.Restriction#hasPermission((($GestorIcons_46)$2).getSessionDescriptor().getLevel(),
>  com.indra.localiza.Restriction.ICON));}
> org.apache.hivemind.ApplicationRuntimeException: Unable to add method 
> java.lang.Object get(ognl.OgnlContext, java.lang.Object) to class 
> $ASTStaticMethod_1178767
> 42ab: [source error] no such class: $GestorIcons_46
>         at 
> org.apache.tapestry.enhance.ClassFabImpl.addMethod(ClassFabImpl.java:278)
>         at 
> org.apache.tapestry.services.impl.HiveMindExpressionCompiler.compileExpression(HiveMindExpressionCompiler.java:176)
>         at ognl.OgnlRuntime.compileExpression(OgnlRuntime.java:523)
>         at ognl.Ognl.compileExpression(Ognl.java:141)
>         at 
> org.apache.tapestry.services.impl.ExpressionCacheImpl.parse(ExpressionCacheImpl.java:152)
>         at 
> org.apache.tapestry.services.impl.ExpressionCacheImpl.getCompiledExpression(ExpressionCacheImpl.java:115)
>         at 
> $ExpressionCache_11787674066.getCompiledExpression($ExpressionCache_11787674066.java)
>         at 
> org.apache.tapestry.binding.ExpressionBinding.resolveExpression(ExpressionBinding.java:134)
>         at 
> org.apache.tapestry.binding.ExpressionBinding.getObject(ExpressionBinding.java:125)
>         at 
> org.apache.tapestry.binding.AbstractBinding.getObject(AbstractBinding.java:84)
>         at 
> org.apache.tapestry.enhance.EnhanceUtils.toBoolean(EnhanceUtils.java:173)
>         at $IfBean_5.getCondition($IfBean_5.java)
>         at 
> org.apache.tapestry.components.IfBean.evaluateCondition(IfBean.java:128)
>         at 
> org.apache.tapestry.components.IfBean.renderComponent(IfBean.java:66)
>         at 
> org.apache.tapestry.AbstractComponent.render(AbstractComponent.java:725)
>         at 
> org.apache.tapestry.services.impl.DefaultResponseBuilder.render(DefaultResponseBuilder.java:179)
>         at 
> org.apache.tapestry.AbstractComponent.renderBody(AbstractComponent.java:539)
>         at org.apache.tapestry.html.Body.renderComponent(Body.java:38)
>         at 
> org.apache.tapestry.AbstractComponent.render(AbstractComponent.java:725)
>         at 
> org.apache.tapestry.services.impl.DefaultResponseBuilder.render(DefaultResponseBuilder.java:179)
>         at 
> org.apache.tapestry.BaseComponent.renderComponent(BaseComponent.java:107)
>         at 
> org.apache.tapestry.AbstractComponent.render(AbstractComponent.java:725)
>         at 
> org.apache.tapestry.services.impl.DefaultResponseBuilder.render(DefaultResponseBuilder.java:177)
>         at org.apache.tapestry.AbstractPage.renderPage(AbstractPage.java:249)
>         at 
> org.apache.tapestry.engine.RequestCycle.renderPage(RequestCycle.java:397)
>         at 
> org.apache.tapestry.services.impl.DefaultResponseBuilder.renderResponse(DefaultResponseBuilder.java:151)
>         at 
> org.apache.tapestry.services.impl.ResponseRendererImpl.renderResponse(ResponseRendererImpl.java:33)
>         at 
> $ResponseRenderer_11787673da3.renderResponse($ResponseRenderer_11787673da3.java)
>         at 
> org.apache.tapestry.engine.DirectService.service(DirectService.java:147)
>         at 
> $IEngineService_11787673fb6.service($IEngineService_11787673fb6.java)
>         at 
> org.apache.tapestry.services.impl.EngineServiceOuterProxy.service(EngineServiceOuterProxy.java:72)
>         at 
> org.apache.tapestry.engine.AbstractEngine.service(AbstractEngine.java:241)
>         at 
> org.apache.tapestry.services.impl.InvokeEngineTerminator.service(InvokeEngineTerminator.java:54)
>         at 
> $WebRequestServicer_11787673f8d.service($WebRequestServicer_11787673f8d.java)
>         at 
> $WebRequestServicer_11787673f89.service($WebRequestServicer_11787673f89.java)
>         at 
> org.apache.tapestry.services.impl.WebRequestServicerPipelineBridge.service(WebRequestServicerPipelineBridge.java:61)
>         at 
> $ServletRequestServicer_11787673f6f.service($ServletRequestServicer_11787673f6f.java)
>         at 
> org.apache.tapestry.request.DecodedRequestInjector.service(DecodedRequestInjector.java:55)
>         at 
> $ServletRequestServicerFilter_11787673f6b.service($ServletRequestServicerFilter_11787673f6b.java)
>         at 
> $ServletRequestServicer_11787673f71.service($ServletRequestServicer_11787673f71.java)
>         at 
> org.apache.tapestry.multipart.MultipartDecoderFilter.service(MultipartDecoderFilter.java:52)
>         at 
> $ServletRequestServicerFilter_11787673f69.service($ServletRequestServicerFilter_11787673f69.java)
>         at 
> $ServletRequestServicer_11787673f71.service($ServletRequestServicer_11787673f71.java)
>         at 
> org.apache.tapestry.services.impl.SetupRequestEncoding.service(SetupRequestEncoding.java:53)
>         at 
> $ServletRequestServicerFilter_11787673f6d.service($ServletRequestServicerFilter_11787673f6d.java)
>         at 
> $ServletRequestServicer_11787673f71.service($ServletRequestServicer_11787673f71.java)
>         at 
> $ServletRequestServicer_11787673dcf.service($ServletRequestServicer_11787673dcf.java)
>         at 
> org.apache.tapestry.ApplicationServlet.doService(ApplicationServlet.java:126)
>         at 
> org.apache.tapestry.ApplicationServlet.doGet(ApplicationServlet.java:103)
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:690)
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
>         at 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
> In the Middle: 
> (This one repeats several times)
> Caused by: javassist.CannotCompileException: [source error] no such class: 
> $Exception_47
>         at javassist.CtBehavior.setBody(CtBehavior.java:367)
>         at javassist.CtBehavior.setBody(CtBehavior.java:334)
>         at 
> org.apache.tapestry.enhance.ClassFabImpl.addMethod(ClassFabImpl.java:272)
>         ... 69 more
> 12:02:59,453 ERROR [HiveMindExpressionCompiler] Error generating OGNL getter 
> for expression exceptions with root [EMAIL PROTECTED]:Excepti
> on/$ExceptionDisplay] and body:
> { return (($ExceptionDisplay_50)$2).getExceptions();}
> org.apache.hivemind.ApplicationRuntimeException: Unable to add method 
> java.lang.Object get(ognl.OgnlContext, java.lang.Object) to class 
> $ASTProperty_117876742b3
> : [source error] no such class: $ExceptionDisplay_50
>         at 
> org.apache.tapestry.enhance.ClassFabImpl.addMethod(ClassFabImpl.java:278)
>         at 
> org.apache.tapestry.services.impl.HiveMindExpressionCompiler.compileExpression(HiveMindExpressionCompiler.java:176)
>         at ognl.OgnlRuntime.compileExpression(OgnlRuntime.java:523)
>         at ognl.Ognl.compileExpression(Ognl.java:141)
>         at 
> org.apache.tapestry.services.impl.ExpressionCacheImpl.parse(ExpressionCacheImpl.java:152)
>         at 
> org.apache.tapestry.services.impl.ExpressionCacheImpl.getCompiledExpression(ExpressionCacheImpl.java:115)
>         at 
> $ExpressionCache_11787674066.getCompiledExpression($ExpressionCache_11787674066.java)
>         at 
> org.apache.tapestry.binding.ExpressionBinding.resolveExpression(ExpressionBinding.java:134)
>         at 
> org.apache.tapestry.binding.ExpressionBinding.getObject(ExpressionBinding.java:125)
>         at 
> org.apache.tapestry.components.ForBean.evaluateSourceIterator(ForBean.java:693)
>         at org.apache.tapestry.components.ForBean.getData(ForBean.java:326)
> So it fails: Tapestry, Hivemind, OGNL, JavaAssist ...
> The only solution I got so far is have a JBoss instance for each WebApp...

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to