【发布时间】:2012-04-04 20:14:13
【问题描述】:
我正在尝试使用简单的表单上传文件,但它总是返回到同一页面。要查找错误或任何错误,我只想在输出中写入我上传的文件的名称。一旦我能得到文件名,我想我可以处理如何处理整个文件。所以这是我的代码:
<h:form enctype="multipart/form-data">
<h:outputText value="Argazkia: "/>
<p:fileUpload value="#{jokoBerriaController.file}" mode="simple"/>
<p:commandButton value="Bidali" ajax="false" actionListener="#{jokoBerriaController.upload()}"/>
</h:form>
控制器:
import javax.faces.bean.ManagedBean;
import org.primefaces.model.UploadedFile;
@ManagedBean
public class jokoBerriaController {
public static UploadedFile file;
public UploadedFile getFile() {
return file;
}
public void setFile(UploadedFile file) {
this.file = file;
}
public void upload() {
System.out.println("file " + file.getFileName());
}
}
我已经添加了
<filter>
<filter-name>PrimeFaces FileUpload Filter</filter-name>
<filter-class>org.primefaces.webapp.filter.FileUploadFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>PrimeFaces FileUpload Filter</filter-name>
<servlet-name>Faces Servlet</servlet-name>
</filter-mapping>
在我的 web.xml 文件中,但我还没有添加 commons-io 和 commons-fileupload 库。我读过我必须将下一个代码放在我的 pom.xml 文件中,但我找不到该文件。
<dependency>
<groupId>commons-fileupload</groupId>
<artifactId>commons-fileupload</artifactId>
<version>1.2.2</version>
</dependency>
<dependency>
<groupId>commons-io</groupId>
<artifactId>commons-io</artifactId>
<version>1.4</version>
</dependency>
感谢您的帮助。
PD:对不起我的英语。
【问题讨论】:
-
属性“allowTypes”限制文件类型。另请参阅
的其他属性。
标签: java jsf file-upload primefaces