Details
-
Bug
-
Status: Open
-
Blocker
-
Resolution: Unresolved
-
3.3.6
-
None
-
None
-
Unknown
Description
I need to get the attachments map, but the first attachment is still empty.
I think the issue comes from the method org.apache.cxf.jaxrs.ext.MessageContextImpl.createAttachments line 292
The first attachment is loaded with the following method "inMessage.getContent(InputStream.class)"
but the InputStream is not buffered and so I think when i want to read this value later in my code, the stream is closed and I get an empty string.
@POST @Path("") @Consumes(MediaType.MULTIPART_FORM_DATA) @Description("Create a task") public void createTask( @Multipart(value = "title", type = "text/plain", required = false) final String title, @Multipart(value = "description", type = "text/plain", required = false) final String description, @javax.ws.rs.core.Context final MessageContext mc) throws MatrixException { /* param well filled */ System.out.println("title: " + title); // >title: myTitle System.out.println("description: " + description); // >description: myDescription /* first attachment of attachment map is empty */ final MultivaluedMap<String, String> attachmentMap = AttachmentUtils.populateFormMap(mc); System.out.println("The set is: " + attachmentMap.entrySet()); // >The set is: [title=[], description=[myDescription]] }