2014-01-13 3 views
10

У меня есть jee7 web api как зависимость. Я могу успешно запустить приложение tomcat, но что говорит мне следующее заявление о нарушении? Нужно ли мне предпринимать какие-либо действия?Что говорит оскорбительный класс при запуске сервера?

Jan 13, 2014 5:47:47 PM org.apache.catalina.loader.WebappClassLoader validateJarFile 
Information: validateJarFile(C:\Users\me\Servers\apache-tomcat-7.0.50\wtpwebapps\app\WEB-INF\lib\el-api-2.2.jar) - jar not loaded. See Servlet Spec 3.0, section 10.7.2. Offending class: javax/el/Expression.class 
Jan 13, 2014 5:47:47 PM org.apache.catalina.loader.WebappClassLoader validateJarFile 
Information: validateJarFile(C:\Users\me\Servers\apache-tomcat-7.0.50\wtpwebapps\app\WEB-INF\lib\javaee-web-api-7.0.jar) - jar not loaded. See Servlet Spec 3.0, section 10.7.2. Offending class: javax/servlet/Servlet.class 

pom.xml

<dependency> 
     <groupId>javax</groupId> 
     <artifactId>javaee-web-api</artifactId> 
     <version>7.0</version> 
    </dependency> 
+2

Если вы используете tomcat 7, вы должны использовать javaee-web-api 6.0. JEE 7 будет поддерживаться в предстоящем Tomcat 8 –

+0

Я также пробовал 6.0, а также javax.servlet-api 3.1.0. тот же результат на обоих – membersound

+0

Вы рассматривали поиск раздела 10.7.2 спецификации сервлета 3.0? – EJP

ответ

17

Похоже, вы (ваш контейнер сервлетов) пытаются загрузить некоторые классы, которые уже были загружены. servlet-api и el-api должны быть предусмотрены контейнером Servlet.

Изменить pom.xml учесть, что

<dependency> 
    <groupId>javax</groupId> 
    <artifactId>javaee-web-api</artifactId> 
    <version>7.0</version> 
    <scope>provided</scope> 
</dependency> 
+0

Я просто попробовал, сообщение остается тем же ... – membersound

+0

@membersound Если вы его правильно построили, этот путь 'WEB-INF \ lib \ javaee-web-api-7.0.jar' не должен существовать. –

+0

У меня была такая же проблема при использовании IntelliJ builds вместо Maven. ' предоставил' исправил его. –

2

Я сталкивался с таким же вопросом в ходе проекта с помощью Eclipse.

Doing ниже вещи решен вопрос

  1. Добавлено javax. * .jar к пути сборки
  2. Удалено проект - дал чистую сборку и добавил проект и, наконец, опубликовал .... !!

Bingo ... !!

Это решило мою проблему. Надеюсь это поможет.

Thanks,

mskr.

1

Это очень распространенная проблема для разработчиков, которые используют Maven в качестве инструмента сборки. когда мы включаем сервлетного-API как зависимость проекта pom.xml т.е., как это:

добавить объем, как это предусмотрено в указанной выше зависимости следующим образом.

<dependency> 
<groupId>javax.servlet</groupId> 
<artifactId>servlet-api</artifactId> 
<version>2.5</version> 
<scope>provided</scope> 
</dependency> 
0

Я установил это с помощью правильной версии Servlet API: Tomcat 7.x ожидает версии 3.0.x, а не 3.1.x я пытался использовать.

Смежные вопросы