Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ssis/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动作侦听器-双重行为_Jsf_Myfaces - Fatal编程技术网

JSF动作侦听器-双重行为

JSF动作侦听器-双重行为,jsf,myfaces,Jsf,Myfaces,我正在使用JSFs的ApacheMyFaces风格,并且我在操作侦听器中遇到了一些奇怪的行为 当我使用全局操作侦听器时,如下所示: <application> <view-handler>com.sun.facelets.FaceletViewHandler</view-handler> <el-resolver id="msgSrcResolver">com.personal.framework.utils.FacesELResolve

我正在使用JSFs的ApacheMyFaces风格,并且我在操作侦听器中遇到了一些奇怪的行为

当我使用全局
操作侦听器时,如下所示:

 <application>
  <view-handler>com.sun.facelets.FaceletViewHandler</view-handler>
  <el-resolver id="msgSrcResolver">com.personal.framework.utils.FacesELResolver</el-resolver>
  <message-bundle>resources.errors</message-bundle>
  <action-listener>com.personal.framework.listeners.MyActionListener</action-listener>
 </application>
这种使用
ActionListener
的方法没有按预期工作-它将调用
DepositorBean.postProcess
通过
MyActionListener
按我的意愿调用,但随后在MyActionListener之外再次调用
DepositorBean.postProcess

如何使用
CommandButton
中的
ActionListener
,而无需第二次单独调用
Action
(与使用全局
ActionListener
时的方式相同)


注意-我们使用
ActionListener
进行验证错误处理,因此所有
Action
方法都必须通过
ActionListener

调用,因此,将Spring Web流添加到应用程序后出现问题?@BalusC-否,Web流已经存在。我们的页面仍然可以工作,但是faces-config.xml文件中的
操作侦听器
行截获了Web流操作。其他人正在尝试修复配置,但这超出了我的知识范围,因此我正在制定备份计划(即删除全局侦听器,并根据需要将其添加到每个元素)。
<h:commandButton id="continue" forceId="true"
image="continue.gif"
action="#{depositBean.postProcess}"
value="Continue"> 
<f:actionListener type="com.personal.framework.listeners.MyActionListener" > </f:actionListener>
</h:commandButton>