Wie greife ich auf den übergeordneten Namenscontainer von Composite zu?

Ich habe eine JSP 2.0<ui:component>, innerhalb dessen ist a<p:dataTable> mit einer Spalte, die eine Zusammenstellung verwendet, um einen speziellen Rahmen für einen bestimmten Inhalt zu erstellen. Jetzt muss ich das identifizieren<p:dataTabe> in einem Ajax-gerenderten Attribut, das sich im Inhalt befindet.

<ui:component>
  <p:dataTable id="dataTable" var="userItem" ... />
    <p:column>

        <my:borderBox id="borderBox">
           <p:commandButton
               action="#{userController.doDelete(userItem.id)}"
               value="delete" 
               update="?????"/>  <!-- How to address the dateTable? -->
        </my:borderBox>

      </p:column>
    </p:dataTable>
 <ui:component>

Meine BorderBox:

<html xmlns:composite="http://java.sun.com/jsf/composite" ...>
   <composite:interface>
      <composite:attribute name="styleClass" default="" type="java.lang.String"/>
   </composite:interface>

   <composite:implementation>
      <h:panelGroup ...>
         ...
         <composite:insertChildren/>
      </h:panelGroup>
   </composite:implementation>

Meine Idee war, so etwas zu benutzen

update=":#{component.namingContainer.parent.namingContainer.clientId}:dateTable

Abercomponent.namingContainer.parent Nähte null zu sein.

Wenn ich das ersetze<p:commandButton> mit diesen Aussagen:

Parent ClientId 1: #{component}
Parent ClientId 2: #{component.namingContainer}
Parent ClientId 3: #{component.namingContainer.clientId}

Parent ClientId 4: #{component.namingContainer.parent}
Parent ClientId 5: #{component.namingContainer.parent.namingContainer}

Ich bekomme diese Ausgabe:

Parent ClientId 1: javax.faces.component.html.HtmlPanelGroup@3d957419

Parent ClientId 2: javax.faces.component.UINamingContainer@23db9e8f
Parent ClientId 3: main_form:profilTabView:dataTable:0:borderBox

Parent ClientId 4:
Parent ClientId 5: 

Ich habe keine Ahnung, was das Problem ist: meine Idee, die Liste zu identifizieren, ist komplett falsch oder es gibt einen Fehler oder es gibt einen besseren Weg? (Ich kann jedoch keinen festen absoluten Bezeichner für die dateTable verwenden!)

Versionen: Primeface 3.2, Mojarra 2.1.6 auf Glassfish 3.1.2

Antworten auf die Frage(1)

Ihre Antwort auf die Frage