我真的被这个问题难住了。我们有richfaces 项目。我想使用标签而不是标签,因为我不喜欢将文件传递给 bean 的方式。我们的项目运作良好。我相信我在 POM 中有所有需要的依赖,但我什至在通过How to setup project to support h:inputfile in JSF 2.2 @BalusC 阅读本文后手动添加了一些,所以我添加了
<dependency>
<groupId>javax.faces</groupId>
<artifactId>jsf-impl</artifactId>
<version>1.2_15</version>
</dependency>
<dependency>
<groupId>javax.faces</groupId>
<artifactId>jsf-api</artifactId>
<version>2.1</version>
</dependency>
这是我的页面:
<ui:composition xmlns="http://www.w3.org/1999/xhtml"
xmlns:ui="http://java.sun.com/jsf/facelets"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:f="http://java.sun.com/jsf/core"
xmlns:rich="http://richfaces.org/rich"
xmlns:a4j="http://richfaces.org/a4j"
xmlns:b="http://richfaces.org/sandbox/bootstrap"
template="/template.xhtml">
<ui:define name="metadata">
</ui:define>
<ui:define name="content">
<h:inputHidden id="active-bean-name" value="dataloader" />
<h:form>
<h:form id="form" enctype="multipart/form-data">
<rich:fileUpload></rich:fileUpload>
<h:inputFile id="file" value="#{DataLoaderBean.file}"/>
<h:commandButton value="Upload"
action="#{DataLoaderBean.upload}"/>
</h:form>
</h:form>
</ui:define>
</ui:composition>
任何帮助将不胜感激。