我正在编写一个Web应用程序,我想将文件上传到servlet。 我读到我可以使用ServletFileUpload.parseRequest(请求) 它适用于一台计算机。 但是当我尝试在另一台计算机上运行代码时,我得到一个错误,该函数需要RequestContext:ServletFileUpload.parseRequest(RequestContext)
在函数与HttpServletRequest一起使用的计算机上的我看到了RequestContext的函数。但我不使用它
还有另一种将文件上传到servlet的方法吗?
答案 0 :(得分:4)
你可以尝试:
new ServletFileUpload().parseRequest(new ServletRequestContext(request));
此更改适用于最新的apache tomcat(至少在7.0.70,我正在使用)。
答案 1 :(得分:0)
您是否考虑过使用实现Servlet 3.0的容器(例如Tomcat 7+)?该版本的规范已经存在了几年,并且已经添加了用于上传文件的API。
答案 2 :(得分:0)
确保两个环境都具有相同的Apache fileupload jar。我正在使用commons-fileupload-1.2.2并且它有两种方法
ServletFileUpload.parseRequest(HttpServletRequest请求)和ServletFileUpload.parseRequest(RequestContext context)