java - 如何让 Jersey 2.6 与 Tomcat 6 和 Java 1.6 一起工作?

标签 java tomcat jersey jersey-2.0 java-6

我正在尝试将 Jersey(2.6 版)与在 Java 1.6 上运行的 Tomcat 6 一起使用。它应该是可能的,但会抛出错误,我不确定如何正确配置它或要包含哪些库。

我拥有的 Jersey Libs:https://maven.java.net/content/repositories/releases/org/glassfish/jersey/bundles/jaxrs-ri/2.6/jaxrs-ri-2.6.tar.gz

这似乎表明它可以与 Servlet 2.5(这是 Tomcat 6 使用的)一起工作:https://jersey.java.net/documentation/latest/modules-and-dependencies.html

java.lang.NoSuchMethodError: jersey.repackaged.com.google.common.collect.Iterables.concat(Ljava/lang/Iterable;Ljava/lang/Iterable;)Ljava/lang/Iterable;
        org.glassfish.jersey.server.internal.ConfigHelper.getContainerLifecycleListener(ConfigHelper.java:86)
        org.glassfish.jersey.servlet.ServletContainer.init(ServletContainer.java:169)
        org.glassfish.jersey.servlet.ServletContainer.init(ServletContainer.java:358)
        javax.servlet.GenericServlet.init(GenericServlet.java:212)
        org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103)
        org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293)
        org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:861)
        org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:612)
        org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:503)
        java.lang.Thread.run(Thread.java:662)

最佳答案

要使其正常工作,您需要:

  1. 来自 https://maven.java.net/content/repositories/releases/org/glassfish/jersey/bundles/jaxrs-ri/2.6/jaxrs-ri-2.6.tar.gz 的 2.6 Jersey 文件

  2. Genson(帮助处理对 JSON 来说不“明显”的对象的 JSON):http://owlike.github.io/genson/

  3. 将所有这些 jar 包含在您的 web-inf/lib 文件夹中(直接或通过您的 IDE 的编译/部署配置)

  4. 确保在 Web 应用程序的类路径中的任何位置都没有任何其他版本的任何 jar 或它们的类(我的 IDE 保留旧版本的 Guava)

关于java - 如何让 Jersey 2.6 与 Tomcat 6 和 Java 1.6 一起工作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36578928/

相关文章:

java - threadPoolExecutor 内存溢出异常

java - 我必须创建一个 deepArray2String 方法,该方法需要一个 2D int 数组 'x' 并返回其字符串表示形式

linux - 在linux中如何找到tomcat服务器在不同系统的多个端口上运行而不提及端口号

java - 设计网络应用程序 : where should business logic reside?

spring - 泽西+Oauth 2.0

java - 我们可以将 Spark 流用于基于时间的事件吗

Java 基准测试 : Ensuring that objects are not reused after coming out of scope

google-chrome - 无法连接到网络套接字

java - 我该如何解决 XMLStreamException

java - Jetty Fat Jar 中的 Jersey REST 服务 WAR