You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@tapestry.apache.org by Eric Everman <ev...@precedadesign.com> on 2003/05/16 19:50:48 UTC
RE: Multiple Page Views (solution)
OK, figured out the problem, I just replaced the first line of the template
below with:
<span jwcid="@RenderBlock" block="ognl:getComponent(viewOption)" />
Thanks for the help,
Eric Everman
At 5/16/2003, you wrote:
>David-
>
>Thanks, this was exactly what I was looking for. I can't quite seem to
>get it to work, however. I keep getting the rather unexpected error:
>
>org.apache.tapestry.BindingException:
> Parameter block (NormalView) is not type
> org.apache.tapestry.components.Block.
>
>(trace below)
>
>========Here is my template=========
><span jwcid="@RenderBlock" block="ognl:viewOption" />
>
><span jwcid="NormalView@Block">
><span jwcid="@HTMLNormalView"
> headTitle="ognl:page.headTitle"
> bodyTitle="ognl:page.bodyTitle"
> caption="ognl:page.caption"
> >
> <span jwcid="@RenderBody"/>
></span>
></span>
>
><span jwcid="PrintView@Block">
><span jwcid="@HTMLPrintView"
> headTitle="ognl:page.headTitle"
> bodyTitle="ognl:page.bodyTitle"
> caption="ognl:page.caption"
> >
> <span jwcid="@RenderBody"/>
></span>
></span>
>===============================
>
>The property viewOption returns "NormalView" - any ideas what I could be
>doing wrong here? My guess is that RenderBlock is unable to convert the
>string "NormalView" to a Block... This is with a5.
>
>Thanks,
>
>Eric Everman
>
>
>====Trace====
>org.apache.tapestry.binding.AbstractBinding.getObject(AbstractBinding.java:267)
>org.apache.tapestry.param.AbstractParameterConnector.getBindingValue(AbstractParameterConnector.java:155)
>org.apache.tapestry.param.ObjectParameterConnector.setParameter(ObjectParameterConnector.java:94)
>org.apache.tapestry.param.ParameterManager.setParameters(ParameterManager.java:146)
>org.apache.tapestry.AbstractComponent.prepareForRender(AbstractComponent.java:890)
>org.apache.tapestry.AbstractComponent.render(AbstractComponent.java:856)
>org.apache.tapestry.BaseComponent.renderComponent(BaseComponent.java:158)
>org.apache.tapestry.AbstractComponent.render(AbstractComponent.java:858)
>org.apache.tapestry.BaseComponent.renderComponent(BaseComponent.java:158)
>org.apache.tapestry.AbstractComponent.render(AbstractComponent.java:858)
>org.apache.tapestry.AbstractPage.renderPage(AbstractPage.java:329)
>org.apache.tapestry.engine.RequestCycle.renderPage(RequestCycle.java:411)
>org.apache.tapestry.engine.AbstractEngine.renderResponse(AbstractEngine.java:740)
>org.apache.tapestry.engine.HomeService.service(HomeService.java:109)
>org.apache.tapestry.engine.AbstractEngine.service(AbstractEngine.java:878)
>org.apache.tapestry.ApplicationServlet.doService(ApplicationServlet.java:238)
>org.apache.tapestry.ApplicationServlet.doGet(ApplicationServlet.java:199)
>javax.servlet.http.HttpServlet.service(HttpServlet.java:740)
>javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
>org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:247)
>org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:193)
>org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:256)
>org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
>org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
> org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
>org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
>org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
>org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
> org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
>org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2415)
>org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:180)
>org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
>org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.java:171)
>org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)
>org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:172)
>org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)
>org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
> org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
>org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:174)
>org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
>org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
> org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
>org.apache.coyote.tomcat4.CoyoteAdapter.service(CoyoteAdapter.java:223)
>org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:594)
>org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:392)
>org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:565)
>org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:619)
>java.lang.Thread.run(Thread.java:536)
>
>
>At 5/15/2003, you wrote:
>>Yes, one approach is to use Block and RenderBlock components.
>>The multiple views are implemented as custom components (subclass of
>>BaseComponent)
>>
>>For instance:
>>
>><span jwcid="@RenderBlock" block="ognl:block4View"/>
>>
>><span jwcid="blockOne@Block">
>><span jwcid="TemplateOne"/>
>></span>
>>
>><span jwcid="blockTwo@Block">
>><span jwcid="TemplateTwo"/>
>></span>
>>
>><span jwcid="blockThree@Block">
>><span jwcid="TemplateThree"/>
>></span>
>>
>>BTW, RenderBlock and Block are powerful components; however it seems to
>>me they are unknown to many developers.
>>
>>Regards
>
>
>---------------------------------------------------------------------
>To unsubscribe, e-mail: tapestry-user-unsubscribe@jakarta.apache.org
>For additional commands, e-mail: tapestry-user-help@jakarta.apache.org