Ajax behavior callbacks are available for "close" and "move" events. Move event is available for 5.0.2+.
Documentation<h:form> <p:growl id="growl" sticky="true" showDetail="true" /> <h:outputLink id="openDialogLink" value="javascript:void(0)" onclick="PF('dlg').show();">Show the Picture of the Day</h:outputLink> <p:dialog id="picture" widgetVar="dlg" header="Picture of the Day" resizable="false" showEffect="clip" hideEffect="clip"> <p:ajax event="close" update="growl" listener="#{dialogView.handleClose}" /> <p:ajax event="move" update="growl" listener="#{dialogView.handleMove}" /> <p:graphicImage name="/demo/images/nature/nature4.jpg" /> </p:dialog> </h:form>
@Named @RequestScoped public class DialogView { public void handleClose(CloseEvent event) { addMessage(event.getComponent().getId() + " closed", "So you don't like nature?"); } public void handleMove(MoveEvent event) { addMessage(event.getComponent().getId() + " moved", "Left: " + event.getLeft() + ", Top: " + event.getTop()); } public void destroyWorld() { addMessage("System Error", "Please try again later."); } public void addMessage(String summary, String detail) { FacesMessage message = new FacesMessage(FacesMessage.SEVERITY_INFO, summary, detail); FacesContext.getCurrentInstance().addMessage(null, message); } }