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]