使用Jersey缺少HttpServletRequest的依赖项
发布时间:2020-05-23 19:12:48 所属栏目:程序设计 来源:互联网
导读:我在JunitTest的开头运行了一个Standalone Jersey服务器.我正在测试我的 JaxRS controller是否正常,以及我的自定义HttpClient.请注意,我一直能够使用嵌入在glassfish中的这个JaxRsResourceController. 这是JaxRsController(轻量版) @Path(root)public class J
|
我在JunitTest的开头运行了一个Standalone Jersey服务器.我正在测试我的 JaxRS controller是否正常,以及我的自定义HttpClient.请注意,我一直能够使用嵌入在glassfish中的这个JaxRsResourceController. 这是JaxRsController(轻量版) @Path("root")
public class JaxRsResourceController implements
ResourceController<HttpServletRequest> {
@Context
private UriInfo context;
@Context
HttpServletRequest request;
@Context
HttpServletResponse response;
@GET
public String hello(){
System.out.println("Uri is "+this.context.getBaseUri().toString());
return "Hello "+peoples;
}
}
我对客户端没有问题,但是当我启动服务器时,我有: GRAVE: The following errors and warnings have been detected with resource and/or provider classes:
SEVERE: Missing dependency for field: javax.servlet.http.HttpServletRequest com.robustaweb.library.rest.controller.implementation.JaxRsResourceController.request
SEVERE: Missing dependency for field: javax.servlet.http.HttpServletResponse com.robustaweb.library.rest.controller.implementation.JaxRsResourceController.response
at com.sun.jersey.api.container.httpserver.HttpServerFactory.create(HttpServerFactory.java:172)
at com.robustaweb.library.rest.server.JerseyServer.startServer(JerseyServer.java:44)
基本上它表示在@Context注入时,不依赖于HttpServletRequest. 我改变了几次Maven pom,现在强制libs: <dependencies>
<dependency>
<groupId>com.sun.jersey</groupId>
<artifactId>jersey-server</artifactId>
<version>1.14</version>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>servlet-api</artifactId>
<version>2.5</version>
</dependency>
<dependency>
<groupId>javax.ws.rs</groupId>
<artifactId>jsr311-api</artifactId>
<version>1.1.1</version>
</dependency>
<dependency>
<groupId>javax.servlet.jsp</groupId>
<artifactId>jsp-api</artifactId>
<version>2.1</version>
</dependency>
</dependencies>
任何的想法 ? servlet依赖项被分成另一个模块,尝试添加<dependency>
<groupId>com.sun.jersey</groupId>
<artifactId>jersey-servlet</artifactId>
<version>1.14</version>
</dependency>
到你的pom. (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
