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. > >
