[ 
https://issues.apache.org/jira/browse/TRINIDAD-1144?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12611476#action_12611476
 ] 

Mathias Walter commented on TRINIDAD-1144:
------------------------------------------

And by the way: I removed '<c:set var="entity" value="#{row}" />' and replaced 
all ${entity[name]} with #{row[name]} for my fields.

Hopefully that was mentioned by not using TagHandler processed EL and runtime 
processed EL.

It works for 1.2.8, but not for 1.2.9.

More precisely, I've a nested level of three. The first table is drawing 
correctly. If I click on a detailStamp, the next nested table is also shown 
correctly. So passing the value and parent attribute of i:ietable works well 
from first to second nested level.
But if I now click on a detailStamp in the second nested level, the table of 
the third nested level is not shown. Instead an exception is thrown (see 
below), if I use 1.2.9.

Ergo: From first to second nested level all works well, but not for the next 
deeper level. I'm sure, that's a bug.

08.07.2008 08:53:45 com.sun.faces.lifecycle.InvokeApplicationPhase execute
WARNUNG: /WEB-INF/facelets/tags/ienestedtable.xhtml @27,68 value="${source}": 
/WEB-INF/facelets/tags/ienestedtable.xhtml @16,52 value="#{row[value]}": 
Property 'findings' not found on type entities.Finding
javax.el.PropertyNotFoundException: /WEB-INF/facelets/tags/ienestedtable.xhtml 
@27,68 value="${source}": /WEB-INF/facelets/tags/ienestedtable.xhtml @16,52 
value="#{row[value]}": Property 'findings' not found on type entities.Finding
        at 
com.sun.facelets.el.TagValueExpression.getValue(TagValueExpression.java:73)
        at 
org.apache.myfaces.trinidad.bean.FacesBeanImpl.getProperty(FacesBeanImpl.java:68)
        at 
org.apache.myfaces.trinidad.component.UIXComponentBase.getProperty(UIXComponentBase.java:1164)
        at 
org.apache.myfaces.trinidad.component.UIXIterator.getValue(UIXIterator.java:504)
        at 
org.apache.myfaces.trinidad.component.UIXCollection._flushCachedModel(UIXCollection.java:1208)
        at 
org.apache.myfaces.trinidad.component.UIXCollection.broadcast(UIXCollection.java:143)
        at 
org.apache.myfaces.trinidad.component.UIXTable.broadcast(UIXTable.java:223)
        at 
org.apache.myfaces.trinidad.component.UIXCollection.broadcast(UIXCollection.java:153)
        at 
org.apache.myfaces.trinidad.component.UIXTable.broadcast(UIXTable.java:223)
        at 
org.apache.myfaces.trinidad.component.UIXCollection.broadcast(UIXCollection.java:153)
        at 
org.apache.myfaces.trinidad.component.UIXTable.broadcast(UIXTable.java:223)
        at javax.faces.component.UIViewRoot.broadcastEvents(UIViewRoot.java:458)
        at 
javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:763)
        at 
com.sun.faces.lifecycle.InvokeApplicationPhase.execute(InvokeApplicationPhase.java:82)
        at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:100)
        at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:118)
        at javax.faces.webapp.FacesServlet.service(FacesServlet.java:265)
        at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
        at 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
        at 
org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:83)
        at org.jboss.seam.web.LoggingFilter.doFilter(LoggingFilter.java:58)
        at 
org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
        at 
org.jboss.seam.debug.hot.HotDeployFilter.doFilter(HotDeployFilter.java:68)
        at 
org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
        at org.jboss.seam.web.MultipartFilter.doFilter(MultipartFilter.java:85)
        at 
org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
        at org.jboss.seam.web.ExceptionFilter.doFilter(ExceptionFilter.java:64)
        at 
org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
        at org.jboss.seam.web.RedirectFilter.doFilter(RedirectFilter.java:45)
        at 
org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
        at 
org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:73)
        at org.jboss.seam.servlet.SeamFilter.doFilter(SeamFilter.java:158)
        at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
        at 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
        at 
org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl._invokeDoFilter(TrinidadFilterImpl.java:238)
        at 
org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl._doFilterImpl(TrinidadFilterImpl.java:195)
        at 
org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl.doFilter(TrinidadFilterImpl.java:138)
        at 
org.apache.myfaces.trinidad.webapp.TrinidadFilter.doFilter(TrinidadFilter.java:92)
        at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
        at 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
        at 
org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:83)
        at org.jboss.seam.web.LoggingFilter.doFilter(LoggingFilter.java:58)
        at 
org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
        at 
org.jboss.seam.debug.hot.HotDeployFilter.doFilter(HotDeployFilter.java:68)
        at 
org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
        at org.jboss.seam.web.MultipartFilter.doFilter(MultipartFilter.java:85)
        at 
org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
        at org.jboss.seam.web.ExceptionFilter.doFilter(ExceptionFilter.java:64)
        at 
org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
        at org.jboss.seam.web.RedirectFilter.doFilter(RedirectFilter.java:45)
        at 
org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
        at 
org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:73)
        at org.jboss.seam.servlet.SeamFilter.doFilter(SeamFilter.java:158)
        at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
        at 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
        at 
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
        at 
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
        at 
org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:433)
        at 
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
        at 
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
        at 
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
        at 
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263)
        at 
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
        at 
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584)
        at 
org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
        at java.lang.Thread.run(Thread.java:619)


> EL variable not set or get correctly
> ------------------------------------
>
>                 Key: TRINIDAD-1144
>                 URL: https://issues.apache.org/jira/browse/TRINIDAD-1144
>             Project: MyFaces Trinidad
>          Issue Type: Bug
>          Components: Archetype
>    Affects Versions: 1.2.9-core
>         Environment: JSF RI 1.2.08b6, JBoss Seam 2.0.2.SP1, Facelets 1.1.14
>            Reporter: Mathias Walter
>            Priority: Blocker
>             Fix For: 1.2.9-core
>
>
> I'm using a facelet component which sets a variable to the row of a tr:table 
> (<c:set var="entity" value="#{row}" />). This variable is then used in a 
> child table (which is also a facelet component) as source value.
> In 1.2.9 this approach does not work anymore. The entity is set to the 
> current row of the child table and does not contain the row entity set before.
> Up to 1.2.8, all works fine. I checked the fixes for 1.2.9, but could not 
> find a related one.
> facelet tag code snippet:
> <ui:composition>
>       <c:choose>
>               <c:when test="${empty value}">
>                   <c:set var="source" value="${backingBean.list}" />
>               </c:when>
>               <c:otherwise>
>                   <c:set var="source" value="${entity[value]}" />
>               </c:otherwise>
>       </c:choose>
>       <c:choose>
>               <c:when test="${empty eventBinding}">
>                   <c:set var="binding" value="${backingBean}" />
>               </c:when>
>               <c:otherwise>
>                   <c:set var="binding" value="${eventBinding}" />
>               </c:otherwise>
>       </c:choose>
>       <tr:table value="${source}" binding="${binding.model}" var="row">
>               <c:set var="entity" value="#{row}" />
>               <ui:insert />
>               <tr:column headerText="Actions">
>                       <tr:panelButtonBar>
>                               <tr:commandLink action="#{backingBean.edit}" 
> text="Edit" partialSubmit="true" rendered="#{!backingBean.editMode and 
> backingBean.visibleOnly}" immediate="true" />
>                               <tr:commandLink action="#{backingBean.save}" 
> text="Save" partialSubmit="true" rendered="#{!backingBean.visibleOnly}" />
>                               <tr:commandLink action="#{backingBean.cancel}" 
> text="Cancel" partialSubmit="true" rendered="#{!backingBean.visibleOnly}" 
> immediate="true">
>                                       <tr:resetActionListener/>
>                               </tr:commandLink>
>                       </tr:panelButtonBar>
>               </tr:column>
>       </tr:table>
> </ui:composition>
> xhtml code snippet:
> <i:ietable panelCaption="Samples" backingBean="#{samples}" 
> eventBinding="#{samplesBindings}">
>       <i:field label="ID" name="id" columns="6" readOnly="true"/>
>       <f:facet name="detailStamp">
>               <i:ietable panelCaption="Findings" value="findings" 
> backingBean="#{findings}" eventBinding="#{findingsBindings}" parent="#{row}" 
> nested="true">

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