我正在使用 Glassfish 3.1.2.2 和 JSF Mojarra 2.1.6。
我有以下 Facelets 页面:
<h:form>
<h:commandLink value="link">
<f:actionListener binding="#{backingBean.someMethod(1)}"/>
</h:commandLink>
</h:form>
以及以下支持bean:
@RequestScoped
@ManagedBean
public class BackingBean {
public void someMethod(int i) {
System.out.println("It was called: " + i);
}
}
当我单击该链接时,“信息:它被称为:1”出现在控制台中。
文档binding
内容如下:
库: http: //xmlns.jcp.org/jsf/core,http : //java.sun.com/jsf/core(Jsf核心)
标签:actionListener
捆绑
计算结果为实现 javax.faces.event.ActionListener的对象的值绑定表达式。[强调我的]
此外,这个问题的公认答案指出,不可能f:actionListener
调用任意方法。
如果不支持,为什么要调用支持 bean 方法?