Я создаю простой веб-сервис REST, используя Джерси. И когда я пытаюсь запустить его на сервере (Tomcat 7), я получаю следующее исключение. В моей библиотеке зависимостей Maven я вижу, что класс (com.sun.jersey.spi.container.servlet.ServletContainer) уже присутствует. Нужна помощь.
Exception:
SEVERE: Servlet /SampleJersey threw load() exception
java.lang.ClassNotFoundException: com.sun.jersey.spi.container.servlet.ServletContainer
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1714)
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1559)
1. Я добавил дополнительное ядро зависимости maven и сервлет и попробовал. Но это не сработало.
<dependency>
<groupId>com.sun.jersey</groupId>
<artifactId>jersey-core</artifactId>
<version>1.17.1</version>
</dependency>
<dependency>
<groupId>com.sun.jersey</groupId>
<artifactId>jersey-servlet</artifactId>
<version>1.17.1</version>
</dependency>
Вот мой pom.xml:
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>3.8.1</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>com.sun.jersey</groupId>
<artifactId>jersey-server</artifactId>
<version>1.8</version>
</dependency>
<dependency>
<groupId>com.sun.jersey</groupId>
<artifactId>jersey-json</artifactId>
<version>1.19.4</version>
</dependency>
</dependencies>
И web.xml:
<servlet>
<servlet-name>Jersey Web Application</servlet-name>
<servlet-class>
com.sun.jersey.spi.container.servlet.ServletContainer
</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>Jersey Web Application</servlet-name>
<url-pattern>/*</url-pattern>
</servlet-mapping>




Здесь вы запускаете проект как динамический веб-проект на сервере в eclipse, поэтому вам следует открыть свойства проекта и отправить зависимости maven в каталог сервера, добавив зависимость maven в сборку развертывания.