[英]impossible to send multipart/form-data
我做了一个申请,它收到两部分:一张图片和一些文字。 代码的开头是:
@WebServlet("/App")
@MultipartConfig(fileSizeThreshold=1024*1024*10, // 10 MB
maxFileSize=1024*1024*50, // 50 MB
maxRequestSize=1024*1024*100) // 100 MB
public class App extends HttpServlet {
private static final long serialVersionUID = 205242440643911308L;
private static final String PREFIX = "stream2file";
private static final String SUFFIX = ".tmp";
private static final String UPLOAD_DIR = "uploads";
protected void doPost(HttpServletRequest req,
HttpServletResponse resp) throws ServletException, IOException {
JsonObject servletResponse = new JsonObject();
System.out.println("------------------------------");
System.out.println(req.getContentType());
System.out.println("------------------------------");
String text = null;
String uuid = UUID.randomUUID().toString();
Properties props = new Properties();
File dbPropsFile = new File("/config.properties");
FileReader fileReader = new FileReader(dbPropsFile);
props.load(fileReader);
for (Part part : req.getParts()) {
if(getFileType(part).equals("image")) {
代码失败
for (Part part : req.getParts()) {
如果我使用mvn jetty:run
运行它,它完全可以正常工作,但是当部署到服务器时,它就会崩溃。 请帮忙!!!
当尝试做System.out.println(req.getContentType());
这在 Tomcat 和 Jetty 服务器上为 null,但它在mvn jetty:run
上带有预期值
如果HttpServletRequest.getContentType()
为 null,则您的请求不满足@MultipartConfig
的要求,后者要求Content-Type
值为multipart/form-data
首先确保您的表单在网络上正确提交。
也许在您的项目中添加一些单元测试以确保 servlet 的行为符合预期,让您将注意力集中在表单提交/请求方面。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.