我已经关注了BalusC的this教程for FileUpload。但是setter没有被称为
答案 0 :(得分:3)
这可能有以下原因:
enctype="multipart/form-data"
上缺少<h:form>
属性。这是必须的,以便能够将文件发送到服务器。
ExtensionsFilter
中缺少web.xml
或未正确映射FacesServlet
的servlet名称。这是必需的,以便能够解析multipart/form-data
请求。
在 ExtensionsFilter
之前,请求 - 响应链中还有另一个过滤器,它已经预先解析了multipart / form-data请求。例如,当您使用RichFaces4时,此类过滤器将自动加载,您无需在web.xml
中声明它。请求主体只能被解析一次,因此ExtensionsFilter
会在这样的另一个过滤器之后收到空请求。
在 ExtensionsFilter
之前,请求 - 响应链中有另一个过滤器,它已完全跳过ExtensionsFilter
,例如转发或重定向请求。 / p>