【问题标题】:How to change the maximum size of the file uploaded Java Post如何更改上传的文件的最大大小 Java Post
【发布时间】:2016-10-07 17:23:27
【问题描述】:

我收回了同事的程序。

他做了方法(这个程序允许在服务器上上传文件):

protected String uploadFile(File inputFile, String uuidFile) throws IOException,
        ClientProtocolException {
    HttpPost post = new HttpPost(new StringBuilder()
            .append("http://xxxxxxxxxxxxx/FileServlet/").append("/uploadFile")
            .toString());
    post.addHeader("UuidFile", uuidFile);

    MultipartEntityBuilder builder = MultipartEntityBuilder.create();
    builder.setMode(HttpMultipartMode.BROWSER_COMPATIBLE);
    builder.addPart("file", new FileBody(inputFile));
    HttpEntity httpEntity = builder.build();

    post.setEntity(httpEntity);

    CloseableHttpClient client = HttpClients.createDefault();
    HttpResponse response = null;
    try {
        response = client.execute(post);

        if (response.getStatusLine().getStatusCode() == 200) {
            Pattern p = Pattern.compile("File uploaded into (.*)</h2>");
            String messageErreur = IOUtils.toString(response.getEntity().getContent());
            System.out.println(messageErreur);
            Matcher m = p.matcher(messageErreur);
            if (m.find()) {
                return m.group(1);
            }
        } else {
            throw new RuntimeException(response.getStatusLine().getStatusCode() + ": " + new String(IOUtils.toByteArray(response.getEntity().getContent())));
        }
        return null;
    } finally {
        client.close();
    }
}

控制台中的错误是

出现错误:请求被拒绝,因为它的大小 (68142301) 超过配置的最大值 (52428800)

但是我不知道如何增加上传文件的最大大小...

你有什么想法吗?

谢谢, 阿诺

【问题讨论】:

  • 服务器是你的吗?
  • 服务器是DEV服务器。我没有uploadFile端服务器的程序。但是,我在 Tomcat/webapp 中看到了服务器的战争和相关的剧目(包含 WEB-INF、META-INF)。我已经更改了目录 WEB-INF 中的 web.xml,添加了您的建议,但它不起作用......它在服务器目录中的 web.xml 中没有“multipart-config”

标签: java file jakarta-ee size


【解决方案1】:

现在解决错误 检查您的 web.xml 以了解 servlet 中的以下配置。增加尺寸并检查。

 <multipart-config>   
    <max-file-size>68142301</max-file-size>
    <max-request-size>68142301</max-request-size>
    <file-size-threshold>0</file-size-threshold>
    </multipart-config>

【讨论】:

    【解决方案2】:

    它起作用了,另一个同事给了项目方服务,它有

    ServletFileUpload upload = new ServletFileUpload(factory);
    
            // sets maximum size of upload file
            upload.setFileSizeMax(MAX_FILE_SIZE);
    
            // sets maximum size of request (include file + form data)
            upload.setSizeMax(MAX_REQUEST_SIZE);
    

    改变

    【讨论】:

      猜你喜欢
      • 2011-09-28
      • 2020-07-07
      • 1970-01-01
      • 2017-08-01
      • 1970-01-01
      相关资源
      最近更新 更多