首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >WebLogic10.3上的HttpServletRequest输入流空

WebLogic10.3上的HttpServletRequest输入流空
EN

Stack Overflow用户
提问于 2014-09-01 03:17:47
回答 1查看 490关注 0票数 0

我正在使用Apache FileUpload FileUpload来接收文件上传。除了Weblogic 10.3.6之外,下面的方法对于所有测试的应用服务器都很好,包括WebLogic12.1.3。

parseRequest方法返回一个空列表,该列表指示HttpServletRequest inputstream为空。我只是在寻找如何在WebLogic10.3.6服务器上工作呢?

代码语言:javascript
复制
@POST
@Path("upload/{environment}/{queueName}")
@Consumes(MediaType.MULTIPART_FORM_DATA)
@Produces({MediaType.APPLICATION_XML,MediaType.APPLICATION_JSON})
public Message putQueueFile(
        @PathParam("environment") String environmentName,
        @PathParam("queueName") String queueName,
        @Context HttpServletRequest req) {

    if (ServletFileUpload.isMultipartContent(req)) {
        log.debug("putQueueFile:: Multipart form submission received");
        // Create a factory for disk-based file items 
        DiskFileItemFactory  fileItemFactory = createDiskFileItemFactory(req.getSession().getServletContext());
        ServletFileUpload uploadHandler = new ServletFileUpload(fileItemFactory);
        uploadHandler.setFileSizeMax(MAX_UPLOAD_FILE_SIZE);

        try {
            /*
             * Parse the request
             */
            List items = uploadHandler.parseRequest(req);
            log.debug(String.format("putQueueFile:: Looping through %d items", items.size()));
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-09-01 06:05:25

最后找到了它的底端,这是我们在10.3中使用的web.xml文件的一个问题。具体来说,我们为请求启用了jersey日志记录。

代码语言:javascript
复制
<init-param>
    <param-name>com.sun.jersey.spi.container.ContainerRequestFilters</param-name>
    <param-value>com.sun.jersey.api.container.filter.LoggingFilter</param-value>
</init-param>

这导致请求被读取,因此导致空输入流。一旦禁用了请求的日志记录,错误就被解决了。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/25598409

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档