The headComponent reference probably really is null. I don't think the component hierarchy is doing what you think it is in this instance - things get a little trickier when you are working through a @RenderBody setup and such...
I'd make this be a single shared property that you have defined elsewhere (like on the page? ) so that you don't have to try navigating through the component hierarchy via ognl. That's usually a warning sign for the majority of cases anyways that the value should be a parameter/shared property anyways. (besides some cases where it's just easier and you know, who cares if it works right? ;) ) On 7/3/07, Ken nashua <[EMAIL PROTECTED]> wrote:
Thanks... I just have a little question... I declared an id to a widget and trying to reference a property of that widget further below in html. Here is the code.. <html jwcid="[EMAIL PROTECTED]" title="ognl:page.components.headComponent.title" stylesheet="ognl:assets.stylesheet"> <body jwcid="@Body"> <div id="page"> <div id="header" class="clearfix"> <a href="#" jwcid="@PageLink" page="Home"> <h1 style="padding: 5px;"> <span class="right" jwcid="@Insert" value="ognl:page.components.headComponent.title"/> </h1> </a> </div> The widget in question is headComponent... Now the widget CustomHead has no problem referencing ognl:page.components.headComponent.title but thereafter down below in html... it fails nosuchproperty <span class="right" jwcid="@Insert" value="ognl:page.components.headComponent.title"/> How am I suppose to refer to this value? i tried @Persist annotation in the java... I am at a loss for how to get this thing into the session/page and refer to it. Can someone help and let me know whats oging on... I believe this is basic tapestry 101. Sorry. Thanks in advance. Best regards Ken in nashua org.apache.tapestry.BindingException Unable to read OGNL expression '<parsed OGNL expression>' of [EMAIL PROTECTED]/$Border]: source is null for getProperty(null, "title") binding: ExpressionBinding[Home/$Border page.components.headComponent.title] location: context:/WEB-INF/Border.html, line 8 3 <body jwcid="@Body"> 4 <div id="page"> 5 <div id="header" class="clearfix"> 6 <a href="#" jwcid="@PageLink" page="Home"> 7 <h1 style="padding: 5px;"> 8 <span class="right" jwcid="@Insert" value="ognl:page.components.headComponent.title"/> 9 </h1> 10 </a> 11 </div> 12 13 <!-- <span jwcid="@If" condition="ognl: page.components.headComponent"> --> org.apache.hivemind.ApplicationRuntimeException Unable to read OGNL expression '<parsed OGNL expression>' of [EMAIL PROTECTED]/$Border]: source is null for getProperty(null, "title") component: [EMAIL PROTECTED]/$Border] location: context:/WEB-INF/Home.html, line 1 1 <span jwcid="@Border"> 2 <h1><span key="org.trails.welcome">Welcome to Trails</span></h1> 3 <ul class="glassList"> 4 <div class="glassList" jwcid="@Foreach" source="ognl:allDescriptors" value="ognl:descriptor"> 5 <li> 6 <a href="#" jwcid="@trails:ListAllLink" typeName="ognl:descriptor.type.name"/> ognl.OgnlException source is null for getProperty(null, "title") Stack Trace: * ognl.OgnlRuntime.getProperty(OgnlRuntime.java:1611) * ognl.ASTProperty.getValueBody(ASTProperty.java:96) * ognl.SimpleNode.evaluateGetValueBody(SimpleNode.java:170) * ognl.SimpleNode.getValue(SimpleNode.java:210) * ognl.ASTChain.getValueBody(ASTChain.java:109) * ognl.SimpleNode.evaluateGetValueBody(SimpleNode.java:170) * ognl.SimpleNode.getValue(SimpleNode.java:210) * ognl.Ognl.getValue(Ognl.java:333) * ognl.Ognl.getValue(Ognl.java:310) * org.apache.tapestry.services.impl.ExpressionEvaluatorImpl.readCompiled( ExpressionEvaluatorImpl.java:91) * $ExpressionEvaluator_1138c8dc9ee.readCompiled($ExpressionEvaluator_1138c8dc9ee.java) * org.apache.tapestry.binding.ExpressionBinding.resolveExpression( ExpressionBinding.java:110) * org.apache.tapestry.binding.ExpressionBinding.getObject( ExpressionBinding.java:103) * org.apache.tapestry.binding.AbstractBinding.getObject(AbstractBinding.java :87) * $Insert_6.getValue($Insert_6.java) * org.apache.tapestry.components.Insert.renderComponent(Insert.java :42) * org.apache.tapestry.AbstractComponent.render(AbstractComponent.java:617) * org.apache.tapestry.AbstractComponent.renderBody(AbstractComponent.java :434) * org.apache.tapestry.link.DefaultLinkRenderer.renderLink( DefaultLinkRenderer.java:81) * org.apache.tapestry.link.AbstractLinkComponent.renderComponent( AbstractLinkComponent.java:95) * org.apache.tapestry.AbstractComponent.render(AbstractComponent.java:617) * org.apache.tapestry.AbstractComponent.renderBody(AbstractComponent.java :434) * org.apache.tapestry.html.Body.renderComponent(Body.java:129) * org.apache.tapestry.AbstractComponent.render(AbstractComponent.java:617) * org.apache.tapestry.AbstractComponent.renderBody(AbstractComponent.java :434) * org.trails.demo.components.CustomHead.renderComponent(CustomHead.java:219) * org.apache.tapestry.AbstractComponent.render(AbstractComponent.java:617) * org.apache.tapestry.BaseComponent.renderComponent(BaseComponent.java:92) * org.apache.tapestry.AbstractComponent.render(AbstractComponent.java:617) * org.apache.tapestry.BaseComponent.renderComponent(BaseComponent.java:92) * org.apache.tapestry.AbstractComponent.render(AbstractComponent.java:617) * org.apache.tapestry.AbstractPage.renderPage(AbstractPage.java:275) * org.apache.tapestry.engine.RequestCycle.renderPage(RequestCycle.java:366) * org.apache.tapestry.services.impl.ResponseRendererImpl.renderResponse( ResponseRendererImpl.java:71) * $ResponseRenderer_1138c8dc8ec.renderResponse($ResponseRenderer_1138c8dc8ec.java) * $ResponseRenderer_1138c8dc8eb.renderResponse($ResponseRenderer_1138c8dc8eb.java) * org.apache.tapestry.engine.HomeService.service(HomeService.java:65) * $IEngineService_1138c8dc957.service($IEngineService_1138c8dc957.java) * org.apache.tapestry.services.impl.EngineServiceInnerProxy.service( EngineServiceInnerProxy.java:77) * org.apache.tapestry.services.impl.EngineServiceOuterProxy.service( EngineServiceOuterProxy.java:66) * org.apache.tapestry.engine.AbstractEngine.service(AbstractEngine.java:248) * org.apache.tapestry.services.impl.InvokeEngineTerminator.service( InvokeEngineTerminator.java:60) * $WebRequestServicer_1138c8dc935.service($WebRequestServicer_1138c8dc935.java) * org.trails.i18n.LocaleFilter.service(LocaleFilter.java:26) * $WebRequestServicerFilter_1138c8dc933.service($WebRequestServicerFilter_1138c8dc933.java) * $WebRequestServicer_1138c8dc937.service($WebRequestServicer_1138c8dc937.java) * $WebRequestServicer_1138c8dc92f.service($WebRequestServicer_1138c8dc92f.java) * org.apache.tapestry.services.impl.WebRequestServicerPipelineBridge.service (WebRequestServicerPipelineBridge.java:56) * $ServletRequestServicer_1138c8dc915.service($ServletRequestServicer_1138c8dc915.java) * org.apache.tapestry.request.DecodedRequestInjector.service( DecodedRequestInjector.java:55) * $ServletRequestServicerFilter_1138c8dc911.service($ServletRequestServicerFilter_1138c8dc911.java) * $ServletRequestServicer_1138c8dc917.service($ServletRequestServicer_1138c8dc917.java) * org.apache.tapestry.multipart.MultipartDecoderFilter.service( MultipartDecoderFilter.java:52) * $ServletRequestServicerFilter_1138c8dc90f.service($ServletRequestServicerFilter_1138c8dc90f.java) * $ServletRequestServicer_1138c8dc917.service($ServletRequestServicer_1138c8dc917.java) * org.apache.tapestry.services.impl.SetupRequestEncoding.service( SetupRequestEncoding.java:53) * $ServletRequestServicerFilter_1138c8dc913.service($ServletRequestServicerFilter_1138c8dc913.java) * $ServletRequestServicer_1138c8dc917.service($ServletRequestServicer_1138c8dc917.java) * $ServletRequestServicer_1138c8dc909.service($ServletRequestServicer_1138c8dc909.java) * org.apache.tapestry.ApplicationServlet.doService(ApplicationServlet.java :123) * org.apache.tapestry.ApplicationServlet.doGet(ApplicationServlet.java:79) * javax.servlet.http.HttpServlet.service(HttpServlet.java:740) * javax.servlet.http.HttpServlet.service(HttpServlet.java:853) * org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java :491) * org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter( ServletHandler.java:1074) * org.springframework.web.filter.OncePerRequestFilter.doFilter( OncePerRequestFilter.java:72) * org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter( ServletHandler.java:1065) * org.springframework.orm.hibernate3.support.OpenSessionInViewFilter.doFilterInternal (OpenSessionInViewFilter.java:173) * org.springframework.web.filter.OncePerRequestFilter.doFilter( OncePerRequestFilter.java:77) * org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter( ServletHandler.java:1065) * org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter( FilterChainProxy.java:264) * org.acegisecurity.intercept.web.FilterSecurityInterceptor.invoke( FilterSecurityInterceptor.java:107) * org.acegisecurity.intercept.web.FilterSecurityInterceptor.doFilter( FilterSecurityInterceptor.java:72) * org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter( FilterChainProxy.java:274) * org.acegisecurity.ui.ExceptionTranslationFilter.doFilter( ExceptionTranslationFilter.java:110) * org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter( FilterChainProxy.java:274) * org.acegisecurity.providers.anonymous.AnonymousProcessingFilter.doFilter( AnonymousProcessingFilter.java:125) * org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter( FilterChainProxy.java:274) * org.acegisecurity.wrapper.SecurityContextHolderAwareRequestFilter.doFilter (SecurityContextHolderAwareRequestFilter.java:81) * org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter( FilterChainProxy.java:274) * org.acegisecurity.ui.AbstractProcessingFilter.doFilter( AbstractProcessingFilter.java:217) * org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter( FilterChainProxy.java:274) * org.acegisecurity.context.HttpSessionContextIntegrationFilter.doFilter( HttpSessionContextIntegrationFilter.java:229) * org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter( FilterChainProxy.java:274) * org.acegisecurity.util.FilterChainProxy.doFilter(FilterChainProxy.java :148) * org.acegisecurity.util.FilterToBeanProxy.doFilter(FilterToBeanProxy.java :98) * org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter( ServletHandler.java:1065) * org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:365) * org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java :185) * org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:181) * org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:689) * org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java :391) * org.mortbay.jetty.handler.ContextHandlerCollection.handle( ContextHandlerCollection.java:146) * org.mortbay.jetty.handler.HandlerCollection.handle(HandlerCollection.java :114) * org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:139) * org.mortbay.jetty.Server.handle(Server.java:285) * org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:457) * org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete( HttpConnection.java:751) * org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:500) * org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:209) * org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:357) * org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java :329) * org.mortbay.thread.BoundedThreadPool$PoolThread.run(BoundedThreadPool.java :4 _________________________________________________________________ Local listings, incredible imagery, and driving directions - all in one place! http://maps.live.com/?wip=69&FORM=MGAC01 --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
-- Jesse Kuhnert Tapestry/Dojo team member/developer Open source based consulting work centered around dojo/tapestry/tacos/hivemind. http://blog.opencomponentry.com