tomahawk t:inputFileUpload无效

时间:2012-07-07 14:53:11

标签: ajax jsf richfaces tomahawk

我开发了一个带有以下方面的jsf应用程序

  • 动态网络模块2.5
  • Java 5
  • JavaServer Faces 1.2
  • Rich Faces 3.3.2

我有一个带有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不可能一起工作吗?

提前致谢。

2 个答案:

答案 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">