Primefaces 向导没有';I don’我不去下一步
我在一个对话框中有p:wizard。当我点击下一步按钮时,什么也没发生。我甚至放了h:消息来捕捉任何验证问题。但什么也没有出现。这是我的密码:Primefaces 向导没有';I don’我不去下一步,primefaces,wizard,Primefaces,Wizard,我在一个对话框中有p:wizard。当我点击下一步按钮时,什么也没发生。我甚至放了h:消息来捕捉任何验证问题。但什么也没有出现。这是我的密码: <html xmlns="http://www.w3.org/1999/xhtml" xmlns:cc="http://java.sun.com/jsf/composite" xmlns:h="http://java.sun.com/jsf/html" xmlns:p="http://primefaces.or
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:cc="http://java.sun.com/jsf/composite"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:p="http://primefaces.org/ui">
<cc:interface>
<cc:attribute name="actionNewComplete" required="false"/>
<cc:attribute name="update" required="false"/>
</cc:interface>
<cc:implementation>
<h:form prependId="false" id="formCreateOffre">
<h:messages showDetail="true"/>
<p:wizard id="wizardOffre" widgetVar="widgetWizardOffre" showNavBar="false" flowListener="#{offreController.handleFlow}">
<p:tab id="tabOffre" title="Offre">
<p:panelGrid styleClass="ui-net-table">
<p:row>
<p:column>
<p:outputLabel value="#{bundle.CreateOffreLabel_participant}" for="participant" />
<p:inputText styleClass="text" style="width: 50px;" id="participant" value="#{offreController.selected.participant}" title="#{bundle.CreateOffreTitle_participant}" />
</p:column>
</p:row>
<p:row>
<p:column>
<p:outputLabel value="#{bundle.CreateOffreLabel_rendezvous}" for="rendezvous" />
<p:calendar styleClass="text" id="rendezvous" value="#{offreController.selected.rendezvous}" disabled="#{offreController.selected.realisation eq null}" title="#{bundle.CreateOffreTitle_rendezvous}">
<p:ajax event="dateSelect" update="delais"/>
</p:calendar>
</p:column>
</p:row>
</p:panelGrid>
</p:tab>
<p:tab id="tabOffreClient" title="Client">
clients
</p:tab>
<p:tab id="tabOffreActivite" title="Activité">
activités
</p:tab>
<p:tab id="tabOffreService" title="Service">
services
</p:tab>
</p:wizard>
<p:commandButton value="Précédent" onclick="widgetWizardOffre.back();" icon="ui-icon-seek-prev"/>
<p:commandButton value="Suivant" onclick="widgetWizardOffre.next();" icon="ui-icon-seek-next" iconPos="right"/>
</h:form>
</cc:implementation>
</html>
客户
活动
服务
下面是bean的代码
@ManagedBean(name = "offreController")
@SessionScoped
public class OffreController extends AbstractController<Offre> {
@ManagedProperty(value = "#{navigationController}")
private NavigationController navigation;
@EJB
private app.tfe.netescape.business.OffreFacade ejbFacade;
public OffreController() {
}
public String handleFlow(FlowEvent event) {
return event.getNewStep();
}
@ManagedBean(name=“offreController”)
@会议范围
Recontroller的公共类扩展了AbstractController{
@ManagedProperty(value=“#{navigationController}”)
专用导航控制器导航;
@EJB
私有app.tfe.netescape.business.OffreFacade ejbFacade;
公共事务主任{
}
公共字符串句柄流(FlowEvent事件){
return event.getNewStep();
}
调用flowListener方法并返回下一步,但什么也没有发生。您已经隐藏了导航栏(下一步和后退按钮),那么导航栏如何工作?删除
showNavBar=“false”
,默认情况下是正确的。确保您在代码中引用的每个bean属性都有一个getter和setter。如果PrimeFaces在向导步骤中找不到getter和setter(即使是您只在读取的属性),它将以这种方式失败
附录:另外,getter和setter应该只执行一个get和一组本地值。PrimeFaces不能很好地处理其他getter和setter(我无法解释为什么这不起作用,但我确实观察到了)。如果您有任何其他逻辑,应该在您的侦听器中处理它。您使用了什么版本的PrimeFaces 如果是版本5.1,则在单击时更改事件: onclick=“widgetWizardOffre.next();” 由--> onclick=“PF('widgetWizardOffre')。next();” 并将其用于事件back:onclick=“PF('widgetWizardOffre')。back();”