如何以Badgerfish格式生成JSONP

时间:2015-02-25 13:11:06

标签: jackson jsonp badgerfish

我试图为Spring MVC创建一个控制器,它将返回Badgerfish格式的JSONP。我的代码目前正在使用Jackson正确创建JSONP,但我不知道如何指定Badgerfish格式。假设callback是回调函数的名称而summary是我的jaxb对象,那么我的代码当前是

ObjectMapper objectMapper = new ObjectMapper();
return objectMapper.writeValueAsString(new JSONPObject(callback,summary));

有没有办法使用杰克逊或我必须使用另一个框架?我找到了一种使用RestEasy生成Badgerfish的方法,但仅适用于JSON。

1 个答案:

答案 0 :(得分:0)

我实际上设法用Jettison解决了这个问题(我没有找到与Jackson合作的方法)。所需的代码是

Marshaller marshaller = null;
Writer writer = new StringWriter();
AbstractXMLStreamWriter xmlStreamWriter = new BadgerFishXMLStreamWriter(writer);
try {
    marshaller = jaxbContextSummary.createMarshaller();
    marshaller.marshal(myObject, xmlStreamWriter);
} catch (JAXBException e) {
    logger.error("Could not construct JSONP response", e);
}