Note that there are some explanatory texts on larger screens.

plurals
  1. POChanging variable from DataTable in Dialog
    primarykey
    data
    text
    <p>I have a question about updating variable inside dataTable component, which was sended to dialog component.</p> <p>I want to have dialog box with options. There are informations about user (user data editing). <code>ManageUsers</code> class have <code>UserDAO selectedUser</code> property, <code>UserDAO</code> class contains User POJO (login, email etc).<br> <code>ManageUsers.updateUser</code> persists data in database.</p> <p>How can I update selectedUser through inputText? I can not use <code>p:inplace</code> component because I have a problem with <code>h:forms</code> and <code>facelets</code> (changing to production stage does not resolve this problem).</p> <p>Glassfish: 3.1<br> Primefaces: 2.2<br> JSF: 2.1 (now MyFaces 2.1.3) </p> <pre><code>&lt;h:form prependId="false"&gt; &lt;p:growl id="growl"/&gt; &lt;!-- Data table with all users--&gt; &lt;p:dataTable id="userTable" var="u" value="#{manageUsers.users}"&gt; &lt;p:column headerText="login" style="width:150px" filterBy="#{u.user.login}" filterMatchMode="contains"&gt; &lt;h:outputText value="#{u.user.login}" /&gt; &lt;/p:column&gt; &lt;p:column headerText="email" style="width:150px" filterBy="#{u.user.email}" filterMatchMode="contains"&gt; &lt;h:outputText value="#{u.user.email}" /&gt; &lt;/p:column&gt; &lt;p:column headerText="apikey" style="width:150px" filterBy="#{u.user.apikey}" filterMatchMode="startsWith"&gt; &lt;h:outputText value="#{u.user.apikey}" /&gt; &lt;/p:column&gt; &lt;p:column headerText="Options" &gt; &lt;p:commandButton update="display" oncomplete="userDialog.show()" image="ui-icon ui-icon-search"&gt; &lt;f:setPropertyActionListener value="#{u}" target="#{manageUsers.selectedUser}" /&gt; &lt;/p:commandButton&gt; &lt;/p:column&gt; &lt;/p:dataTable&gt; &lt;!-- Dialog box with options--&gt; &lt;p:dialog appendToBody="true" header="User Detail" widgetVar="userDialog" resizable="false" width="500" showEffect="explode" hideEffect="explode" onCloseUpdate="growl,userTable"&gt; &lt;h:panelGrid id="display" columns="2" cellpadding="4"&gt; &lt;h:outputText value="Login" /&gt; &lt;p:inputText required="true" value="#{manageUsers.selectedUser.user.login}" /&gt; &lt;h:outputText value="Email" /&gt; &lt;p:inputText required="true" value="#{manageUsers.selectedUser.user.email}" /&gt; &lt;p:commandButton value="save and exit" action="#{manageUsers.updateUser}" update="growl,userTable" onclick="userDialog.hide()" /&gt; &lt;/h:panelGrid&gt; &lt;/p:dialog&gt; &lt;/h:form&gt; </code></pre> <p><img src="https://i.stack.imgur.com/CfpHL.png" alt="Example view"></p>
    singulars
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload