java - 在struts1中上传文件

标签 java jsp file-upload struts

我想在struts1应用程序中上传文件。

目前的实现是使用文件,如下所示:

<html:file property="upload"/>

但是,如果从远程计算机访问应用程序,则不允许上传文件,因为此小部件仅传递文件名而不是整个文件。

最佳答案

仅使用 <html:file property="upload" / > 不会让您的应用程序上传文件。

要支持上传功能,您的表单必须具有 enctype="multipart/form-data"

<html:form action="fileUploadAction" method="post" enctype="multipart/form-data">
File : <html:file property="upload" /> 
<br/`>

<html:submit />
</html:form`> 

并实际从表单 bean 获取文件并按如下方式操作它

YourForm uploadForm = (YourForm) form;
FileOutputStream outputStream = null;
FormFile file = null;
try {
  file = uploadForm.getFile();
  String path = getServlet().getServletContext().getRealPath("")+"/"+file.getFileName();
  outputStream = new FileOutputStream(new File(path));
  outputStream.write(file.getFileData());
}
finally {
  if (outputStream != null) {
    outputStream.close();
  }
}

关于java - 在struts1中上传文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8255244/

相关文章:

javascript - 如何更改表单中列表项的顺序?

javascript - 使用 JavaScript 更改 JSP 中复选框的值

php - fopen() : Filename cannot be empty - Laravel 5 IIS 7

java - struts 2中的多个文件上传

java - 使用 Java Swings 和 mysql 自动填充表单

java - 根据输入的String值返回Class变量

java - 使用 JAXB 动态读取 XML

java - 未知错误 - 阵列适配器

java - 如何在 HTML 中将任意文本水平和垂直居中放置在图像上?

php - 如何将 form_validation 设置为 Codeigniter 中文件所需的?