Don't like ads? PRO users don't see any ads ;-)
Guest

Untitled

By: a guest on Jul 22nd, 2012  |  syntax: None  |  size: 20.71 KB  |  hits: 39  |  expires: Never
download  |  raw  |  embed  |  report abuse  |  print
Text below is selected. Please press Ctrl+C to copy to your clipboard. (⌘+C on Mac)
  1. primefaces commandbutton actionlistener not called
  2. <h:body>
  3.     <ui:composition template="/template/mainLayout.xhtml" >
  4.         <ui:define name="pageContent">
  5.             <h:form id="cm">
  6.                 <p:growl life="5000" showDetail="true" showSummary="true" id="mymessage" autoUpdate="true"/>
  7.                 <br/>
  8.                 user id :#{sessionScope.USER_ID};
  9.                 <br/>
  10.                 <p:wizard widgetVar="wiz" flowListener="#{clientUitility.onFlowProcess}" showNavBar="true"  >
  11.                     <p:tab id="personal" title="Personal" >
  12.                         <p:panel id="personal1" header="Personal Details">
  13.                             <!-- <h:messages errorClass="error"/> -->
  14.                             <h:panelGrid columns="6" styleClass="grid">
  15.                                 <h:outputText value="First Name:*" />
  16.                                 <p:inputText required="true" label="FirstName"
  17.                                              value="#{clientUitility.client.firstName}" >
  18.                                 </p:inputText>
  19.  
  20.                                 <h:outputText value="Middle Name:*" />
  21.                                 <p:inputText required="true" label="MidddleName"
  22.                                              value="#{clientUitility.client.middleName}" />
  23.  
  24.                                 <h:outputText value="Last Name:*" />
  25.                                 <p:inputText required="true" label="LastName"
  26.                                              value="#{clientUitility.client.lastName}" />
  27.  
  28.                                 <h:outputText value="Login ID:* " />
  29.                                 <p:inputText required="true" label="LoginID"
  30.                                              value="#{clientUitility.client.loginID}"/>
  31.  
  32.                                 <h:outputText value="Password:* " />
  33.                                 <p:inputText required="true" label="Password"
  34.                                              value="#{clientUitility.client.password}"/>
  35.                             </h:panelGrid>
  36.                         </p:panel>
  37.                     </p:tab>
  38.                     <p:tab id="address" title="Address" >
  39.                         <p:panel id="address1" header="Adress Details">
  40.                             <!-- <h:messages errorClass="error"/> -->
  41.                             <h:panelGrid columns="6" styleClass="grid">
  42.                                 <h:outputText value="Address:*" />
  43.                                 <p:inputText required="true" label="Address1"
  44.                                              value="#{clientUitility.client.address1}" />
  45.                                 <h:outputText />
  46.                                 <p:inputText label="Address2"
  47.                                              value="#{clientUitility.client.address2}" />
  48.                                 <h:outputText />
  49.                                 <p:inputText label="Address3"
  50.                                              value="#{clientUitility.client.address3}" />
  51.                                 <h:outputText value="City:* " />
  52.                                 <p:inputText required="true" label="City"
  53.                                              value="#{clientUitility.client.city}" />
  54.  
  55.                                 <h:outputText value="Pincode:* " />
  56.                                 <p:inputText required="true" label="Pincode"
  57.                                              value="#{clientUitility.client.pincode}" />
  58.                                 <h:outputText value="State:* " />
  59.                                 <p:inputText required="true" label="State"
  60.                                              value="#{clientUitility.client.state}" />
  61.                             </h:panelGrid>
  62.                         </p:panel>
  63.                     </p:tab>
  64.                     <p:tab id="contact" title="Contact" >
  65.                         <p:panel id="contact1" header="Contact Information">
  66.                             <!-- <h:messages errorClass="error"/> -->
  67.                             <p:panelGrid columns="4" styleClass="grid">
  68.                                 <h:outputText value="Mobile:* " />
  69.                                 <p:inputText required="true" label="MobileNo"
  70.                                              value="#{clientUitility.client.mobileNo}" />
  71.                                 <h:outputText value="Email ID: "/>
  72.                                 <p:inputText label="EmailID"
  73.                                              value="#{clientUitility.client.emailID}" />
  74.                                 <h:outputText value="STD Code: "/>
  75.                                 <p:inputText label="STDCode"
  76.                                              value="#{clientUitility.client.stdCode}" />
  77.                                 <h:outputText value="Phone No: "/>
  78.                                 <p:inputText label="PhoneNo"
  79.                                              value="#{clientUitility.client.phoneNo}" />                                </p:panelGrid>
  80.                         </p:panel>
  81.                     </p:tab>
  82.  
  83.                     <p:tab id="confirm" title="Confirmation" >
  84.                         <p:panel id="confirm1" header="Confirm and Submit">
  85.  
  86.                             <h:panelGrid  columns="6" styleClass="grid" >
  87.  
  88.                                 <h:outputText value="First Name: " />
  89.                                 <h:outputText styleClass="outputLabel"
  90.                                               value="#{clientUitility.client.firstName}" />
  91.                                 <h:outputText value="Middle Name: " />
  92.                                 <h:outputText styleClass="outputLabel"
  93.                                               value="#{clientUitility.client.middleName}" />
  94.                                 <h:outputText value="Last Name: " />
  95.                                 <h:outputText styleClass="outputLabel"
  96.                                               value="#{clientUitility.client.lastName}" />
  97.                                 <h:outputText value="Login ID: " />
  98.                                 <h:outputText styleClass="outputLabel"
  99.                                               value="#{clientUitility.client.loginID}"/>
  100.                                 <h:outputText value="Password: " />
  101.                                 <h:outputText styleClass="outputLabel"
  102.                                              value="#{clientUitility.client.password}"/>
  103.                                 <h:outputText/>
  104.                                 <h:outputText/>
  105.                                 <h:outputText value="Address: " />
  106.                                 <h:outputText styleClass="outputLabel"
  107.                                               value="#{clientUitility.client.address1}" />
  108.                                 <h:outputText />
  109.                                 <h:outputText styleClass="outputLabel"
  110.                                               value="#{clientUitility.client.address2}" />
  111.                                 <h:outputText />
  112.                                 <h:outputText styleClass="outputLabel"
  113.                                               value="#{clientUitility.client.address3}" />
  114.                                 <h:outputText value="City: " />
  115.                                 <h:outputText styleClass="outputLabel"
  116.                                               value="#{clientUitility.client.city}" />
  117.                                 <h:outputText value="State: " />
  118.                                 <h:outputText styleClass="outputLabel"
  119.                                               value="#{clientUitility.client.state}" />
  120.                                 <h:outputText value="Pincode: " />
  121.                                 <h:outputText styleClass="outputLabel"
  122.                                               value="#{clientUitility.client.pincode}" />
  123.                                 <h:outputText value="Email ID: " />
  124.                                 <h:outputText styleClass="outputLabel"
  125.                                               value="#{clientUitility.client.emailID}" />
  126.                                 <p:commandButton id="addClient" immediate="true" value="Add Client" actionListener="#{clientUitility.save}" oncomplete="wiz.loadStep (wiz.cfg.steps [0], true)" update="@parent,:cm:clientList"> <!-- update="@parent,:cm:clientList" -->
  127.                                 </p:commandButton>
  128.                             </h:panelGrid>
  129.                         </p:panel>
  130.                     </p:tab>
  131.                 </p:wizard>
  132.                 <ui:include id="ce" src="ClientEditDatatable.xhtml"/>
  133.             </h:form>              
  134.         </ui:define>
  135.     </ui:composition>
  136. </h:body>
  137.        
  138. <h:body>
  139.      <h:form id="fce">
  140.         <p:confirmDialog message="Delete client?" severity="alert" widgetVar="confirmDeleteClient" visible="false" appendToBody="true">
  141.             <p:commandButton value="Yes" update=":cm:fce:clientList" oncomplete="confirmDeleteClient.hide()" actionListener="#{clientUitility.deleteRecord}" >
  142.             </p:commandButton>
  143.             <p:commandButton value="No" onclick="confirmDeleteClient.hide()" type="button" />
  144.         </p:confirmDialog>
  145.         <p:dataTable var="client" value="#{clientUitility.clientAll}" id="clientList" editable="true"
  146.                      rowKey="#{client.clientID}" paginator="true" rows="10" rowsPerPageTemplate="10,15,20">
  147.             <p:column headerText="First Name" style="width:125px" filterBy="#{user.firstname}" sortBy="#{client.firstName}">
  148.                 <p:cellEditor>
  149.                     <f:facet name="output">
  150.                         <h:outputText value="#{client.firstName}" />
  151.                     </f:facet>
  152.                     <f:facet name="input">
  153.                         <h:outputText value="#{client.firstName}" />
  154.                     </f:facet>
  155.                 </p:cellEditor>
  156.             </p:column>
  157.             <p:column headerText="Middle Name" style="width:125px" filterBy="#{client.middleName}" sortBy="#{client.middleName}">
  158.                 <p:cellEditor>
  159.                     <f:facet name="output">
  160.                         <h:outputText value="#{client.middleName}" />
  161.                     </f:facet>
  162.                     <f:facet name="input">
  163.                         <p:inputText value="#{client.middleName}" style="width:100%" >
  164.                         </p:inputText>
  165.                     </f:facet>
  166.                 </p:cellEditor>
  167.             </p:column>
  168.  
  169.             <p:column headerText="Last Name" style="width:125px" filterBy="#{client.lastName}" sortBy="#{client.lastName}" >
  170.                 <p:cellEditor>
  171.                     <f:facet name="output">
  172.                         <h:outputText value="#{client.lastName}" />
  173.                     </f:facet>
  174.                     <f:facet name="input">
  175.                         <p:inputText value="#{client.lastName}" style="width:100%" >
  176.                         </p:inputText>
  177.                     </f:facet>
  178.                 </p:cellEditor>
  179.             </p:column>
  180.  
  181.             <p:column headerText="Login ID" style="width:125px" filterBy="#{client.loginID}" sortBy="#{client.loginID}">
  182.                 <p:cellEditor>
  183.                     <f:facet name="output">
  184.                         <h:outputText value="#{client.loginID}" />
  185.                     </f:facet>
  186.                     <f:facet name="input">
  187.                         <p:inputText value="#{client.loginID}" style="width:100%" >
  188.                         </p:inputText>
  189.                     </f:facet>
  190.                 </p:cellEditor>
  191.             </p:column>
  192.  
  193.             <p:column headerText="Password" style="width:125px" filterBy="#{client.password}" sortBy="#{client.password}">
  194.                 <p:cellEditor>
  195.                     <f:facet name="output">
  196.                         <h:outputText value="#{client.password}" />
  197.                     </f:facet>
  198.                     <f:facet name="input">
  199.                         <p:inputText value="#{client.password}" style="width:100%" >
  200.                         </p:inputText>
  201.                     </f:facet>
  202.                 </p:cellEditor>
  203.             </p:column>
  204.             <p:column headerText="Address1" style="width:125px" filterBy="#{client.address1}" sortBy="#{client.address1}">
  205.                 <p:cellEditor>
  206.                     <f:facet name="output">
  207.                         <h:outputText value="#{client.address1}" />
  208.                     </f:facet>
  209.                     <f:facet name="input">
  210.                         <p:inputText value="#{client.address1}" style="width:100%" >
  211.                         </p:inputText>
  212.                     </f:facet>
  213.                 </p:cellEditor>
  214.             </p:column>
  215.             <p:column headerText="Address2" style="width:125px" filterBy="#{client.address2}" sortBy="#{client.address2}">
  216.                 <p:cellEditor>
  217.                     <f:facet name="output">
  218.                         <h:outputText value="#{client.address2}" />
  219.                     </f:facet>
  220.                     <f:facet name="input">
  221.                         <p:inputText value="#{client.address2}" style="width:100%" >
  222.                         </p:inputText>
  223.                     </f:facet>
  224.                 </p:cellEditor>
  225.             </p:column>
  226.             <p:column headerText="Address3" style="width:125px" filterBy="#{client.address3}" sortBy="#{client.address3}">
  227.                 <p:cellEditor>
  228.                     <f:facet name="output">
  229.                         <h:outputText value="#{client.address3}" />
  230.                     </f:facet>
  231.                     <f:facet name="input">
  232.                         <p:inputText value="#{client.address3}" style="width:100%" >
  233.                         </p:inputText>
  234.                     </f:facet>
  235.                 </p:cellEditor>
  236.             </p:column>
  237.             <p:column headerText="City" style="width:125px" filterBy="#{client.city}" sortBy="#{client.city}">
  238.                 <p:cellEditor>
  239.                     <f:facet name="output">
  240.                         <h:outputText value="#{client.city}" />
  241.                     </f:facet>
  242.                     <f:facet name="input">
  243.                         <p:inputText value="#{client.city}" style="width:100%" >
  244.                         </p:inputText>
  245.                     </f:facet>
  246.                 </p:cellEditor>
  247.             </p:column>
  248.             <p:column headerText="State" style="width:125px" filterBy="#{client.state}" sortBy="#{client.state}">
  249.                 <p:cellEditor>
  250.                     <f:facet name="output">
  251.                         <h:outputText value="#{client.state}" />
  252.                     </f:facet>
  253.                     <f:facet name="input">
  254.                         <p:inputText value="#{client.state}" style="width:100%" >
  255.                         </p:inputText>
  256.                     </f:facet>
  257.                 </p:cellEditor>
  258.             </p:column>
  259.             <p:column headerText="Pincode" style="width:125px" filterBy="#{client.pincode}" sortBy="#{client.pincode}">
  260.                 <p:cellEditor>
  261.                     <f:facet name="output">
  262.                         <h:outputText value="#{client.pincode}" />
  263.                     </f:facet>
  264.                     <f:facet name="input">
  265.                         <p:inputText value="#{client.pincode}" style="width:100%" >
  266.                         </p:inputText>
  267.                     </f:facet>
  268.                 </p:cellEditor>
  269.             </p:column>
  270.             <p:column headerText="Mobile No" style="width:125px" filterBy="#{client.mobileNo}" sortBy="#{client.mobileNo}">
  271.                 <p:cellEditor>
  272.                     <f:facet name="output">
  273.                         <h:outputText value="#{client.mobileNo}" />
  274.                     </f:facet>
  275.                     <f:facet name="input">
  276.                         <p:inputText value="#{client.mobileNo}" style="width:100%" >
  277.                         </p:inputText>
  278.                     </f:facet>
  279.                 </p:cellEditor>
  280.             </p:column>
  281.             <p:column headerText="STD Code" style="width:125px" filterBy="#{client.stdCode}" sortBy="#{client.stdCode}">
  282.                 <p:cellEditor>
  283.                     <f:facet name="output">
  284.                         <h:outputText value="#{client.stdCode}" />
  285.                     </f:facet>
  286.                     <f:facet name="input">
  287.                         <p:inputText value="#{client.stdCode}" style="width:100%" >
  288.                         </p:inputText>
  289.                     </f:facet>
  290.                 </p:cellEditor>
  291.             </p:column>
  292.             <p:column headerText="Phone No" style="width:125px" filterBy="#{client.phoneNo}" sortBy="#{client.phoneNo}">
  293.                 <p:cellEditor>
  294.                     <f:facet name="output">
  295.                         <h:outputText value="#{client.phoneNo}" />
  296.                     </f:facet>
  297.                     <f:facet name="input">
  298.                         <p:inputText value="#{client.phoneNo}" style="width:100%" >
  299.                         </p:inputText>
  300.                     </f:facet>
  301.                 </p:cellEditor>
  302.             </p:column>
  303.             <p:column headerText="Email ID" style="width:125px" filterBy="#{client.emailID}" sortBy="#{client.emailID}">
  304.                 <p:cellEditor>
  305.                     <f:facet name="output">
  306.                         <h:outputText value="#{client.emailID}" />
  307.                     </f:facet>
  308.                     <f:facet name="input">
  309.                         <p:inputText value="#{client.emailID}" style="width:100%" >
  310.                         </p:inputText>
  311.                     </f:facet>
  312.                 </p:cellEditor>
  313.             </p:column>
  314.             <p:column headerText="Edit" style="width:50px">
  315.                 <p:rowEditor />
  316.             </p:column>
  317.             <p:ajax event="rowEdit" listener="#{clientUitility.editRowListner}" update=":cm:mymessage"/>
  318.  
  319.             <p:column headerText="Delete" style="width:50px">
  320.                 <p:commandButton id="deleteClient" value="Delete" onclick="confirmDeleteClient.show()" title="Delete this Client" styleClass="ui-icon-closethick">
  321.                 </p:commandButton>
  322.             </p:column>
  323.         </p:dataTable>
  324.     </h:form>
  325. </h:body>
  326.        
  327. @ManagedBean
  328. @ViewScoped
  329. public class ClientUitility {
  330. private ClientBean client = new ClientBean();
  331. private List<ClientBean> clientAll = new ArrayList<ClientBean>();
  332. /** Creates a new instance of ClientUitility */
  333. public ClientUitility() {
  334.     clientAll = new ArrayList<ClientBean>();
  335.     int userID = Integer.parseInt(FacesContext.getCurrentInstance().getExternalContext().getSessionMap().get("USER_ID").toString());
  336.     clientAll = ClientService.GenerateClientList(userID);
  337. }
  338. public List<ClientBean> getClientAll() {
  339.     return clientAll;
  340. }
  341. public void setClientAll(List<ClientBean> clientAll) {
  342.     this.clientAll = clientAll;
  343. }
  344. public ClientBean getClient() {
  345.     return client;
  346. }
  347. public void setClient(ClientBean client) {
  348.     this.client = client;
  349. }
  350. public String onFlowProcess(FlowEvent event) {
  351.     System.out.println("Current wizard step:" + event.getOldStep());
  352.     System.out.println("Next step:" + event.getNewStep());
  353.     System.out.println("First name : " + client.getfirstName());
  354.     System.out.println("Last name : " + client.getlastName());
  355.     System.out.println("Age name : " + client.getloginID());
  356.     return event.getNewStep();
  357. }
  358. public void editRowListner(RowEditEvent rowEditEvent) {
  359.     try {
  360.         ClientBean updatedClient = (ClientBean) rowEditEvent.getObject();
  361.         System.out.println("Client First Name: " + updatedClient.getfirstName());
  362.         ClientService.EditClient(updatedClient);
  363.         FacesContext context = FacesContext.getCurrentInstance();
  364.         context.addMessage(null, new FacesMessage("Updated", updatedClient.getfirstName() + " " + updatedClient.getlastName()));
  365.     } catch (Exception e) {
  366.         e.getMessage();
  367.     }
  368. }
  369. public void deleteRecord(ActionEvent actionEvent) {
  370.     try {
  371.         //System.out.println("Client ID: " + actionEvent.getComponent().getAttributes().get("cID").toString());
  372.         System.out.println("delete client of User ID: " + FacesContext.getCurrentInstance().getExternalContext().getSessionMap().get("USER_ID").toString());
  373.         FacesMessage msg = new FacesMessage("Client Deleted", "");
  374.         FacesContext.getCurrentInstance().addMessage(null, msg);
  375.     } catch (Exception e) {
  376.         e.printStackTrace();
  377.     }
  378. }
  379. public void save(ActionEvent actionEvent) {        client.setuserID(Integer.parseInt(FacesContext.getCurrentInstance().getExternalContext().getSessionMap().get("USER_ID").toString()));
  380.     System.out.println("Client ID : " + client.getclientID());
  381.     System.out.println("User ID : " + client.getuserID());
  382.     ClientService.AddClient(client);
  383.     client = new ClientBean();
  384.     clientAll = ClientService.GenerateClientList(Integer.parseInt(FacesContext.getCurrentInstance().getExternalContext().getSessionMap().get("USER_ID").toString()));
  385.     FacesMessage msg = new FacesMessage("Client Created", "");
  386.     FacesContext.getCurrentInstance().addMessage(null, msg);
  387. }
  388. }
  389.        
  390. <ui:include id="ce" src="ClientEditDatatable.xhtml"/>
  391.         </h:form>
  392.        
  393. </h:form>              
  394.         <ui:include id="ce" src="ClientEditDatatable.xhtml"/>