环境:RichFaces 3.3.3 Final;Facelets 1.1.15;JBoss portletbridge 2.1.0 最终版;GateIn Portal 3.1.0 与 JBoss AS 5.1 和内置的 Mojarra JSF 1.2 捆绑在一起。
一些代码片段:filepage.xhtml:
<a4j:form id="fileForm">
<rich:fileUpload fileUploadListener="#{testBean.fileListener}"
acceptedTypes="txt" maxFilesQuantity="1" />
<!-- etc. -->
</a4j:form>
TestBean.java:
public void fileListener(UploadEvent e) throws IOException {
System.out.println("Entering the fileListener Method");
UploadItem item = e.getUploadItem();
File file = item.getFile();
// etc...
}
部署为独立 Web 应用程序时的结果与预期一样,组件显示,用户单击添加,浏览然后选择一个文件,文件添加到列表中,用户单击上传按钮,并显示“输入 fileListener 方法”行在控制台上(以及发生的其他事情)。
GateIn 上的结果:除监听器中的 sysout 和其他代码外,所有上述内容。似乎没有调用此方法。
我已经花了几天时间阅读 JBoss 社区论坛和一些 JIRA,看来我的问题并不新鲜。我尝试了我发现的每一个建议,但没有一个对我有用。此外,这些帖子都没有比 2010 年 1 月更新,从那时起,我的应用程序的所有组成部分都有新版本。
非常感谢您的帮助或指向最新和详细信息的指针。