Primefaces p: commandButton с действием не вызывается
у меня есть некоторые проблемы с Primefaces 3.2 и JSF 2.1.
мой код такой:
<p:toolbar id="jeditortoolbar" styleClass="jeditortoolbar">
<p:toolbarGroup align="left" height="25" style="height:25px">
<p:commandButton type="button" title="#{msg.beenden}"/>
<p:commandButton type="button" title="#{msg.neu}"/>
</p:toolbarGroup>
</p:toolbar>
когда я смотрю на Primefaces Showcase мой p: commandButton need
actionListener="#{myBean.myActionMethod}"
и моему Бобу нужен такой метод, как
public void myActionMethod(){}
у меня есть h:form
вокруг p:toolbar
тег!
мой Бин является ViewScoped.
мое решение В
<p:commandButton type="button" title="#{msg.neu}" onclick="addNewEmptyFile()"/>
<p:remoteCommand name="addNewEmptyFile" update=":codeTabForm">
<f:setPropertyActionListener value="#{true}" target="#{myBean.myEvent}"/>
</p:remoteCommand>
В MyBean.java
private String myEvent;
public void setMyEvent(String value){ myActionMethod();}
этот работает для меня, но я думаю, что это очень грязный код.
все могут мне помочь?
1 ответов
попробуй такое
бобовые.java
@ManagedBean
@ViewScoped
public class Bean {
public String testButtonAction() {
System.out.println("testButtonAction invoked");
return "anotherPage.xhtml";
}
public void testButtonActionListener(ActionEvent event) {
System.out.println("testButtonActionListener invoked");
}
}
страница.код XHTML
<p:toolbar>
<p:toolbarGroup>
<p:commandButton action="#{bean.testButtonAction}"/>
<p:commandButton actionListener="#{bean.testButtonActionListener}"/>
</p:toolbarGroup>
</p:toolbar>