草庐IT

java - 如何在 Rest 服务中发送带有 Jersey 的 JSON 对象

我正在尝试使用jersey提供Restful服务,因为我将jersey示例用于Maven项目。这就是我得到的:我的pom.xml:4.0.0com.examplesimple-service-webappwar1.0-SNAPSHOTsimple-service-webappsimple-service-webapporg.apache.maven.pluginsmaven-compiler-plugin2.5.1true1.71.7org.glassfish.jerseyjersey-bom${jersey.version}pomimportorg.glassfish.jersey.

java - JBOSS 6 部署问题,带有 Jersey 的 JAX-RS

我的问题是:问题1.如何在JBOSS中启用包扫描,以便它可以知道在war文件中的何处查找实现类和提供程序(使用@Provider注释的提供程序)?Q2.为什么我的过滤器没有被应用类注册,而我必须在web.xml中注册?场景我使用Jersey创建了一个Jax-RS网络服务并将其部署在JBOSS-6中,首先我遇到了一个错误,该错误描述了JBOSS将无法扫描我在web.xml中提供的包找到我的Restweb服务实现。所以解决方法是创建一个Application类,(我无缘无故地阻止自己使用Jersey本身提供的ResourceConfig)并在getClasses中注册我的WebServic

java - 我可以使用自定义预分派(dispatch)、后分派(dispatch)和错误处理程序代码来包装所有 JAX-RS 请求吗?

我使用javax.ws.rs.Path注释将许多类公开为JAX-RS请求“处理程序”。我想在每个请求之前和每个请求之后添加某些操作。此外,我需要创建一个全局应用程序范围的异常处理程序,它将捕获这些处理程序和协议(protocol)抛出的所有内容。是否可以使用标准JAX-RS实现这一点,而无需创建继承自com.sun.jersey.spi.container.servlet.ServletContainer的自定义类(我正在使用Jersey)。 最佳答案 您还可以使用ExceptionMappers。该机制捕获您的服务抛出的异常并将其

java - 在 Jersey 中,我可以将 QueryParams 和 FormParams 组合成一个方法的值吗?

我有这样一个函数:@POST@Path("/create")@Produces({MediaType.APPLICATION_JSON})publicPlaylistcreatePlaylist(@FormParam("name")Stringname){Playlistp=playlistDao.create();p.setName(name);playlistDao.insert(p);returnp;}我希望“名称”参数来自表单或来自查询参数。如果用户发布到/playlist/create/?name=bob那么我希望它能工作。(这主要是为了帮助测试API,但也为了在不同的非浏览

java - Jetty Embedded, Jersey 2, Weld

我正在使用Jetty9.1和Jersey2.5.1。Jersey内置了对Jetty的支持,所以我这样启动我的服务器:publicstaticvoidmain(String[]args){URIbaseUri=UriBuilder.fromUri("http://localhost/").port(8080).build();ResourceConfigconfig=ResourceConfig.forApplicationClass(MyApplication.class);Serverserver=JettyHttpContainerFactory.createServer(base

java - 为什么没有为 Jersey Controller 检测到我的方面(使用自定义注释)?

我想在JerseyController上创建一个方面来测量执行服务需要多长时间。我正在反对我的切入点,因为它未被检测到并且我的方面从未启动。我尝试过使用很多切入点,例如:execution(@Monitor**.*(..))execution(public**(..))changetheorderof@Aspectand@ComponentAddedapointcutlikethis:@Pointcut("execution(@Monitor**.*(..))")publicvoidmonitorRequestTargets(){}@Around("monitorRequestTarg

java - Jersey 中单个值的多个 @QueryParam 键

在Jersey中是否可以为单个对象/变量允许多个@QueryParam键?实际:@POSTpublicSomethinggetThings(@QueryParam("customer-number")Integern){...}因此,如果我在URL之后添加?customer-number=3它会起作用。预期:如果我添加以下任何值,我希望获得上述行为:?customer-number=3?customerNumber=3?customerNo=3观察:QueryParam注释如下所示:...public@interfaceQueryParam{Stringvalue();}因此,它不能接

java - org.glassfish.jersey.server.ContainerException : java. lang.NoClassDefFoundError : org. testng.TestNG?

我在Eclipse中有一个项目,它是一个WebService项目RESTAPI,我还在ConfigureBuildpath->AddProject中添加了另一个项目,我还添加了另一个项目在我的API方法中,我正在调用TestNGCreator类,如下所示。基本上这个项目使用java中的jersey框架来创建RESTAPI,当我调用任何特定方法时,即执行它将调用另一个驻留在另一个项目中的类,我在这个项目的构建路径中添加了项目,我的其他方法工作正常但是当我从不同的项目调用方法时出现此错误。我是否需要在POM.xml或其他地方声明一些我正在使用此类和此方法的地方我需要通过调用此TestNGC

java - 使用继承和泛型组织 Jersey 资源的正确方法是什么?

我正在使用Jersey开发一个应用程序,我有很多资源。尽管这些资源的主要功能各不相同,但它们共享许多通用方法(如列表、读取、更新等)。该应用程序在GoogleAppEngine上运行,并使用Guice进行依赖注入(inject)。我的第一个方法是拥有一个包含所有通用逻辑的通用AbstactResource,并且它分别由所有其他资源扩展,这些资源添加了它们所需的自定义方法。publicclassAbstractResource{@GETpublicListPagelist(@QueryParam("limit")Integerlimit,@QueryParam("start")Integ

java - WADL 是 REST 应用程序的标准吗?

WADL和WSDL一样是真正的标准吗?WADLURI必须以“.wadl”扩展名结尾吗?我在Jersey中创建了一个HelloWorld示例,并且从URL获得了WADL。然后我使用“wadl-client-plugin”创建了一个客户端,它可以正常工作。我的问题是:如果我使用另一个生成WADL的框架(即CXF),我可以在我的“wadl-client-plugin”中使用它来创建客户端吗? 最佳答案 REST方法比SOAP更简单,但不幸的是目前没有标准。更具体地说,关于WADL,W3teamanswered:W3Cispleasedto