OGNL can't access a static field in a class in the webapp context
-----------------------------------------------------------------

         Key: TAPESTRY-408
         URL: http://issues.apache.org/jira/browse/TAPESTRY-408
     Project: Tapestry
        Type: Bug
  Components: Framework  
    Versions: 4.0    
 Environment: Windows XP
    Reporter: Kent Tong


I have a class com.ttdev.shop.ProductDetails in my webapp's context and all the 
tapestry and related jar files (including ognl.jar) in Tomcat's share lib 
folder. In this setup, OGNL fails when evaluating the following expression:

        <component id="print" type="Insert">
                <binding name="value" value="ognl:@[EMAIL PROTECTED]"/>
        </component>

This problem is most likely related to the bug tapestry-142. Below is the stack 
trace:

# ognl.ASTStaticField.isNodeConstant(ASTStaticField.java:80)
# ognl.SimpleNode.isConstant(SimpleNode.java:270)
# ognl.Ognl.isConstant(Ognl.java:536)
# ognl.Ognl.isConstant(Ognl.java:546)
# 
org.apache.tapestry.services.impl.ExpressionEvaluatorImpl.isConstant(ExpressionEvaluatorImpl.java:130)
# 
$ExpressionEvaluator_1051f9293d2.isConstant($ExpressionEvaluator_1051f9293d2.java)
# 
org.apache.tapestry.binding.ExpressionBinding.initialize(ExpressionBinding.java:145)
# 
org.apache.tapestry.binding.ExpressionBinding.getObject(ExpressionBinding.java:101)
# org.apache.tapestry.binding.AbstractBinding.getObject(AbstractBinding.java:87)
# $Insert_70.getValue($Insert_70.java)
# org.apache.tapestry.components.Insert.renderComponent(Insert.java:42)
# org.apache.tapestry.AbstractComponent.render(AbstractComponent.java:612)
# org.apache.tapestry.BaseComponent.renderComponent(BaseComponent.java:92)
# org.apache.tapestry.AbstractComponent.render(AbstractComponent.java:612)
# org.apache.tapestry.AbstractPage.renderPage(AbstractPage.java:274)
# org.apache.tapestry.engine.RequestCycle.renderPage(RequestCycle.java:355)
# 
org.apache.tapestry.services.impl.ResponseRendererImpl.renderResponse(ResponseRendererImpl.java:71)
# 
$ResponseRenderer_1051f9292ef.renderResponse($ResponseRenderer_1051f9292ef.java)
# org.apache.tapestry.engine.HomeService.service(HomeService.java:65)
# $IEngineService_1051f929354.service($IEngineService_1051f929354.java)
# 
org.apache.tapestry.services.impl.EngineServiceOuterProxy.service(EngineServiceOuterProxy.java:65)
# org.apache.tapestry.engine.AbstractEngine.service(AbstractEngine.java:241)
# 
org.apache.tapestry.services.impl.InvokeEngineTerminator.service(InvokeEngineTerminator.java:60)
# $WebRequestServicer_1051f929335.service($WebRequestServicer_1051f929335.java)
# 
org.apache.tapestry.services.impl.DisableCachingFilter.service(DisableCachingFilter.java:48)
# 
$WebRequestServicerFilter_1051f929337.service($WebRequestServicerFilter_1051f929337.java)
# $WebRequestServicer_1051f929339.service($WebRequestServicer_1051f929339.java)
# $WebRequestServicer_1051f929331.service($WebRequestServicer_1051f929331.java)
# 
org.apache.tapestry.services.impl.WebRequestServicerPipelineBridge.service(WebRequestServicerPipelineBridge.java:56)
# 
$ServletRequestServicer_1051f929315.service($ServletRequestServicer_1051f929315.java)
# 
org.apache.tapestry.request.DecodedRequestInjector.service(DecodedRequestInjector.java:55)
# 
$ServletRequestServicerFilter_1051f929311.service($ServletRequestServicerFilter_1051f929311.java)
# 
$ServletRequestServicer_1051f929317.service($ServletRequestServicer_1051f929317.java)
# 
org.apache.tapestry.multipart.MultipartDecoderFilter.service(MultipartDecoderFilter.java:52)
# 
$ServletRequestServicerFilter_1051f92930f.service($ServletRequestServicerFilter_1051f92930f.java)
# 
$ServletRequestServicer_1051f929317.service($ServletRequestServicer_1051f929317.java)
# 
org.apache.tapestry.services.impl.SetupRequestEncoding.service(SetupRequestEncoding.java:53)
# 
$ServletRequestServicerFilter_1051f929313.service($ServletRequestServicerFilter_1051f929313.java)
# 
$ServletRequestServicer_1051f929317.service($ServletRequestServicer_1051f929317.java)
# 
$ServletRequestServicer_1051f929309.service($ServletRequestServicer_1051f929309.java)
# org.apache.tapestry.ApplicationServlet.doService(ApplicationServlet.java:145)
# org.apache.tapestry.ApplicationServlet.doGet(ApplicationServlet.java:101)
# javax.servlet.http.HttpServlet.service(HttpServlet.java:689)
# javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
# 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
# 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
# 
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:214)
# 
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
# org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
# org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
# 
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
# org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
# org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:825)
# 
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:738)
# 
org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:526)
# 
org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)
# 
org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
# java.lang.Thread.run(Thread.java:595)

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira


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

Reply via email to