繁体   English   中英

java.io.IOException:嵌入式Jetty服务器的零件不完整

[英]java.io.IOException: Incomplete parts with embedded Jetty Server

我正在编程一个小型文件服务器,该服务器通过HTTP-POST请求从另一个软件获取文档。

这些请求始终是“ multipart / form-data”类型,因此我想通过.getParts()进行拆分;

不幸的是,我总是收到“ java.io.IOException:不完整的零件”,否则找不到该零件。

我的代码有问题吗?还是请求有问题?

我在Eclipse中使用嵌入式Jetty服务器

    public void create_document() {
    String lv_path = gr_request.getParameter("contRep") + File.separator + gr_request.getParameter("docId");
    Part lr_part = null;
    try {
        System.out.println(gr_request.getContentType());
        //for testing
        Part lr_test = gr_request.getPart("data");
        System.out.println("1");
        System.out.println(lr_test);

        //the actual part
        Collection<Part> lr_parts = gr_request.getParts();
        for (Iterator<Part> i = lr_parts.iterator(); i.hasNext();) {
            lr_part = ((Iterator<Part>) lr_parts).next();

            //again for testing
            System.out.println("content Type" + lr_part.getContentType());
            System.out.println("name" + lr_part.getName());
            System.out.println("content Type" + lr_part.getContentType());
            String test = lv_path + ".jpg";
            lr_part.write(test);

日志是

2017-11-28 11:07:47.941:INFO:oejs.Server:main: jetty-9.0.4.v20130625
2017-11-28 11:07:48.222:INFO:oejs.ServerConnector:main: StartedServerConnector@7165cbeb{HTTP/1.1}{0.0.0.0:1090}
Erkannte Aktion: CREATE_DOCUMENT
2017-11-2811:07:54.469:WARN:oejs.Request:qtp424058530-15:java.io.IOException:Incomplete parts
multipart/form-data; boundary=KoZIhvcNAQcB
1
null

MultiPartConfig由

MultipartConfigElement multipartConfigElement = newMultipartConfigElement((String)null);
ir_request.setAttribute(Request.__MULTIPART_CONFIG_ELEMENT, multipartConfigElement);

传输的PDF文件的正文开头:

--KoZIhvcNAQcB
Content-Disposition: form-data; filename="data"
X-compId: data
Content-Type: application/pdf
Content-Length: 182370

%PDF-1.7
%µµµµ
1 0 obj
...and so on...
182188
%%EOF
--KoZIhvcNAQcB--

要求似乎有问题。 收到请求时,我将“文件名”标签更改为“名称”。 现在正在运行

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM