我正尝试在下一个基于JSF的portlet中使用DojoFaces。我使用JSF 1.1和JSR 286 portlet部署在WPS 6.1上。
问题是,我使用的是with action属性,它应该调用JSF托管bean操作方法。但是,它不是。
<dojo:button id="myBtn" label="DOJOSubmit" attr="type: 'submit'" rendered="true"
action="#{myBean.myAction}"> </dojo:button>
有趣的是,我创建了一个phaseListener,只是为了检查当我点击按钮时会发生什么。我注意到,它经历了除了"调用应用程序"之外的所有阶段。如下所示,
[20/09/11 17:29:13:355 BST] 0000013a SystemOut O Before:RESTORE_VIEW 1
[20/09/11 17:29:13:355 BST] 0000013a SystemOut O Before:RESTORE_VIEW 1
[20/09/11 17:29:13:355 BST] 0000013a SystemOut O AFTER:RESTORE_VIEW 1
[20/09/11 17:29:13:355 BST] 0000013a SystemOut O AFTER:RESTORE_VIEW 1
[20/09/11 17:29:13:355 BST] 0000013a SystemOut O Before:APPLY_REQUEST_VALUES 2
[20/09/11 17:29:13:355 BST] 0000013a SystemOut O Before:APPLY_REQUEST_VALUES 2
[20/09/11 17:29:13:355 BST] 0000013a SystemOut O AFTER:APPLY_REQUEST_VALUES 2
[20/09/11 17:29:13:355 BST] 0000013a SystemOut O AFTER:APPLY_REQUEST_VALUES 2
[20/09/11 17:29:13:355 BST] 0000013a SystemOut O Before:PROCESS_VALIDATIONS 3
[20/09/11 17:29:13:355 BST] 0000013a SystemOut O Before:PROCESS_VALIDATIONS 3
[20/09/11 17:29:13:355 BST] 0000013a SystemOut O AFTER:PROCESS_VALIDATIONS 3
[20/09/11 17:29:13:355 BST] 0000013a SystemOut O AFTER:PROCESS_VALIDATIONS 3
[20/09/11 17:29:13:355 BST] 0000013a SystemOut O Before:UPDATE_MODEL_VALUES 4
[20/09/11 17:29:13:355 BST] 0000013a SystemOut O Before:UPDATE_MODEL_VALUES 4
[20/09/11 17:29:13:355 BST] 0000013a SystemOut O AFTER:UPDATE_MODEL_VALUES 4
[20/09/11 17:29:13:355 BST] 0000013a SystemOut O AFTER:UPDATE_MODEL_VALUES 4
[20/09/11 17:29:13:386 BST] 0000013a SystemOut O Before:RESTORE_VIEW 1
[20/09/11 17:29:13:386 BST] 0000013a SystemOut O Before:RESTORE_VIEW 1
[20/09/11 17:29:13:402 BST] 0000013a SystemOut O AFTER:RESTORE_VIEW 1
[20/09/11 17:29:13:402 BST] 0000013a SystemOut O AFTER:RESTORE_VIEW 1
[20/09/11 17:29:13:402 BST] 0000013a SystemOut O Before:RENDER_RESPONSE 6
[20/09/11 17:29:13:402 BST] 0000013a SystemOut O Before:RENDER_RESPONSE 6
[20/09/11 17:29:13:402 BST] 0000013a SystemOut O AFTER:RENDER_RESPONSE 6
[20/09/11 17:29:13:402 BST] 0000013a SystemOut O AFTER:RENDER_RESPONSE 6
谁能给我解释一下为什么会这样?的问候惠普
感谢Dojofaces的Ganesh,我做对了。
问题是,我没有像下面那样将输入组件与托管bean绑定值,这应该避免。
<dojo:form id="dojoForm">
<dojo:textBox id="dftextbox" attr="" value="" />
<dojo:button id="tundraButton" label="DOJOSubmit" attr="type: 'submit'" rendered="true" action="#{myBean.myAction}">
</dojo:button>
</dojo:form>
因此,正如建议的那样,我将textBox与托管bean的值附加在一起,如下所示,
<dojo:textBox id="dftextbox" attr="" value="#{myBean.myText}" />
就是这样。
希望对大家有所帮助!