我正在使用primefaces绑定,我正在尝试将actionListener添加到托管bean但我不知道该怎么做。
当我使用
时commandButton.setActionListener(MethodBinding b);
这种方法已被弃用,有人可以帮我解决这个问题吗?
答案 0 :(得分:0)
不推荐使用方法setActionListener
。这已由addActionListener(javax.faces.event.ActionListener).
因此,您应该使用addActionListener
代替。
XHTML
<h:body>
<h:form>
<p:commandButton value="execute" binding="#{buttonView.button}"/>
</h:form>
</h:body>
managedbean
/**
*
* @author Wittakarn
*/
@SessionScoped
@ManagedBean(name = "buttonView")
public class ButtonView implements Serializable{
private CommandButton button;
public CommandButton getButton() {
return button;
}
public void setButton(CommandButton button) {
this.button = button;
}
@PostConstruct
public void init(){
button = new CommandButton();
button.addActionListener(new CommandButtonActionListener());
}
}
CommandButtonActionListener.java
/**
*
* @author Wittakarn
*/
public class CommandButtonActionListener implements ActionListener{
@Override
public void processAction(ActionEvent event) throws AbortProcessingException {
System.out.println("execute");
}
}