使用带有Ext-JS的JSON向JAX-RS提交带有JSON的multipart / form,如何设置Content-Type?

时间:2013-01-16 02:20:17

标签: json extjs jackson jax-rs

我想使用Ext-JS向使用Jackson处理JSON的JAX-RS服务提交一个包含文件附件的表单。

我遇到的问题是JSON数据没有Content-Type,我不知道如何设置它?

目前,请求正文如下所示:

-----------------------------4664151417711
Content-Disposition: form-data; name="productBinary"; filename="new.txt"
Content-Type: text/plain

blah
-----------------------------4664151417711
Content-Disposition: form-data; name="myData"

{"MyData": [1,2,3] }
-----------------------------4664151417711--

一切都很好,除了JSON部分没有Content-Type,因此我无法让JAX-RS服务将JSON反序列化为对象

JAX-RS服务类似于:

@POST
@Path("/submit")
@Consumes("mulitipart/form-data")
public String submit( MultipartBody body )
{
    MyData myData = body.getAttachmentObject("myData",MyData.class);
    return "done";
}

任何想法?

更新

似乎没有'好'的方式这样做,而是我发现我需要直接调用json反序列化器。

ObjectMapper om = new ObjectMapper();
InputStream is = body.getAttachment("myData").getDataHandler().getInputStream()
MyData md = om.readValue(is,MyData.class);

0 个答案:

没有答案