Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/rest/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Tomcat 7+Jersey 2.0错误_Java_Rest_Tomcat_Jersey_Servlet 3.0 - Fatal编程技术网

Java Tomcat 7+Jersey 2.0错误

Java Tomcat 7+Jersey 2.0错误,java,rest,tomcat,jersey,servlet-3.0,Java,Rest,Tomcat,Jersey,Servlet 3.0,Maven依赖项: java.lang.AbstractMethodError: javax.ws.rs.core.UriBuilder.uri(Ljava/lang/String;)Ljavax/ws/rs/core/UriBuilder; at javax.ws.rs.core.UriBuilder.fromUri(UriBuilder.java:119) at org.glassfish.jersey.servlet.ServletContainer.service(Ser

Maven依赖项:

java.lang.AbstractMethodError: javax.ws.rs.core.UriBuilder.uri(Ljava/lang/String;)Ljavax/ws/rs/core/UriBuilder;
    at javax.ws.rs.core.UriBuilder.fromUri(UriBuilder.java:119)
    at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:289)
    at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:221)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
    at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:222)
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123)
    at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:502)
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:171)
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:100)
    at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:953)
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:408)
    at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1041)
    at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:603)
    at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:310)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
    at java.lang.Thread.run(Unknown Source)
@Path("/messageService")
public class MessageService{

public MessageService() {
}

private static Logger logger = Logger.getLogger(MessageService.class);

@GET
@Path("/getMessages")
@Produces(MediaType.APPLICATION_JSON)
public List<MessageModel> getMessage(Integer subCatId) {
  return "something";
}
asm-5.0.jar
asm-debug-all-5.0.3.jar
gson-2.2.2.jar
hk2-api-2.3.0.jar
hk2-locator-2.3.0.jar
hk2-utils-2.3.0.jar
javassist-3.18.1-GA.jar
javax.annotation-api-1.2.jar
javax.inject-2.2.0.jar
javax.servlet-api-3.1.0.jar
javax.ws.rs-api-2.0.1.jar
jaxb-api-2.2.10.jar
jersey-apache-connector-2.12.jar
jersey-client.jar
jersey-common.jar
jersey-container-grizzly2-http-2.1.jar
jersey-container-servlet-core.jar
jersey-container-servlet.jar
jersey-guava-2.8.jar
jersey-server.jar
org.osgi.core-4.3.1.jar
osgi-resource-locator-1.0.1.jar
swt_win32_x86.jar
validation-api-1.1.0.Final.jar
web.xml

<dependency>
        <groupId>org.glassfish.jersey.ext</groupId>
        <artifactId>jersey-spring3</artifactId>
        <version>2.11</version>
    </dependency>

    <dependency>
        <groupId>log4j</groupId>
        <artifactId>log4j</artifactId>
        <version>1.2.16</version>
    </dependency>

    <dependency>
        <groupId>org.apache.commons</groupId>
        <artifactId>commons-lang3</artifactId>
        <version>3.3.2</version>
    </dependency>

    <dependency>
        <groupId>javax.ws.rs</groupId>
        <artifactId>javax.ws.rs-api</artifactId>
        <version>2.0</version>
        <scope>provided</scope>
    </dependency>

    <dependency>
        <groupId>org.glassfish.jersey.connectors</groupId>
        <artifactId>jersey-apache-connector</artifactId>
        <version>2.10.1</version>
    </dependency>

    <dependency>
        <groupId>org.glassfish.jersey.containers</groupId>
        <artifactId>jersey-container-servlet</artifactId>
        <version>2.11</version>
    </dependency>

    <dependency>
        <groupId>org.glassfish.jersey.core</groupId>
        <artifactId>jersey-client</artifactId>
        <version>2.11</version>
    </dependency>

    <dependency>
        <groupId>com.sun.jersey</groupId>
        <artifactId>jersey-server</artifactId>
        <version>1.8</version>
    </dependency>

    <dependency>
        <groupId>org.glassfish.jersey.core</groupId>
        <artifactId>jersey-common</artifactId>
        <version>2.11</version>
    </dependency>

    <dependency>
        <groupId>com.fasterxml.jackson.core</groupId>
        <artifactId>jackson-databind</artifactId>
        <version>2.2.3</version>
    </dependency>

    <dependency>
        <groupId>asm</groupId>
        <artifactId>asm-all</artifactId>
        <version>3.3.1</version>
    </dependency>

    <dependency>
        <groupId>commons-logging</groupId>
        <artifactId>commons-logging</artifactId>
        <version>1.2</version>
    </dependency>

    <dependency>
        <groupId>org.apache.commons</groupId>
        <artifactId>commons-pool2</artifactId>
        <version>2.2</version>
    </dependency>

    <dependency>
        <groupId>org.glassfish.jersey.media</groupId>
        <artifactId>jersey-media-json-jackson</artifactId>
        <version>2.4.1</version>
    </dependency>

    <dependency>
        <groupId>org.glassfish.jersey.ext</groupId>
        <artifactId>jersey-spring3</artifactId>
        <version>2.11</version>
    </dependency>

    <dependency>
        <groupId>org.glassfish.jersey.containers</groupId>
        <artifactId>jersey-container-servlet-core</artifactId>
        <version>2.9.1</version>
    </dependency>

    <dependency>
        <groupId>javax.ws.rs</groupId>
        <artifactId>jsr311-api</artifactId>
        <version>1.1.1</version>
    </dependency>
@Path("/messageService")
public class MessageService{

public MessageService() {
}

private static Logger logger = Logger.getLogger(MessageService.class);

@GET
@Path("/getMessages")
@Produces(MediaType.APPLICATION_JSON)
public List<MessageModel> getMessage(Integer subCatId) {
  return "something";
}
服务等级

<servlet>
    <servlet-name>MessageService</servlet-name>
    <servlet-class>org.glassfish.jersey.servlet.ServletContainer</servlet-class>
    <init-param>
        <param-name>javax.ws.rs.core.Application</param-name>
        <param-value>MessageService</param-value>
    </init-param>
    <load-on-startup>1</load-on-startup>
</servlet> 

 <servlet-mapping>
    <servlet-name>MessageService</servlet-name>
    <url-pattern>/api/*</url-pattern>
</servlet-mapping>
@Path("/messageService")
public class MessageService{

public MessageService() {
}

private static Logger logger = Logger.getLogger(MessageService.class);

@GET
@Path("/getMessages")
@Produces(MediaType.APPLICATION_JSON)
public List<MessageModel> getMessage(Integer subCatId) {
  return "something";
}

我们一直在努力寻找这一错误的原因。如有任何帮助,我们将不胜感激。

您确定所有的罐子都在您手中吗

@Path("/messageService")
public class MessageService{

public MessageService() {
}

private static Logger logger = Logger.getLogger(MessageService.class);

@GET
@Path("/getMessages")
@Produces(MediaType.APPLICATION_JSON)
public List<MessageModel> getMessage(Integer subCatId) {
  return "something";
}

看起来您有两个相互冲突的依赖项:

java.lang.AbstractMethodError: javax.ws.rs.core.UriBuilder.uri(Ljava/lang/String;)Ljavax/ws/rs/core/UriBuilder;
    at javax.ws.rs.core.UriBuilder.fromUri(UriBuilder.java:119)
    at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:289)
    at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:221)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
    at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:222)
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123)
    at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:502)
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:171)
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:100)
    at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:953)
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:408)
    at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1041)
    at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:603)
    at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:310)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
    at java.lang.Thread.run(Unknown Source)
@Path("/messageService")
public class MessageService{

public MessageService() {
}

private static Logger logger = Logger.getLogger(MessageService.class);

@GET
@Path("/getMessages")
@Produces(MediaType.APPLICATION_JSON)
public List<MessageModel> getMessage(Integer subCatId) {
  return "something";
}
asm-5.0.jar
asm-debug-all-5.0.3.jar
gson-2.2.2.jar
hk2-api-2.3.0.jar
hk2-locator-2.3.0.jar
hk2-utils-2.3.0.jar
javassist-3.18.1-GA.jar
javax.annotation-api-1.2.jar
javax.inject-2.2.0.jar
javax.servlet-api-3.1.0.jar
javax.ws.rs-api-2.0.1.jar
jaxb-api-2.2.10.jar
jersey-apache-connector-2.12.jar
jersey-client.jar
jersey-common.jar
jersey-container-grizzly2-http-2.1.jar
jersey-container-servlet-core.jar
jersey-container-servlet.jar
jersey-guava-2.8.jar
jersey-server.jar
org.osgi.core-4.3.1.jar
osgi-resource-locator-1.0.1.jar
swt_win32_x86.jar
validation-api-1.1.0.Final.jar
以及:

@Path("/messageService")
public class MessageService{

public MessageService() {
}

private static Logger logger = Logger.getLogger(MessageService.class);

@GET
@Path("/getMessages")
@Produces(MediaType.APPLICATION_JSON)
public List<MessageModel> getMessage(Integer subCatId) {
  return "something";
}

尝试删除1.1.1版本。

如果您提供了一个xml依赖项列表,而不是仅仅列出它,那么它可能会重复。
@Path("/messageService")
public class MessageService{

public MessageService() {
}

private static Logger logger = Logger.getLogger(MessageService.class);

@GET
@Path("/getMessages")
@Produces(MediaType.APPLICATION_JSON)
public List<MessageModel> getMessage(Integer subCatId) {
  return "something";
}