我有以下代码:
@Path("/search")
public class SearchRestlet
extends BaseRestlet
{
@GET
@Produces({ MediaType.APPLICATION_XML,
MediaType.APPLICATION_JSON,
MediaType.TEXT_PLAIN })
public SearchResult search(...)
throws IOException, ParseException
{
final SearchRequest searchRequest = new SearchRequest(...);
final SearchResult result = searchService.search(searchRequest);
return result;
}
}下面是我的JAXB映射对象:
@XmlRootElement(name = "result")
@XmlAccessorType(XmlAccessType.FIELD)
public class SearchResult
{
@XmlElement
private String id;
...
}这是我得到的输出:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?><result><id>foo</id></result>这是我想得到的输出:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<result>
<id>foo</id>
</result>如果我直接使用封送器,我知道我可以为此设置一个属性,并且它应该可以工作。根据上面的例子,如何从泽西岛的上下文中做到这一点?
发布于 2014-11-06 19:50:06
将以下内容添加到web.xml部署描述符中:
<init-param>
<param-name>jersey.config.xml.formatOutput</param-name>
<param-value>true</param-value>
</init-param>有关更多细节,请查看MessageProperties.XML_FORMAT_OUTPUT。
https://stackoverflow.com/questions/26787511
复制相似问题