Seam : Exporter une dataTable à l’interieure d’une subview
Lorsqu’un développeur utilise Seam, il a à sa disposition tout un panel de composant pour l’aider à développer. Par exemple le composant dataTable Exporter permet d’exporter un tableau JSF (h:dataTable, rih:dataTable, etc.) sous la forme d’un fichier Excel. Voici la syntaxe directement récupérée de la documentation de référence de Seam :
<h:form id="theForm"> <h:dataTable id="theDataTable" value="#{personList.personList}" var="person"> ... </h:dataTable> </h:form> ... <h:commandLink value="Export" action="#{excelExporter.export('theForm:theDataTable')}" />
Lorsque la table se trouve dans une sous vue (<f:subview/>) ou tout autre composant qui joue un rôle de conteneur de nom (NamingContainer), il faut que le paramètre de la méthode d’export soit sous la forme idNamingContainer1:idNamingContainer2:…:…:idDataTable. De cette manière, la table est identifiée de façon unique dans la RootView.