java - Servlet 中的 @MultipartConfig 配置元素在存在 Filter 的情况下是否毫无用处?

标签 java servlets java-ee-7

我已经配置了一个这样的 servlet:

@WebServlet(name = "TestServlet", urlPatterns = {"/test"})
@MultipartConfig(location = "C://test",
                 fileSizeThreshold=1024*1024*10,    // 10 MB
                 maxFileSize=1024*1024*50,          // 50 MB
                 maxRequestSize=1024*1024*100)      // 100 MB
public class TestServlet extends HttpServlet {

但是,我不确定当过滤器在servlet之前处理请求时,fileSize和requestSize“安全限制”是否变得无用(我在某处读到过滤器请求处理不一定在资源之前,我可能是错的这个)。

过滤器配置非常简单:

@WebFilter(filterName = "TestFilter",
           description = "TheTestFilter",
           urlPatterns = { "*.any" })
public class TestController implements Filter {

过滤器实现将包含无状态安全凭证验证。

感谢您的关注!

问候。

最佳答案

好吧,我想这是一个愚蠢的问题。这里的技巧是如何处理过滤器中的 ServletRequest 对象。只要我不尝试使用 getInputStream() 或 getReader() 读取请求正文,MultipartConfig 选项就应该按预期工作。不知何故,我记得几年前通过尝试进入消息正文而不是将控制权转移到另一个 Web 组件而遇到过这种情况。

这里有一些 documentation .

关于java - Servlet 中的 @MultipartConfig 配置元素在存在 Filter 的情况下是否毫无用处?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23521195/

相关文章:

Java 8 泛型兼容性

java - 如何在 JSP 页面中打印错误堆栈跟踪?

java - 在 ArrayList 中按日期对 ArrayList 列表进行排序

java - 整理器加比较器

java - 使用扫描仪获取用户输入

Java统计字符串中数字、特殊字符和字母的变化次数

java - 如何在 File 类中提供相对路径来上传任何文件?

java - Http Servlet 请求在读取一次后从 POST 正文中丢失参数

java - Wildfly TimerService 不满足依赖关系

java - ManagedExecutorService 从 1.0 开始?