Tag: jax rs

与JAX-RS保持干爽

我想尽量减less一些JAX-RS资源处理程序的重复代码,所有这些都需要一些相同的path和查询参数。 每个资源的基本url模板如下所示: /{id}/resourceName 每个资源都有多个子资源: /{id}/resourceName/subresourceName 所以,资源/子资源path(包括查询参数)可能看起来像 /12345/foo/bar?xyz=0 /12345/foo/baz?xyz=0 /12345/quux/abc?xyz=0 /12345/quux/def?xyz=0 foo和quux资源的公共部分是@PathParam("id")和@QueryParam("xyz") 。 我可以像这样实现资源类: // FooService.java @Path("/{id}/foo") public class FooService { @PathParam("id") String id; @QueryParam("xyz") String xyz; @GET @Path("bar") public Response getBar() { /* snip */ } @GET @Path("baz") public Response getBaz() { /* snip */ } } // QuuxService.java @Path("/{id}/quux") public class QuxxService { @PathParam("id") […]

Jersey和jax-rs有什么区别

我真的不明白什么是jersey 我所知道的是,Jax-RS是用于构buildREST Web服务和jersey的API。 我得到了一些信息,所有的说法都一样,“运动衫是Jax-RS的一个实现”,但它意味着什么? 如果jax-rs是一个API,为什么我们需要jersey来创build一个restWeb服务? jersey是更多的库与jax-rs瞄准? 如果是的话,在一个不完整的API的jax-rs? 很多问题在我脑海中。

为什么要使用JAX-RS / Jersey?

对不起,这个问题听起来很愚蠢,但是在开发了一些使用Jersey的RESTful服务之后,我问自己这个问题 – 如果REST只是一个体系结构,而不是像SOAP这样的协议,为什么我们需要像JAX-RS这样的规范? 我实际上search了一些问题,例如“servlet和HTTP上的RESTful服务有什么区别”,并总结了社区的答案,我得到了: RESTful服务开发(在泽西岛上)是一种架构,它固有地使用servlet。 像Jersey这样的符合JAX-RS的工具提供了简单的编组 – parsingXML / JSON数据,帮助开发人员。 REST帮助我们使用GET / POST / PUT / DELETE,这种方式比普通的servlet有效得多。 根据这些答案,我猜如果我编写一个使用JAXB的servlet(用于处理自动序列化),并且在我的servlet代码中有效地使用GET / POST / PUT / DELETE,我不使用像Jersey这样的工具,因此JAX-RS。 我知道我通过这个声明是非常错误的,请纠正我。 PS:当我不得不在PHP中开发一些RESTful服务时,这个疑问实际上就出现了。 通过一些RESTful PHP代码后,我意识到它们只是旧的PHP脚本,有一些处理XML / JSON的辅助方法。

@PathParam和@QueryParam有什么区别?

我是REST风格的jersey的新手。 我想问一下jersey中的@PathParam和@QueryParam什么不同?

我如何获取Jersey JaxRS中的所有查询参数?

我正在构build一个通用的Web服务,并需要将所有的查询参数获取到一个string,以供以后parsing。 我怎样才能做到这一点?

unit testing一个JAX-RS Web服务?

我目前正在寻找方法来为JAX-RS (基于REST风格的Web服务的Java API)的Web服务创build自动化testing。 我基本上需要一种方式来发送一定的input,并validation我得到了预期的回应。 我宁愿通过JUnit来做到这一点,但我不知道如何实现。 你用什么方法来testing你的networking服务? 更新:正如entzik所指出的那样,将Web服务从业务逻辑中分离出来让我能够对业务逻辑进行unit testing。 不过,我也想testing正确的HTTP状态码等。

如何selectJersey,Apache Wink和JBoss RESTEasy?

我刚刚听说了Apache Wink ,我想知道与Jersey或JBoss RESTEasy相比有什么不同。 其他两个不能做什么呢? 我们一直在使用泽西来进行一些内部项目,主要是因为它很简单,但我无法弄清楚是什么让这两个更好,我会考虑切换。 有没有人有任何利用这些填充的利基?

JAX-RS和JAX-WS有什么区别?

在阅读了一些关于JAX-RS和JAX-WS的文章之后,我有几个问题想要确认? JAX-RS可以像JAX-WS一样执行asynchronous请求吗? JAX-RS是否可以访问未在Java平台上运行的Web服务,反之亦然? “REST对于PDA和手机等有限的设备特别有用”是什么意思? “JAX-RS不需要XML消息或WSDL服务-API定义是什么意思?

如何在RESTful POST方法中访问参数

我的POST方法如下所示: @POST @Consumes({"application/json"}) @Path("create/") public void create(String param1, String param2){ System.out.println("param1 = " + param1); System.out.println("param2 = " + param2); } 当我在Netbeans中创build一个Jersey客户端时,调用post方法的方法如下所示: public void create(Object requestEntity){ webResource.path("create").type(MediaType.APPLICATION_JSON).post(requestEntity); } 运行此testing时: @Test public void hello(){ String json = "{param1=\"hello\",param2=\"hello2\"}"; this.client.create(json); } 它在服务器中提供以下输出: INFO: param1 = {param1="hello",param2="hello2"} INFO: param2 = 我需要改变什么,以便参数给出正确的值?

对无效数据的REST响应代码

在下列情况下应该将什么响应代码传递给客户端? 用户注册时传递的数据无效,如错误的电子邮件格式 用户名/电子邮件已存在 我select了403.我也发现以下我觉得可以使用。 维基百科: 412先决条件失败:服务器不符合请求者提出请求的前提条件之一 build议如果我使用403以外的代码。