【发布时间】:2017-12-20 20:38:53
【问题描述】:
我正在使用 JAX-RS 构建一个基本的 Web 服务
这里是 GET 方法:
/**
* Returns all songs
* @return all songs
*/
@GET
@Produces({ MediaType.APPLICATION_JSON, MediaType.APPLICATION_XML })
public Collection<Song> getAllSongs() {
return SongsRXStore.getInstance().getAllSongs();
}
/**
* Returns song with id: "id"
* @param id the "id"
* @return song with id: "id"
*/
@GET
@Path("/{id}")
@Produces({ MediaType.APPLICATION_JSON, MediaType.APPLICATION_XML })
public Response getSong(@PathParam("id") Integer id) {
Song song = SongsRXStore.getInstance().getSongById(id);
if (song != null)
return Response.ok(song).build();
else
return Response.status(Response.Status.NOT_FOUND)
.entity(Response.Status.NOT_FOUND + ": No Song found with id " + id).build();
}
看起来还不错,但我无法恢复 XML 类型。
这里将所有歌曲(上面的第一种方法)请求为 json 和 xml。如您所见,仅正确返回了 json,但未正确返回 xml。
请问我怎样才能让它工作?
编辑:@XmlRootElemnt 标签当然已经添加到我的 POJO_Bean Song.java 中:
@XmlRootElement(name = "song")
public class Song {
【问题讨论】:
-
请将代码包含为文本和不是图像。谢谢。
-
好的,你有什么办法解决我的问题吗?
标签: java json xml web-services jax-rs