[ https://issues.apache.org/jira/browse/CXF-3399?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13009112#comment-13009112 ]
Sergey Beryozkin commented on CXF-3399: --------------------------------------- Hi Avish Many thanks for looking into this issue and finding the solution. Let me know please if you have any comments re the way the Multipart-related code can be improved for the cases like yours be easier to deal with... Cheers, Sergey > When using ResponseBuilder to create Response of multiparts, the boundary > attribute in the Content-Type Header is missing > ------------------------------------------------------------------------------------------------------------------------- > > Key: CXF-3399 > URL: https://issues.apache.org/jira/browse/CXF-3399 > Project: CXF > Issue Type: Bug > Components: JAX-RS > Affects Versions: 2.3.3 > Environment: XP 2002 SP-3, JDK 1.6.0.17, cxf-2.3.3, > Reporter: Avshalom Yeshurun > Labels: Boundary, Content-Type, ResponseBuilder > Original Estimate: 672h > Remaining Estimate: 672h > > Hello, > We have implemented the following method while the output of the Response > should be a multipart message. > @POST > @Path("{destinationAddress}/messages/payloads") > @Consumes("application/xml") > @Produces({"multipart/related", "multipart/mixed", > "multipart/form-data"}) > public Response postMailboxMessagesPayloadRequest(@Context > HttpServletRequest request, > > @PathParam("destinationAddress") String destinationAddress, > @Context ServletContext > servletContext, > > JAXBElement<MailboxMessagesPayload> jAXBElement) { > try{ > List<Attachment> attachments = > ((MultipartBody)mwMailboxMessagesPayloadResponse.getBody()).getAllAttachments(); > MultipartBody multipartBody = new > MultipartBody(attachments); > ResponseBuilder responseBuilder = > Response.status(HttpURLConnection.HTTP_OK); > responseBuilder.type(multipartBody.getType() > responseBuilder.entity(multipartBody); > Response response = responseBuilder.build(); > return response; > } > catch(Exception e){ > } > The thing is that no matter what we do, we can not have the 'boundary' which > is determined by the CXF engine to appear in the Content-Type on the main > header. > As a result no Client will be able to parse the returned message. > If we try to manually set the Content-Type header while giving it our own > 'boundary', the result is that a different boundary is generated for the > actual message, while the boundary we set is not the same. -- This message is automatically generated by JIRA. For more information on JIRA, see: http://www.atlassian.com/software/jira