jsp - how to display the data from database on a button click in java jsf -


<f:view>         <h:form>             <h:panelgrid>                 <f:facet name="header">                     <h:outputtext value="student mark list"/>                 </f:facet>                 <h:column>                     <h:outputtext value="student number : "></h:outputtext>                     <h:inputtext value="#{stubean.stunumber}"/>                 </h:column>                 <h:column>                     <h:commandbutton id = "getstumarklist" value="get mark list" action="#{stubean.listofmarks}" >                     </h:commandbutton> </h:column>             </h:panelgrid>                                       <h:panelgrid  bgcolor="#9ac8e6" width="100%">               <h:datatable id="datatable" value="#{stubean.markslist}" var="markslist">                     <h:column>                         <f:facet name="header">                             <h:outputtext style=""value="maths marks" />                         </f:facet>                         <h:inputtext value="#{markslist.mmarks}" > </h:inputtext>                     </h:column>                     <h:column>                         <f:facet name="header">                             <h:outputtext style=""value="english marks" />                         </f:facet>                         <h:inputtext value="#{markslist.emarks}" > </h:inputtext>                     </h:column>                     <h:column>                         <f:facet name="header">                             <h:outputtext style=""value="physics marks" />                         </f:facet>                         <h:inputtext value="#{markslist.pmarks}" > </h:inputtext>                     </h:column>                     <h:column>                         <f:facet name="header">                             <h:outputtext style=""value="social marks" />                         </f:facet>                         <h:inputtext value="#{markslist.smarks}" > </h:inputtext>                     </h:column>                 </h:datatable>             </h:panelgrid>         </h:form>     </f:view> 

studentbean.java

    //... getters , setters  public string listofmarks(){     student.markslistfromdb(stunum);     return null; }  private list markslist= new arraylist();  public list getmarkslist() {            return markslist; } 

please check above code i'm trying values database on button click (listofmarks) , display them in datatable. using above code not fetching data.kindly me if i'm wrong doing wrong where...

some general things:

an action method in commandbutton should return void or string. string used navigation. if want reload same page return null.

you mixing getter method marklist action method.

you should have action method e.g. fillmarklist() fills list, returns null string , reloads current page and should have getter method getmarklist() returns list datatable:

public string fillmarklist() {    // fill list:    student.marklistfromdb(stunum);    // reload current page:    return null; }  public list getmarklist() {    return marklist(); } 

your button should call fillmarklist() action method:

<h:commandbutton id="getstumarklist"                   value="get mark list"                   action="#{stubean.fillmarklist}" /> 

update: noticed usage of h:panelgrid. tried version , renders correct table. think correct usage without columns. have define column number attribute of h:panelgrid , put containing elements inside grid:

<h:panelgrid columns="3">    <f:facet name="header">        <h:outputtext value="student mark list"/>    </f:facet>    <h:outputtext value="student number : "></h:outputtext>    <h:inputtext value="#{stubean.stunumber}"/>    <h:commandbutton id = "getstumarklist" value="get mark list"                       action="#{stubean.listofmarks}" >    </h:commandbutton> </h:column> </h:panelgrid>    

Comments

Popular posts from this blog

c# - how to write client side events functions for the combobox items -

exception - Python, pyPdf OCR error: pyPdf.utils.PdfReadError: EOF marker not found -