考虑这段代码,它依赖于JSF2和RichFaces 4.5.0作为使用过的组件库。
// some non-relevant attributes are omitted
<rich:fileUpload fileUploadListener="#{bean.uploadListener}">
<a4j:ajax event="uploadcomplete" render="imagePanel" immediate="true" />
</rich:fileUpload>
表单中的给定标记提交整个表单。例如,这不是我预期的行为。我更喜欢组件只提交自身的表单属性,并跳过同一表单中的其他表单值,如RichFaces 3中的ajaxSingle。
我对这个主题做了一些研究,但没有找到任何结论如何管理fileUpload组件的部分表单提交,特别是因为这个标签没有执行属性,就像在其他几个jsf ajax组件中一样。
我很感激在这种情况下的任何帮助,特别是如何管理fileUpload组件只将其自己的表单值提交给服务器。
答案 0 :(得分:1)
尝试execute
的{{1}}属性。
来自docs:
执行:将参与&#34;执行&#34;请求处理生命周期的一部分。可以是单个id,空格或逗号分隔的Id列表,也可以是评估数组或集合的EL表达式。任何关键字&#34; @ this&#34;,&#34; @ form&#34;,&#34; @ all&#34;,&#34; @ none&#34;,&#34; @ region& #34;可以在标识符列表中指定。一些组件使用其他关键字
我认为这正是你所需要的。
更多信息:Richfaces docs