I ran into a dependency problem using resteasy.
I am trying to start a maven project using the command "jetty: run". However, I get this stack trace when I try to get to the endpoint for my REST component of a web application.
java.lang.NoSuchMethodError: org.jboss.resteasy.specimpl.BuiltResponse.getHeaders()Ljavax/ws/rs/core/MultivaluedMap;
at org.jboss.resteasy.core.ServerResponseWriter.setDefaultContentType(ServerResponseWriter.java:195)
at org.jboss.resteasy.core.ServerResponseWriter.writeNomapResponse(ServerResponseWriter.java:46)
at org.jboss.resteasy.core.SynchronousDispatcher.writeResponse(SynchronousDispatcher.java:411)
at org.jboss.resteasy.core.SynchronousDispatcher.invoke(SynchronousDispatcher.java:376)
at org.jboss.resteasy.core.SynchronousDispatcher.invoke(SynchronousDispatcher.java:179)
at org.jboss.resteasy.plugins.server.servlet.ServletContainerDispatcher.service(ServletContainerDispatcher.java:220)
at org.tynamo.resteasy.ResteasyRequestFilter.service(ResteasyRequestFilter.java:97)
at $HttpServletRequestFilter_13b242ea59fdcfd6.service(Unknown Source)
at $HttpServletRequestHandler_13b242ea59fdcfd9.service(Unknown Source)
at org.lazan.t5.atmosphere.services.internal.HttpServletHttpServletRequestFilter.service(HttpServletHttpServletRequestFilter.java:72)
at org.lazan.t5.atmosphere.services.internal.AtmosphereHttpServletRequestFilter.service(AtmosphereHttpServletRequestFilter.java:50)
at $HttpServletRequestHandler_13b242ea59fdcfd9.service(Unknown Source)
at org.got5.tapestry5.jquery.services.AjaxUploadServletRequestFilter.service(AjaxUploadServletRequestFilter.java:27)
at $HttpServletRequestHandler_13b242ea59fdcfd9.service(Unknown Source)
at org.apache.tapestry5.internal.services.IgnoredPathsFilter.service(IgnoredPathsFilter.java:62)
at $HttpServletRequestFilter_13b242ea59fdcfd2.service(Unknown Source)
at $HttpServletRequestHandler_13b242ea59fdcfd9.service(Unknown Source)
at org.apache.tapestry5.services.TapestryModule$1.service(TapestryModule.java:852)
at $HttpServletRequestHandler_13b242ea59fdcfd9.service(Unknown Source)
at $HttpServletRequestHandler_13b242ea59fdcfd0.service(Unknown Source)
at org.apache.tapestry5.TapestryFilter.doFilter(TapestryFilter.java:171)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1148)
at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:387)
at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:181)
at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:765)
at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:417)
at org.mortbay.jetty.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:230)
at org.mortbay.jetty.handler.HandlerCollection.handle(HandlerCollection.java:114)
at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
at org.mortbay.jetty.Server.handle(Server.java:324)
at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:535)
at org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:865)
at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:539)
at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:212)
at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404)
at org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:409)
at org.mortbay.thread.QueuedThreadPool$PoolThread.run(QueuedThreadPool.java:520)
I found this answer , but it did not solve my problem after installing the dependency at the top. I also did not have this dependency in my pom.xml file, so I assume that I am depending on what uses the bad dependency?
EDIT 2
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<artifactId>graphene-parent</artifactId>
<groupId>graphene</groupId>
<version>4.1.0-SNAPSHOT</version>
</parent>
<artifactId>graphene-rest</artifactId>
<name>${project.artifactId}</name>
<properties>
<resteasy.version>3.0.1.Final</resteasy.version>
</properties>
<dependencies>
<dependency>
<groupId>graphene</groupId>
<artifactId>graphene-model</artifactId>
</dependency>
<dependency>
<groupId>graphene</groupId>
<artifactId>graphene-dao</artifactId>
</dependency>
<dependency>
<groupId>graphene</groupId>
<artifactId>graphene-search</artifactId>
</dependency>
<dependency>
<groupId>graphene</groupId>
<artifactId>graphene-util</artifactId>
</dependency>
<dependency>
<groupId>org.jboss.resteasy</groupId>
<artifactId>resteasy-jackson2-provider</artifactId>
<version>${resteasy.version}</version>
</dependency>
<dependency>
<groupId>org.jboss.resteasy</groupId>
<artifactId>resteasy-jaxrs</artifactId>
<version>${resteasy.version}</version>
</dependency>
<dependency>
<groupId>org.jboss.resteasy</groupId>
<artifactId>resteasy-jaxrs</artifactId>
<version>${resteasy.version}</version>
<exclusions>
<exclusion>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-simple</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.jboss.resteasy</groupId>
<artifactId>resteasy-jaxb-provider</artifactId>
<version>${resteasy.version}</version>
</dependency>
<dependency>
<groupId>org.tynamo</groupId>
<artifactId>tapestry-resteasy</artifactId>
<version>0.3.2</version>
<exclusions>
<exclusion>
<groupId>org.jboss.resteasy</groupId>
<artifactId>resteasy-jaxrs</artifactId>
</exclusion>
<exclusion>
<groupId>org.jboss.resteasy</groupId>
<artifactId>resteasy-jaxb-provider</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.tynamo</groupId>
<artifactId>tapestry-model-test</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>vande</groupId>
<artifactId>vande</artifactId>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
<configuration>
<archiveClasses>false</archiveClasses>
</configuration>
</plugin>
</plugins>
</build>
<description>Baseline rest services</description>
</project>
EDIT 1
pom.xml
<?xml version="1.0"?>
<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>com.humangeo.graphene</groupId>
<artifactId>humangeo-graphene-movies</artifactId>
<version>0.0.1-SNAPSHOT</version>
</parent>
<artifactId>humangeo-graphene-movies-web</artifactId>
<packaging>war</packaging>
<description>Web module (war) for Movies demo</description>
<dependencies>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>servlet-api</artifactId>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.springframework.data</groupId>
<artifactId>spring-data-neo4j</artifactId>
<version>3.0.0.RELEASE</version>
<type>jar</type>
</dependency>
<dependency>
<groupId>${base.project.groupId}</groupId>
<artifactId>graphene-rest</artifactId>
<version>${base.project.version}</version>
<type>jar</type>
</dependency>
<dependency>
<groupId>${base.project.groupId}</groupId>
<artifactId>graphene-web</artifactId>
<version>${base.project.version}</version>
<type>war</type>
</dependency>
<dependency>
<groupId>${base.project.groupId}</groupId>
<artifactId>graphene-web</artifactId>
<version>${base.project.version}</version>
<classifier>classes</classifier>
<type>jar</type>
</dependency>
<dependency>
<groupId>${base.project.groupId}</groupId>
<artifactId>graphene-model</artifactId>
<version>${base.project.version}</version>
</dependency>
<dependency>
<groupId>${base.project.groupId}</groupId>
<artifactId>graphene-dao</artifactId>
<version>${base.project.version}</version>
</dependency>
<dependency>
<groupId>${base.project.groupId}</groupId>
<artifactId>graphene-search</artifactId>
<version>${base.project.version}</version>
</dependency>
<dependency>
<groupId>${base.project.groupId}</groupId>
<artifactId>graphene-util</artifactId>
<version>${base.project.version}</version>
</dependency>
<dependency>
<groupId>${base.project.groupId}</groupId>
<artifactId>graphene-memorydb</artifactId>
<version>${base.project.version}</version>
</dependency>
<dependency>
<groupId>${base.project.groupId}</groupId>
<artifactId>graphene-dao-sql</artifactId>
<version>${base.project.version}</version>
</dependency>
<dependency>
<groupId>${base.project.groupId}</groupId>
<artifactId>graphene-dao-neo4j</artifactId>
<version>${base.project.version}</version>
</dependency>
<dependency>
<groupId>${base.project.groupId}</groupId>
<artifactId>graphene-model</artifactId>
<version>${base.project.version}</version>
</dependency>
<dependency>
<groupId>${base.project.groupId}</groupId>
<artifactId>graphene-dao</artifactId>
<version>${base.project.version}</version>
</dependency>
<dependency>
<groupId>${base.project.groupId}</groupId>
<artifactId>graphene-export</artifactId>
<version>${base.project.version}</version>
<type>jar</type>
</dependency>
</dependencies>
<repositories>
<repository>
<id>apache-staging</id>
<url>https://repository.apache.org/content/groups/staging/</url>
</repository>
</repositories>
<build>
<finalName>humangeo-graphene-movies-web</finalName>
<resources>
<resource>
<directory>src/main/java</directory>
<filtering>false</filtering>
<includes>
<include>**/*.*</include>
</includes>
<excludes>
<exclude>**/*.java</exclude>
<exclude>**/*.class</exclude>
</excludes>
</resource>
<resource>
<directory>src/main/resources</directory>
</resource>
<resource>
<directory>src/main/filtered-resources</directory>
<targetPath>filtered</targetPath>
<filtering>true</filtering>
</resource>
</resources>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
</plugin>
<plugin>
<artifactId>maven-dependency-plugin</artifactId>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
<configuration>
<workDirectory>target\overlay-war-folder</workDirectory>
<webXml>src\main\webapp\WEB-INF\web.xml</webXml>
<overlays>
<overlay>
<groupId>${base.project.groupId}</groupId>
<artifactId>graphene-web</artifactId>
<excludes>
<exclude>**/log4j.properties</exclude>
<exclude>WEB-INF/lib/*.jar</exclude>
</excludes>
</overlay>
</overlays>
<archiveClasses>false</archiveClasses>
<attachClasses>true</attachClasses>
<classesClassifier>classes</classesClassifier>
</configuration>
</plugin>
<plugin>
<groupId>org.mortbay.jetty</groupId>
<artifactId>maven-jetty-plugin</artifactId>
</plugin>
</plugins>
</build>
</project>
source
share