You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tapestry.apache.org by "Kent Tong (JIRA)" <ta...@jakarta.apache.org> on 2005/07/16 14:53:09 UTC

[jira] Created: (TAPESTRY-408) OGNL can't access a static field in a class in the webapp context

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:@com.ttdev.shop.ProductDetails@CONTINUE_SHOPPING_BUTTON"/>
	</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: tapestry-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: tapestry-dev-help@jakarta.apache.org


Re: [jira] Created: (TAPESTRY-408) OGNL can't access a static field in a class in the webapp context

Posted by Henri Dupre <he...@gmail.com>.
Are there any workarounds for this bug?
I'm not sure how this would be linked to the bug 142... My static
access was working perfectly in Tapestry 3.

On 7/16/05, Kent Tong (JIRA) <ta...@jakarta.apache.org> wrote:
> 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:@com.ttdev.shop.ProductDetails@CONTINUE_SHOPPING_BUTTON"/>
>         </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: tapestry-dev-unsubscribe@jakarta.apache.org
> For additional commands, e-mail: tapestry-dev-help@jakarta.apache.org
> 
> 


-- 
Thanks,

Henri.

---------------------------------------------------------------------
To unsubscribe, e-mail: tapestry-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: tapestry-dev-help@jakarta.apache.org


[jira] Commented: (TAPESTRY-408) OGNL can't access a static field in a class in the webapp context

Posted by "Howard M. Lewis Ship (JIRA)" <ta...@jakarta.apache.org>.
    [ http://issues.apache.org/jira/browse/TAPESTRY-408?page=comments#action_12316464 ] 

Howard M. Lewis Ship commented on TAPESTRY-408:
-----------------------------------------------

This looks easy enough; the code is invoking Ognl.isConstant() without providing an context Map (from which the OGNL class resolver is determined).  Using the default class resolver is insufficient; it should pass in a map with the same class resolver used when reading/updating properties (which is based on the Thread's contextClassLoader).

> 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
>     Assignee: Howard M. Lewis Ship

>
> 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:@com.ttdev.shop.ProductDetails@CONTINUE_SHOPPING_BUTTON"/>
> 	</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: tapestry-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: tapestry-dev-help@jakarta.apache.org


[jira] Assigned: (TAPESTRY-408) OGNL can't access a static field in a class in the webapp context

Posted by "Howard M. Lewis Ship (JIRA)" <ta...@jakarta.apache.org>.
     [ http://issues.apache.org/jira/browse/TAPESTRY-408?page=all ]

Howard M. Lewis Ship reassigned TAPESTRY-408:
---------------------------------------------

    Assign To: Howard M. Lewis Ship

> 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
>     Assignee: Howard M. Lewis Ship

>
> 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:@com.ttdev.shop.ProductDetails@CONTINUE_SHOPPING_BUTTON"/>
> 	</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: tapestry-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: tapestry-dev-help@jakarta.apache.org


[jira] Closed: (TAPESTRY-408) OGNL can't access a static field in a class in the webapp context

Posted by "Howard M. Lewis Ship (JIRA)" <ta...@jakarta.apache.org>.
     [ http://issues.apache.org/jira/browse/TAPESTRY-408?page=all ]
     
Howard M. Lewis Ship closed TAPESTRY-408:
-----------------------------------------

    Fix Version: 4.0
     Resolution: Fixed

> 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
>     Assignee: Howard M. Lewis Ship
>      Fix For: 4.0

>
> 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:@com.ttdev.shop.ProductDetails@CONTINUE_SHOPPING_BUTTON"/>
> 	</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: tapestry-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: tapestry-dev-help@jakarta.apache.org


[jira] Commented: (TAPESTRY-408) OGNL can't access a static field in a class in the webapp context

Posted by "Henri Dupre (JIRA)" <ta...@jakarta.apache.org>.
    [ http://issues.apache.org/jira/browse/TAPESTRY-408?page=comments#action_12316403 ] 

Henri Dupre commented on TAPESTRY-408:
--------------------------------------

This is a major issue.

> 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:@com.ttdev.shop.ProductDetails@CONTINUE_SHOPPING_BUTTON"/>
> 	</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: tapestry-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: tapestry-dev-help@jakarta.apache.org