Note that there are some explanatory texts on larger screens.

plurals
  1. POForward variable on the next page
    primarykey
    data
    text
    <p>I have a Users table. Added, view and delete work. But I have problem to edit.</p> <p>My list page:</p> <pre><code> &lt;h:form id="form"&gt; &lt;p:dataTable styleClass="table" value="#{userMB.allAdmins}" var="admin" paginator="true" rows="15" rowKey="#{admin.id}" selection="#{userMB.user}" selectionMode="single"&gt; &lt;f:facet name="header"&gt; Lista administratorów &lt;/f:facet&gt; &lt;p:column headerText="#{msg.firstName}"&gt; &lt;h:outputText value="#{admin.firstName}" /&gt; &lt;/p:column&gt; &lt;p:column headerText="#{msg.lastName}"&gt; &lt;h:outputText value="#{admin.lastName}" /&gt; &lt;/p:column&gt; &lt;p:column headerText="#{msg.personalId}"&gt; &lt;h:outputText value="#{admin.personalId}" /&gt; &lt;/p:column&gt; &lt;f:facet name="footer"&gt; &lt;p:commandButton id="viewButton" value="#{msg.info}" icon="ui-icon-search" update=":form:display" oncomplete="userDialog.show()"/&gt; &lt;p:commandButton action="#{userMB.createStart()}" value="#{msg.add}" icon="ui-icon-plus" /&gt; &lt;p:commandButton action="#{userMB.editStart()}" value="#{msg.edit}" &gt; &lt;f:setPropertyActionListener target="#{userMB.user}" value="#{userMB.user}" /&gt; &lt;/p:commandButton&gt; &lt;p:commandButton action="#{userMB.deleteUser()}" value="#{msg.delete}" icon="ui-icon-close"/&gt; &lt;/f:facet&gt; &lt;/p:dataTable&gt; &lt;p:dialog id="dialog" header="Administrator" widgetVar="userDialog" resizable="false" width="300" showEffect="clip" hideEffect="explode"&gt; &lt;h:panelGrid id="display" columns="2" cellpadding="4"&gt; &lt;f:facet name="header"&gt; &lt;p:graphicImage value="./../../images/person4.png" width="150" height="150"/&gt; &lt;/f:facet&gt; &lt;h:outputText value="#{msg.firstName}" /&gt; &lt;h:outputText value="#{userMB.user.firstName}" /&gt; &lt;h:outputText value="#{msg.lastName}" /&gt; &lt;h:outputText value="#{userMB.user.lastName}" /&gt; &lt;h:outputText value="#{msg.personalId}" /&gt; &lt;h:outputText value="#{userMB.user.personalId}" /&gt; &lt;/h:panelGrid&gt; &lt;/p:dialog&gt; &lt;/h:form&gt; </code></pre> <p>I want to send the selected user on the next page: I use aciontListener:</p> <pre><code> &lt;p:commandButton action="#{userMB.editStart()}" value="#{msg.edit}" &gt; &lt;f:setPropertyActionListener target="#{userMB.user}" value="#{userMB.user}" /&gt; &lt;/p:commandButton&gt; </code></pre> <p>My edit page where I want to send user:</p> <pre><code> &lt;h:form&gt; &lt;div id="userPanel"&gt; &lt;h:inputHidden value="#{userMB.user}" /&gt; &lt;p:panel id="panelUser" header="Edytuj administratora" &gt; &lt;div id="panelImage"&gt; &lt;img src="./../../images/person4.png" alt="person" width="150px" height="130px"/&gt; &lt;/div&gt; &lt;h:panelGrid columns="3"&gt; &lt;p:outputLabel for="firstName" value="#{msg.firstName}"&gt;&lt;/p:outputLabel&gt; &lt;p:inputText id="firstName" value="#{userMB.user.firstName}" label="#{msg.firstName}" required="true"&gt; &lt;f:validator validatorId="nameValidator" /&gt; &lt;p:ajax update="msgFristName" event="keyup" /&gt; &lt;/p:inputText&gt; &lt;p:message for="firstName" id="msgFristName"/&gt; &lt;p:outputLabel for="lastName" value="#{msg.lastName}"&gt;&lt;/p:outputLabel&gt; &lt;p:inputText id="lastName" value="#{userMB.user.lastName}" label="#{msg.lastName}" required="true"&gt; &lt;f:validator validatorId="nameValidator" /&gt; &lt;p:ajax update="msgLastName" event="keyup" /&gt; &lt;/p:inputText&gt; &lt;p:message for="lastName" id="msgLastName"/&gt; &lt;p:outputLabel for="personalId" value="#{msg.personalId}"&gt;&lt;/p:outputLabel&gt; &lt;p:inputText id="personalId" value="#{userMB.user.personalId}" label="#{msg.personalId}" required="true"&gt; &lt;f:validator validatorId="personalIdValidator" /&gt; &lt;p:ajax update="msgPersonalId" event="keyup" /&gt; &lt;/p:inputText&gt; &lt;p:message for="personalId" id="msgPersonalId"/&gt; &lt;p:outputLabel for="password" value="#{msg.password}"&gt;&lt;/p:outputLabel&gt; &lt;/p:panel&gt; &lt;/div&gt; &lt;/h:form&gt; </code></pre> <p>I added: <code>&lt;h:inputHidden value="#{userMB.user}" /&gt;</code> but I do not see data user, only empty field. How do I send this person? I used once this method in other project, a little different without primefaces and it worked. Why now does not work?</p> <p>Method editStart:</p> <pre><code>public String editStart() { return "editStart"; } </code></pre> <p>faces-config:</p> <pre><code>&lt;navigation-case&gt; &lt;from-outcome&gt;editStart&lt;/from-outcome&gt; &lt;to-view-id&gt;/protected/admin/adminEdit.xhtml&lt;/to-view-id&gt; &lt;redirect/&gt; &lt;/navigation-case&gt; </code></pre> <p>When I'm on the side adminEdit I edited the pool and do editUser method:</p> <pre><code>public String editUser() { FacesContext context = FacesContext.getCurrentInstance(); Map requestParameterMap = (Map) context.getExternalContext().getRequestParameterMap(); try { String userRole = requestParameterMap.get("userRole").toString(); String active = requestParameterMap.get("active").toString(); Boolean act = Boolean.parseBoolean(active); user.setRole(userRole); user.setActive(act); userDao.update(user); } catch (EJBException e) { sendErrorMessageToUser("Edit error"); return null; } sendInfoMessageToUser("Account edited"); return user.getRole() + "List"; } </code></pre> <p>My method editStart use only for navigation.</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.
 

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