我开发了一个带有以下方面的jsf应用程序
我有一个带有t:inputFileUpload组件的页面。它工作正常,直到我添加ajax和富脸组件和taglibs到我的页面。如下: -
<%@ taglib uri="http://java.sun.com/jsf/html" prefix="h"%>
<%@ taglib uri="http://java.sun.com/jsf/core" prefix="f"%>
<%@ taglib uri="http://myfaces.apache.org/tomahawk" prefix="t"%>
<%@taglib uri="http://richfaces.org/a4j" prefix="a4j"%>
<%@taglib uri="http://richfaces.org/rich" prefix="rich"%>
...
<t:inputFileUpload...
我想问的是,这些taglib不可能一起工作吗?
提前致谢。
答案 0 :(得分:4)
只要您不通过ajax提交表单,它就可以正常工作。即使用<t:inputFileUpload>
无法通过ajax上传文件。因此,您需要确保通过同步(非ajax)请求提交表单。
您还应确保在 RichFaces'ExtensionsFilter
之前已在web.xml
中注册了战斧的org.ajax4jsf.Filter
,否则它将消耗multipart/form-data
在Tomahawk的ExtensionsFilter
获得机会之前请求。
或者,您可以删除Tomahawk的<t:inputFileUpload>
并使用RichFaces自己的<rich:fileUpload>
代替。它能够使用Flash模拟“ajax look-a-like”文件上传。
答案 1 :(得分:-1)
请确保您的表单中有“encrypeType”。
<h:form enctype="multipart/form-data">