Hi Sergey, a couple quick follow-up questions...

I commited a new version, take a look at the server:
https://github.com/davisford/kickstarter/blob/master/src/main/java/com/example/fileupload/FileUploadServiceImpl.java

Line 52 is where I receive the upload multipart/form-data

I also cleaned up the client side -- much easier using the FormData
object...no need for a form at all.

https://github.com/davisford/kickstarter/blob/master/src/main/webapp/js/fileupload.js
--
line 45 does the POST

Here is what is sent from client to server.  You are right, there is no
content-type for the "file-metadata" part of the body.  I'm not sure how to
set this in the client -- will take a look and see if it is possible.

My remaining question is that I tried to do what you suggested looking up
the Attachment directly by part name, but it does not work:

On line 55 of the FileUploadServiceImpl.java I do this:

Attachment a = body.getAttachment("file-metadata");
*
*
...and it returns null.  Any idea why?


   1. Request URL:
   http://localhost:8080/rest/fileupload/upload
   2. Request Method:
   POST
   3. Status Code:
   200 OK
   4. Request Headersview source
      1. Accept:
      */*
      2. Accept-Charset:
      ISO-8859-1,utf-8;q=0.7,*;q=0.3
      3. Accept-Encoding:
      gzip,deflate,sdch
      4. Accept-Language:
      en-US,en;q=0.8
      5. Connection:
      keep-alive
      6. Content-Length:
      5214
      7. Content-Type:
      multipart/form-data; boundary=----WebKitFormBoundaryF8F4CpQ3B5evboGC
      8. Host:
      localhost:8080
      9. Origin:
      http://localhost:8080
      10. Referer:
      http://localhost:8080/
      11. User-Agent:
      Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/535.1 (KHTML, like
      Gecko) Chrome/14.0.835.202 Safari/535.1
      5. Request Payload
      1. ------WebKitFormBoundaryF8F4CpQ3B5evboGC Content-Disposition:
      form-data; name="file-metadata"
      <file><name>service-inspector.bmml</name><lastModified>Wednesday, October
      05,
      
2011</lastModified><md5>5e11a7ae83e157aec2900fc54306d3ef</md5><size>4699</size><contentType>application/xml</contentType></file>
      ------WebKitFormBoundaryF8F4CpQ3B5evboGC Content-Disposition: form-data;
      name="file-content"; filename="service-inspector.bmml" Content-Type:
      application/xml ------WebKitFormBoundaryF8F4CpQ3B5evboGC--
      6. Response Headersview source
      1. Content-Length:
      0
      2. Content-Type:
      text/xml
      3. Date:
      Tue, 25 Oct 2011 17:38:15 GMT
      4. Server:
      Jetty(6.1.18)


On Tue, Oct 25, 2011 at 10:08 AM, Sergey Beryozkin <[email protected]>wrote:

>
> Note that you can avoid working with DataHandlers, try
> body.getAttachmentObject("**file-metadata", FileUploadFile.class);
>
> same for InputStream.
>
> If a no reader exception is thrown then it means the matching part
> has no Content-Type set, can you please capture the input, using the tcp
> trace or CXF LoggingInInterceptor ?
>
>
> Cheers, Sergey
>
>

Reply via email to