gpt4 book ai didi

Java Servlet 应用程序文件上传失败

转载 作者:行者123 更新时间:2023-12-02 09:07:28 24 4
gpt4 key购买 nike

这个问题在这里已经有了答案:





How can I upload files to a server using JSP/Servlet?

(14 个回答)


2年前关闭。




我正在尝试使用 java servlet 创建文件上传并存储到本地目录。我添加了 cos.jr 文件。我在 roor 目录中添加了一个新文件夹名称是新的。但是当我点击按钮文件上传它给我以下错误。

java.lang.IllegalArgumentException: 不是目录: d:/new

这是 html 。

<html>  
<body>
<form action="FileUploadServlet" method="post" enctype="multipart/form-data">
Select File:<input type="file" name="fname"/><br/>
<input type="submit" value="upload"/>
</form>
</body>
</html>

这是 servlet 代码。
package Servlet.org;
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import com.oreilly.servlet.MultipartRequest;


public class FileUploadServlet extends HttpServlet {

protected void processRequest(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html;charset=UTF-8");

}


@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
processRequest(request, response);
response.setContentType("text/html");
PrintWriter out = response.getWriter();

MultipartRequest m=new MultipartRequest(request,"d:/JAVAServlet/new");
out.print("successfully uploaded");
}


@Override
public String getServletInfo() {
return "Short description";
}// </editor-fold>

}

这是我单击上传按钮时的结果。

enter image description here

最佳答案

我认为这可能是路径或一些权限问题..不知道为什么它显示为
d:/new而不是 d:/JAVAServlet/new .试试下面的代码,看看是否创建了目录。

 public static void main(String[] args) {
String saveDirectory = "d:" + File.separator + "JAVAServlet" + File.separator+ "new";
File dir = new File(saveDirectory);

if(!dir.isDirectory()){
throw new IllegalArgumentException("Not a directory: " + saveDirectory);
}
}

目录创建权限或路径可能有问题。
或尝试使用 File.separator而不是 / "d:" + File.separator + "JAVAServlet" + File.separator+ "new"

关于Java Servlet 应用程序文件上传失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59696315/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com