Unable to get PrimeFaces RequestContext.getCurrentInstance (). OpenDialog () to work

Cannot get PrimeFaces RequestContext.getCurrentInstance().openDialog() to work. I took the example code right from the window, but never opened a dialog. I am using PF 5.1, running on Wildfly 8.2.0.Final. Any ideas what?

DFView.java

 @ManagedBean(name = "dfView") public class DFView { public void chooseCar() { RequestContext.getCurrentInstance().openDialog("selectCar"); } public void onCarChosen(SelectEvent event) { Car car = (Car) event.getObject(); FacesMessage message = new FacesMessage(FacesMessage.SEVERITY_INFO, "Car Selected", "Id:" + car.getId()); FacesContext.getCurrentInstance().addMessage(null, message); } } 

and my dialogplay.xhtml

 <!DOCTYPE html> <ui:composition xmlns="http://www.w3.org/1999/xhtml" template="/WEB-INF/templates/template.xhtml" xmlns:ui="http://xmlns.jcp.org/jsf/facelets" xmlns:h="http://xmlns.jcp.org/jsf/html" xmlns:p="http://primefaces.org/ui"> <ui:define name="body"> <h:form> <p:growl id="growl" showDetail="true" /> <p:commandButton value="Select Car" icon="ui-icon-extlink" actionListener="#{dfView.chooseCar}"> <p:ajax event="dialogReturn" listener="#{dfView.onCarChosen}" update="growl" /> </p:commandButton> </h:form> </ui:define> </ui:composition> 
+5
source share
1 answer

Please check that "selectCar" is a valid Navigation Rule in your faces-config that reference dialogplay.xhtml. (or use wittakarn solution, which is easier)

If so, make sure your config faces contain the Dialog Framework configuration (Page 519 in the Primfaces 5.1 User Guide, easy to skip):

 <application> <action-listener> org.primefaces.application.DialogActionListener </action-listener> <navigation-handler> org.primefaces.application.DialogNavigationHandler </navigation-handler> <view-handler> org.primefaces.application.DialogViewHandler </view-handler> </application> 
+10
source

Source: https://habr.com/ru/post/1209408/


All Articles