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が必要です。
actionListener="#{myBean.myActionMethod}"
そして私の豆はのようなメソッドが必要です
public void myActionMethod(){}
h:form
私の周りp:toolbar
鬼ごっこ!
私のBeanはViewScopedです。
私の回避策は*.xhtml
ファイル
<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();}
これは私にとってはうまくいきますが、これは非常に汚いコードだと思います。
誰でも手伝ってくれる?
これを試して
Bean.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");
}
}
page.xhtml
<p:toolbar>
<p:toolbarGroup>
<p:commandButton action="#{bean.testButtonAction}"/>
<p:commandButton actionListener="#{bean.testButtonActionListener}"/>
</p:toolbarGroup>
</p:toolbar>