在<rich:popupPanel />
我有一个<rich:fileUpload />
,fileUploadListener
定义为#{assemblyMB.listener}。此侦听器方法在托管bean上定义为:
public void listener(FileUploadEvent event) throws Exception {
System.out.println("listener");
}
我在JSF页面上的:
<rich:fileUpload id="popupFileUpload"
fileUploadListener="#{assemblyMB.listener}"
onuploadcomplete="#{rich:component('popup')}.hide(); return false;"
</rich:fileUpload>
在托管bean上,我已经声明了注释@ManagedBean(name =“assemblyMB”)。
我打算在上传文件时访问托管bean上的方法,但我没有这样做。我不明白为什么会这样。
有人可以在这里给我一个灯吗?提前谢谢,
gtludwig
答案 0 :(得分:0)
假设RichFaces 4.0,您需要确保将父<h:form>
设置为将请求正文编码为multipart/form-data
。
<h:form enctype="multipart/form-data">
这样就可以正确上传文件,并且当上传到达服务器端时,应该调用监听器方法。