Thanks.

2008/8/1 Andreas Andreou (JIRA) <[email protected]>

>
>     [
> https://issues.apache.org/jira/browse/TAPESTRY-2462?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel]
>
> Andreas Andreou resolved TAPESTRY-2462.
> ---------------------------------------
>
>    Resolution: Won't Fix
>      Assignee: Andreas Andreou
>
> Hi - since T4.1.5 comes with ognl 2.7.2, you can try upgrading the
> dependency to 2.7.3 to see if that can handle the expression...
>
> If that's no the case, then http://jira.opensymphony.com/browse/OGNL is
> the proper place to report this
>
> > parameter evaluation during compilation
> > ---------------------------------------
> >
> >                 Key: TAPESTRY-2462
> >                 URL: https://issues.apache.org/jira/browse/TAPESTRY-2462
> >             Project: Tapestry
> >          Issue Type: Bug
> >          Components: tapestry-core
> >    Affects Versions: 4.1.5
> >            Reporter: Pieter Schoenmakers
> >            Assignee: Andreas Andreou
> >            Priority: Minor
> >
> > When the HiveMindExpressionCompiler.generateGetter does its thing to:
> >         <binding name="condition" value="prop == null || !(prop.length ()
> == 0)"/>
> > a NullPointerException is shown in the console output, see below.
>  Removing the ! from the expression solves the problem.  I expect the
> problem to be in ognl.BooleanExpression.toGetSourceString(), but I do not
> have enough Tapestry experience to fix it myself.
> > The problem is not that there is console output, however undesirable that
> is. The problem is that code is evaluated during compilation.
> > java.lang.NullPointerException: target is null for method length
> >         at ognl.OgnlRuntime.callMethod(OgnlRuntime.java:1327)
> >         at ognl.ASTMethod.getValueBody(ASTMethod.java:90)
> >         at ognl.SimpleNode.evaluateGetValueBody(SimpleNode.java:212)
> >         at ognl.SimpleNode.getValue(SimpleNode.java:258)
> >         at ognl.ASTChain.getValueBody(ASTChain.java:138)
> >         at ognl.SimpleNode.evaluateGetValueBody(SimpleNode.java:212)
> >         at ognl.SimpleNode.getValue(SimpleNode.java:258)
> >         at ognl.ASTEq.getValueBody(ASTEq.java:50)
> >         at ognl.SimpleNode.evaluateGetValueBody(SimpleNode.java:212)
> >         at ognl.SimpleNode.getValue(SimpleNode.java:258)
> >         at ognl.ASTNot.getValueBody(ASTNot.java:49)
> >         at
> ognl.BooleanExpression.toGetSourceString(BooleanExpression.java:41)
> >         at ognl.ASTNot.toGetSourceString(ASTNot.java:61)
> >         at ognl.OgnlRuntime.getChildSource(OgnlRuntime.java:2711)
> >         at ognl.OgnlRuntime.getChildSource(OgnlRuntime.java:2670)
> >         at ognl.ASTOr.toGetSourceString(ASTOr.java:104)
> >         at
> org.apache.tapestry.services.impl.HiveMindExpressionCompiler.generateGetter(HiveMindExpressionCompiler.java:309)
> >         at
> org.apache.tapestry.services.impl.HiveMindExpressionCompiler.compileExpression(HiveMindExpressionCompiler.java:152)
> >         at ognl.OgnlRuntime.compileExpression(OgnlRuntime.java:414)
> >         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_11a9687fd44.getCompiledExpression($ExpressionCache_11a9687fd44.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 $Conditional_244.getCondition($Conditional_244.java)
> >         at
> org.apache.tapestry.components.Conditional.evaluateCondition(Conditional.java:60)
> >         at
> org.apache.tapestry.components.Conditional.renderComponent(Conditional.java:39)
> >         at
> org.apache.tapestry.AbstractComponent.render(AbstractComponent.java:724)
> >         at
> org.apache.tapestry.services.impl.DefaultResponseBuilder.render(DefaultResponseBuilder.java:187)
> >         at
> org.apache.tapestry.AbstractComponent.renderBody(AbstractComponent.java:538)
> >         at org.apache.tapestry.html.Shell.renderComponent(Shell.java:125)
> >         at
> org.apache.tapestry.AbstractComponent.render(AbstractComponent.java:724)
> >         at
> org.apache.tapestry.services.impl.DefaultResponseBuilder.render(DefaultResponseBuilder.java:187)
> >         at
> org.apache.tapestry.BaseComponent.renderComponent(BaseComponent.java:107)
> >         at
> org.apache.tapestry.AbstractComponent.render(AbstractComponent.java:724)
> >         at
> org.apache.tapestry.services.impl.DefaultResponseBuilder.render(DefaultResponseBuilder.java:185)
> >         at
> org.apache.tapestry.AbstractPage.renderPage(AbstractPage.java:249)
> >         at
> org.apache.tapestry.engine.RequestCycle.renderPage(RequestCycle.java:400)
> >         at
> org.apache.tapestry.services.impl.DefaultResponseBuilder.renderResponse(DefaultResponseBuilder.java:159)
> >         at
> org.apache.tapestry.services.impl.ResponseRendererImpl.renderResponse(ResponseRendererImpl.java:33)
> >         at
> $ResponseRenderer_11a9687fc23.renderResponse($ResponseRenderer_11a9687fc23.java)
> >         at
> org.apache.tapestry.engine.PageService.service(PageService.java:68)
> >         at
> $IEngineService_11a9687fc90.service($IEngineService_11a9687fc90.java)
> >         at
> org.apache.tapestry.services.impl.EngineServiceOuterProxy.service(EngineServiceOuterProxy.java:72)
> >         at
> org.apache.tapestry.engine.AbstractEngine.service(AbstractEngine.java:241)
> >         at nl.adp.bs.apollo.tapestry.Engine.service(Engine.java:27)
> >         at
> org.apache.tapestry.services.impl.InvokeEngineTerminator.service(InvokeEngineTerminator.java:54)
> >         at
> $WebRequestServicer_11a9687fc6d.service($WebRequestServicer_11a9687fc6d.java)
> >         at
> org.apache.tapestry.services.impl.DisableCachingFilter.service(DisableCachingFilter.java:54)
> >         at
> $WebRequestServicerFilter_11a9687fc6f.service($WebRequestServicerFilter_11a9687fc6f.java)
> >         at
> $WebRequestServicer_11a9687fc71.service($WebRequestServicer_11a9687fc71.java)
> >         at
> $WebRequestServicer_11a9687fc69.service($WebRequestServicer_11a9687fc69.java)
> >         at
> org.apache.tapestry.services.impl.WebRequestServicerPipelineBridge.service(WebRequestServicerPipelineBridge.java:61)
> >         at
> $ServletRequestServicer_11a9687fc4f.service($ServletRequestServicer_11a9687fc4f.java)
> >         at
> org.apache.tapestry.request.DecodedRequestInjector.service(DecodedRequestInjector.java:55)
> >         at
> $ServletRequestServicerFilter_11a9687fc4b.service($ServletRequestServicerFilter_11a9687fc4b.java)
> >         at
> $ServletRequestServicer_11a9687fc51.service($ServletRequestServicer_11a9687fc51.java)
> >         at
> org.apache.tapestry.multipart.MultipartDecoderFilter.service(MultipartDecoderFilter.java:52)
> >         at
> $ServletRequestServicerFilter_11a9687fc49.service($ServletRequestServicerFilter_11a9687fc49.java)
> >         at
> $ServletRequestServicer_11a9687fc51.service($ServletRequestServicer_11a9687fc51.java)
> >         at
> org.apache.tapestry.services.impl.SetupRequestEncoding.service(SetupRequestEncoding.java:53)
> >         at
> $ServletRequestServicerFilter_11a9687fc4d.service($ServletRequestServicerFilter_11a9687fc4d.java)
> >         at
> $ServletRequestServicer_11a9687fc51.service($ServletRequestServicer_11a9687fc51.java)
> >         at
> $ServletRequestServicer_11a9687fc43.service($ServletRequestServicer_11a9687fc43.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:689)
> >         at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
> >         at
> com.caucho.server.dispatch.ServletFilterChain.doFilter(ServletFilterChain.java:106)
> >         at nl.emma.logging.LogFilter.doFilter(LogFilter.java:46)
> >         at
> com.caucho.server.dispatch.FilterFilterChain.doFilter(FilterFilterChain.java:70)
> >         at
> com.caucho.server.security.SecurityFilterChain.doFilter(SecurityFilterChain.java:135)
> >         at
> com.caucho.server.cache.CacheFilterChain.doFilter(CacheFilterChain.java:209)
> >         at
> com.caucho.server.webapp.WebAppFilterChain.doFilter(WebAppFilterChain.java:173)
> >         at
> com.caucho.server.dispatch.ServletInvocation.service(ServletInvocation.java:229)
> >         at
> com.caucho.server.http.HttpRequest.handleRequest(HttpRequest.java:274)
> >         at
> com.caucho.server.port.TcpConnection.run(TcpConnection.java:514)
> >         at com.caucho.util.ThreadPool.runTasks(ThreadPool.java:520)
> >         at com.caucho.util.ThreadPool.run(ThreadPool.java:442)
> >         at java.lang.Thread.run(Thread.java:595)
>
> --
> This message is automatically generated by JIRA.
> -
> You can reply to this email to add a comment to the issue online.
>
>

Reply via email to