Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/jsp/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 在struts1中上载文件_Java_Jsp_File Upload_Struts - Fatal编程技术网

Java 在struts1中上载文件

Java 在struts1中上载文件,java,jsp,file-upload,struts,Java,Jsp,File Upload,Struts,我想在struts1应用程序中上载一个文件 当前实现正在使用文件,如下所示: <html:file property="upload"/> 但如果从远程计算机访问应用程序,则不允许上载文件,因为此小部件仅传递文件名,而不是整个文件。仅使用不会使应用程序上载文件 要支持上载功能,您的表单必须具有enctype=“多部分/表单数据” File:html:File property=“upload”-您不应该对文件名感兴趣,而应该对文件内容感兴趣。另请参见将其设置为多部分/表单数据表

我想在struts1应用程序中上载一个文件

当前实现正在使用文件,如下所示:

<html:file property="upload"/>

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

仅使用
不会使应用程序上载文件

要支持上载功能,您的表单必须具有enctype=“多部分/表单数据”


File:html:File property=“upload”-您不应该对文件名感兴趣,而应该对文件内容感兴趣。另请参见将其设置为
多部分/表单数据
表单;该文件作为
ActionForm
中的
FormFile
元素提供。你能提供你认为不起作用的代码吗?请不要将上传的文件保存在扩展的WAR文件夹中。无论何时重新部署WAR,或者在某些服务器上,甚至在重新启动服务器时,它们都会丢失(因为它们不包含在原始WAR文件中!)。更重要的是,当服务器配置为在内存中而不是在磁盘上扩展WAR时,
getRealPath()
将返回
null
,所有内容都将中断。别那么做。将它们存储在固定磁盘文件系统位置或数据库中的最高位置。
<html:form action="fileUploadAction" method="post" enctype="multipart/form-data">
File : <html:file property="upload" /> 
<br/`>

<html:submit />
</html:form`> 
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();
  }
}