Jsf 未调用Primefaces 5文件上载处理程序
我正在用JSF和PrimeFaces5.0开发一个Web项目。虽然有很多关于这个问题的论坛,但我找不到文件上传的解决方案。问题是,当我上传文件时,永远不会调用文件处理程序方法 这是我的代码: HTML页面:Jsf 未调用Primefaces 5文件上载处理程序,jsf,file-upload,primefaces,Jsf,File Upload,Primefaces,我正在用JSF和PrimeFaces5.0开发一个Web项目。虽然有很多关于这个问题的论坛,但我找不到文件上传的解决方案。问题是,当我上传文件时,永远不会调用文件处理程序方法 这是我的代码: HTML页面: BEAN: @组件(“registrosBean”) @视域 @ManagedBean 公共类RegistroBean扩展GenericBean实现可序列化{ 公共无效handleFileUpload(FileUploadEvent事件){ System.out.println(“一些控
BEAN:
@组件(“registrosBean”)
@视域
@ManagedBean
公共类RegistroBean扩展GenericBean实现可序列化{
公共无效handleFileUpload(FileUploadEvent事件){
System.out.println(“一些控制台消息”);
}
公共无效协同档案(){
System.out.println(“一些控制台消息”);
}
公共上传文件;
/**
*@返回文件
*/
公共上载文件getFile(){
返回文件;
}
/**
*@param file要设置的文件
*/
公共void setFile(上传文件){
System.out.println(“一些控制台消息”);
this.file=文件;
}
}
web.xml:
UNAC
上下文配置位置
类路径:application-context.xml
主题
亚里士多德
org.springframework.web.context.ContextLoaderListener
org.springframework.web.context.request.RequestContextListener
pages/login.jsf
状态保存方法:“客户端”或“服务器”(=默认值)。参见JSF规范2.5.2
javax.faces.STATE_保存方法
客户
javax.servlet.jsp.jstl.fmt.localizationContext
资源.应用
com.sun.faces.config.ConfigureListener
PrimeFaces文件上载筛选器
org.primefaces.webapp.filter.FileUploadFilter
阈值大小
10240
PrimeFaces文件上载筛选器
Facesservlet
向前地
Facesservlet
javax.faces.webapp.FacesServlet
1.
Facesservlet
*.xhtml
Facesservlet
/面孔/*
Facesservlet
*.jsf
Facesservlet
*.面孔
关于我的项目的一些传统信息
- JSF2.1
- IDE:Eclipse
- JBoss7.1
关于这个问题,我已经咨询了很多论坛很多天,但我找不到解决方案,任何建议都会有帮助。谢谢首先尝试简化web.xml上的过滤器。试试这个
<filter>
<filter-name>PrimeFaces FileUpload Filter</filter-name>
<filter-class>org.primefaces.webapp.filter.FileUploadFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>PrimeFaces FileUpload Filter</filter-name>
<servlet-name>Faces Servlet</servlet-name>
</filter-mapping>
PrimeFaces文件上载筛选器
org.primefaces.webapp.filter.FileUploadFilter
PrimeFaces文件上载筛选器
Facesservlet
而且您不需要WEB-INF\lib上的公共io库,因为您已经在使用PF5了。删除它们。为什么文件上载中有咆哮?我刚刚删除了咆哮消息,感谢可能与spring的使用有关?删除
@Component
,并在fileUploadListener
属性中正确重写EL。我刚刚删除了@Component
注释,但什么也没发生,我将注释更改为:@ViewScoped
@ManagedBean(name=“registrosBean”)