0

I have encountered a strange situation. I have a xhtml looks like this:

<h:form id="frmContent">
 <p:dataTable id="tbl" ..>
</p:dataTable>

    <p:contextMenu for="tbl">
        <p:menuitem value="Delete" update="tbl"  actionListener="#{VehicleBean.deleteVehicle}"/>
        <p:menuitem value="Copy" update=":frmContent:vehicleDia:VehicleDialogContent" action="#{VehicleBean.copyVehicle}" oncomplete="PF('VehicleDialog').show();"/>
    </p:contextMenu>

     <p:dialog header="Vehicle Detail"  widgetVar="VehicleDialog" modal="true" resizable="true" appendTo="@(body)">
          <h:form id="vehicleDia">
            <p:panelGrid id="VehicleDialogContent" columns="2" >
               ...
            </p:panelGrid>
            <p:commandButton id="SaveButton" type="button" value="Save" update="VehicleDialogContent" actionListener="#{VehicleBean.saveVehicle}" oncomplete="PF('VehicleDialog').hide();">

        </h:form>
    </p:dialog>

The problem is, I cannot make the VehicleBean.saveVehicle() method fired. I have tried to remove the nested form "vehicleDia" but not work.

I have tried to changing actionListener to action but still not work.

I have tired using h:commandButton instead of p:commandButton still no lucky.

Right now, I dont have any clue.

PS: this is my bean:

@ManagedBean(name="VehicleBean")
@ViewScoped
public class VehicleBean {
    ...
    public void saveVehicle() {
    System.out.println("VehicleBean:saveVehcile is called");
    }
}

I am new to JSF and primefaces, any help is much appreciated!!

Kukeltje
  • 12,223
  • 4
  • 24
  • 47
LKW
  • 180
  • 1
  • 3
  • 13

0 Answers0