【发布时间】:2012-12-16 04:31:58
【问题描述】:
我想在我的 jboss 7 Web 应用程序中使用 primefaces 文件上传控件。由于我不使用任何 web.xml(Java EE 6 不需要),我如何指定使文件上传正常工作所需的过滤器?我应该为此创建一个 web.xml 还是可以使用注释代替?
提前谢谢你!
【问题讨论】:
标签: file-upload jsf-2 primefaces jboss7.x servlet-filters
我想在我的 jboss 7 Web 应用程序中使用 primefaces 文件上传控件。由于我不使用任何 web.xml(Java EE 6 不需要),我如何指定使文件上传正常工作所需的过滤器?我应该为此创建一个 web.xml 还是可以使用注释代替?
提前谢谢你!
【问题讨论】:
标签: file-upload jsf-2 primefaces jboss7.x servlet-filters
从技术上讲,您确实应该自己创建一个web.xml 文件。这并不难,只需使用以下启动模板在/WEB-INF/web.xml 中创建一个文件:
<?xml version="1.0" encoding="UTF-8"?>
<web-app
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://java.sun.com/xml/ns/javaee"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"
version="3.0">
<!-- Your config here. -->
</web-app>
如果您真的很认真并且对“XML 样板”有很大的反感,那么您总是可以自制一个过滤器类,它使用所需的 @WebFilter 注释扩展 PrimeFaces 文件上传过滤器。
package com.example;
import javax.servlet.annotation.WebFilter;
import org.primefaces.webapp.filter.FileUploadFilter;
@WebFilter("*.jsf") // Or @WebFilter(servletNames={"Faces Servlet"})
public class AnnotatedPrimeFacesFileUploadFilter extends FileUploadFilter {
// NOOP.
}
【讨论】:
web.xml。
<url-pattern>/*</url-pattern> 替换<servlet-name>Faces Servlet</servlet-name>。谁能解释为什么我需要进行此修改?谢谢