【问题标题】:Produce and Consume data in Java RESTful with Jersey and JSON使用 Jersey 和 JSON 在 Java RESTful 中生成和使用数据
【发布时间】:2016-04-13 06:23:35
【问题描述】:

各位, 我是 Java RESTful 的新手,

我需要将数据从我的 java 应用程序传递到 RESTful 服务。我能够将 RESTful 添加到我的应用程序,但无法将任何数据发送回服务。

我在服务中使用了@GET 和@Consumes。请帮助我在同一设备之间建立连接和数据交换

因为 RESTful 在我的应用程序中充当服务器

RESTful 定义

@GET
@Consumes("application/json")
@Path("{strID}")
public String getJson(@PathParam("strID")String strID){
  return strID;
}

引入的 RESTful 方法

public String getJson(String strID) throws UniformInterfaceException {
        WebResource resource = webResource;
        resource = resource.path(java.text.MessageFormat.format("{0}", new Object[]{strID}));
        return resource.get(String.class);
    }

在 java 应用程序中

static RESTful objRFIDService = new RESTful();
objRFIDService.getJson("RESTfultest");

【问题讨论】:

  • 你能显示一些代码吗?
  • 分享一点代码将帮助我们为您提供帮助。
  • 看看这个网址:tutorialspoint.com/restful/index.htm可能会帮助你更好地理解restful,请像弗拉基米尔和卡西奥所说的分享一些代码。
  • 您的网络服务将返回哪个实体?
  • 是的。我编辑了帖子。对不起,只是误解发表在评论中。 @esprittn 我浏览了那个教程并在这里实现了。

标签: java json rest jersey


【解决方案1】:

你想要达到的目标并不是很清楚。但是,要使用 REST Web 服务,您可以使用 JAX-RS 客户端 API,它是 JAX-RS 2.0 规范的一部分,参考实现是 Jersey

例如,要对http://example.com/api/foo/{id} 中可用的资源执行GET 请求,您可以使用以下代码:

String id = ...

Client client = ClientBuilder.newClient();
WebTarget target = client.target("http://example.com").path("api").path("foo").path(id);
String result = target.request(MediaType.APPLICATION_JSON_TYPE).get(String.class);

更多详情,请查看Jersey Client API documentation

【讨论】:

  • 感谢卡西奥·马佐奇·莫林。我会检查
  • 我尝试了bhaveshthaker.com/13/… 教程并且工作正常。但是当我在我的 java 客户端中访问时,它导致异常 POST localhost:8050/WebRestfulAppTest/services/WebTest/add 返回响应状态为 500 Internal Server Error,无法与服务器通信。请帮忙
  • @PrajwalBhat 你能考虑问另一个问题吗?如果是这样,我很乐意为您提供帮助。这个错误似乎超出了这个问题的范围。确保在新问题中提供所有详细信息,例如错误消息和堆栈跟踪。
猜你喜欢
  • 1970-01-01
  • 2013-10-04
  • 1970-01-01
  • 2015-06-01
  • 1970-01-01
  • 2013-01-14
  • 2014-11-24
  • 2012-04-17
  • 2014-10-04
相关资源
最近更新 更多