我想使用JAX-RS实现Subresource。资源的URI类似于http://localhost:8080/messenger/webapi/messages/1/comments。我可以使用以下URI获取消息http://localhost:8080/messenger/webapi/messages/1,但当我试图获取消息的注释时,我只得到空的花括号。
两个资源类都在同一个包中。我知道,如果URI的映射不正确,我将得到404错误,但我得到的是带有空大括号的200状态代码。
@Path("/messages")
@Produces(MediaType.APPLICATION_JSON)
@Consumes(MediaType.APPLICATION_JSON)
public class MessageResource {
MessageService ms = new MessageService();
@GET
@Path("/{messageId}")
public Message getMessage(@PathParam("messageId") long messageId) {
return ms.getMessage(messageId);
}
@POST
public Message addMessage(Message message) {
return ms.addMessage(message);
}
@PUT
@Path("/{messageId}")
public Message updateMessage(@PathParam("messageId") long messageId, Message message) {
message.setId(messageId);
return ms.updateMessage(message);
}
@DELETE
@Path("/{messageId}")
public void deleteMessage(@PathParam("messageId") long messageId) {
ms.removeMessage(messageId);
}
@GET
@Path("/{messageId}/comments")
public CommentResource getComments() {
return new CommentResource();
}
}
CommentResource类代码:
public class CommentResource {
private CommentService commentService = new CommentService();
@GET
public String test() {
return "new sub resource";
}
}
我发现我在getComments()方法上使用了@Get注释,这导致了问题。我已经删除了它,现在代码运行良好。
@GET
@Path("/{messageId}/comments")
public CommentResource getComments() {
return new CommentResource();
}
service.java: sqlDataProvider.java: 如果在Glassfish服务器中部署此servlet并执行请求,将引发以下异常: 亲切地问候帕斯卡
本章呈现 JAX-RS 核心概念-资源和子资源的概述。 JAX-RS 2.0 的 JavaDoc 文档 可以在这里 找到。 JAX-RS 2.0 规范草案可以在这里 找到。
问题内容: 我一直在尝试使用NetBeans Ide创建一个简单的Restful WebService。 我的Java EE版本是:Java EE 7 Web。 我创建了一个新的Java Web应用程序,设置此ContexPath: 。 现在,运行我的应用程序,浏览器在以下位置显示我的页面: 因此,一切正常。 然后,我尝试使用RESTful Web服务向导创建一个简单的Restful资源。 因此,
编辑:我刚刚意识到,即使是一个带有应用程序条的简单屏幕,也会发生这种情况 错误:任务“:app:checkdebugaarmadata”的执行失败 无法解析配置“:app:debugRuntimeClasspath”的所有文件。无法解析com。谷歌。firebase:firebase firestore:22.1.2。所需人员:项目:应用程序 无法解析com。谷歌。firebase:firebas
我创建了一个原型为maven archetype webapp的maven项目,然后为了将我的应用程序公开为rest webservice,我正在使用RestEasy,但是在rest应用程序中实现后,我无法访问我创建的URL。请告诉我我做错了什么。感谢您阅读此问题。 我的UserManagementController如下: 我的MyRestWS. java如下: 我的网站。xml如下: 该应用程
我想试试wildfly swarm。我用Jax-rs-fraction和一个简单的hello-world资源创建了一个项目。我查过了,但找不到404。 这是我的pom。xml 这是我的Jax rs资源 如您所见,这非常简单。也许我错过了什么。我没有添加@Application ationPath注释类,因为根据留档(https://wildfly-swarm.gitbooks.io/wildfly