首先,请原谅我的无知和无能为的是使用搜索引擎(一只鞋子被长期搜查,但找不到解决这一问题的任何满意答案)。
我采用了一种行动清单兼容方法:
@ManagedBean(name = "myBean")
@ViewScoped
class Bean{
public String myAction(ActionEvent event){
... = event.getComponent().getAttributes().get("something");
}
}
之后,我有这样的支部:
<composite:interface>
<composite:attribute name="actionBean" required="true"/>
<composite:attribute name="actionMethod" method-signature="void myAction(javax.faces.event.ActionEvent)" />
</composite:interface>
<composite:implementation>
<h:form>
<p:commandButton actionListener="#{cc.attrs.actionBean[cc.attrs.actionMethod]}">
<f:attribute name="something" value="somevalue" />
</p:commandButton>
</h:form>
</composite:implementation>
它被称为:
<namespace:myComponent actionBean="#{myBean}" actionMethod="myAction" />
我知道,这一呼吁并不奏效,我想知道它如何正确!
我的主要意图是,我只想有一个相对通用的支架(或许可以稍后再使用),它包含一个顿子。 在点击这个纽子时,一想通过一个物体(无简单明了!) 插图一只使用action=>. > >>,并通过
方法,即通过<代码>event.getComponent().getAttributes(......)接收物体。f:param
通过。 使用<代码>Listener
我认为,签署<代码>避免我的行动(javax.faces.event.ActionEvent)的问题是打破相关方法与部件的关联性? 是否普遍有可能以任何理由将某些成分(如果是,如何)割裂方法?
因此,我希望有可能找到解决办法,通过改变上述战略来解决一般问题,或者可能使用某种ice和不同的东西(一般而言,不喜欢使用任何 ha子或工作环绕,而是要利用框架的意图)。
Thanks if somebody would find the time to point me the way! In case this question already exists, would be nice to get to the related post and have this deleted.