Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jsf-2/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jsf 2 在JSF2.0复合文件中指定操作_Jsf 2_Composite Component - Fatal编程技术网

Jsf 2 在JSF2.0复合文件中指定操作

Jsf 2 在JSF2.0复合文件中指定操作,jsf-2,composite-component,Jsf 2,Composite Component,我想创建一个输出标记的复合组件。此标记将包装其他内容。我知道一个选择是编写自己的组件和渲染器。然而,我更愿意将其作为一个组合。我能预见的唯一问题是在单击我的标记时指定操作 有人知道是否可以在自定义组合上指定操作吗?定义组合组件时,可以指定组件是操作源: <cc:interface> <!-- ... --> <cc:actionSource name="myButton" targets="myButton"/> <!-- ... -->

我想创建一个输出
标记的复合组件。此标记将包装其他内容。我知道一个选择是编写自己的组件和渲染器。然而,我更愿意将其作为一个组合。我能预见的唯一问题是在单击我的
标记时指定操作


有人知道是否可以在自定义组合上指定操作吗?

定义组合组件时,可以指定组件是操作源:

<cc:interface>
  <!-- ... -->
  <cc:actionSource name="myButton" targets="myButton"/>
  <!-- ... -->
</cc:interface>

<cc:implementation>
  <!-- ... -->
  <h:commandButton id="myButton" value="My Button"/>
  <!-- ... -->
</cc:implementation>

这样,您就可以创建复合组件动作源,并且可以在组件中定义动作侦听器:

<my:customComponent id="component">
  <f:actionListener for="myButton" binding="#{myBean.action}"/>
</my:customComponent>

定义复合组件时,可以指定组件是操作源:

<cc:interface>
  <!-- ... -->
  <cc:actionSource name="myButton" targets="myButton"/>
  <!-- ... -->
</cc:interface>

<cc:implementation>
  <!-- ... -->
  <h:commandButton id="myButton" value="My Button"/>
  <!-- ... -->
</cc:implementation>

这样,您就可以创建复合组件动作源,并且可以在组件中定义动作侦听器:

<my:customComponent id="component">
  <f:actionListener for="myButton" binding="#{myBean.action}"/>
</my:customComponent>