不会触发fileUploadListener方法。 我正在使用Primefaces展示中的代码:
这是我的jsf代码:
<h:form enctype="multipart/form-data">
<p:fileUpload mode="simple" value="#{uploadBean.file}" />
<p:commandButton value="Upload" action="#{uploadBean.upload}" ajax="false" />
</h:form>
这是我的bean代码:
@ManagedBean(name="uploadBean")
public class UploadBean {
private UploadedFile file;
public UploadedFile getFile() {
return file;
}
public void setFile(UploadedFile file) {
this.file = file;
}
public void upload() {
System.out.println("--->tipofile"+ file);
if(file != null) {
FacesMessage message = new FacesMessage("Succesful", file.getFileName() + " is uploaded.");
FacesContext.getCurrentInstance().addMessage(null, message);
}
}
有什么不对吗?我还没有配置任何xml,因为我目前使用的是Primefaces 5.2
修改 之前曾问过同样的问题。由于没有一个答案可以解决我的问题,我认为这可能与PF版本I&#39; m使用有关 How to use PrimeFaces p:fileUpload? Listener method is never invoked or UploadedFile is null
EDIT2: 按照重复问题中的建议尝试调试我注意到: 网络部分很好。 FileUploadRenderer#decode()未被调用。不使用enctype =&#34; multipart / form-data&#34;调用我的Upload()方法。我现在试着了解为什么不使用enctype =&#34; multipart / form-data&#34;来调用上传。