org.springframework.web.servlet.DispatcherServlet был найден, но отсутствует другой требуемый класс

#java #spring #maven #spring-mvc #servlets

#java #spring #maven #spring-mvc #сервлеты

Вопрос:

Пакет EAR развернут в WAS8.5.5.7. Пользовательский интерфейс может отображаться. Однако, когда пользовательский интерфейс пытается запустить функцию Java, я получаю ответ ниже.

 Error 404: javax.servlet.UnavailableException: SRVE0203E: Servlet [rrbapp]: org.springframework.web.servlet.DispatcherServlet was found, but is missing another required class.

SRVE0206E: This error typically implies that the servlet was originally compiled with classes which cannot be located by the server.

SRVE0187E: Check your class path to ensure that all classes required by the servlet are present.SRVE0210I: This problem can be debugged by recompiling the servlet using only the classes in the application's runtime class path

SRVE0234I: Application class path=[/opt/WebSphere85/profiles/appprofile/installedApps/wascell/abcapp.ear/cn-abc-web-app-1.0.0.war/WEB-INF/classes:
/opt/WebSphere85/profiles/appprofile/installedApps/wascell/rrbapp.ear/cn-abc-web-app-1.0.0.war/WEB-INF/lib/cn-abc-domain-1.0.0.jar:
/opt/WebSphere85/profiles/appprofile/installedApps/wascell/rrbapp.ear/cn-abc-web-app-1.0.0.war/WEB-INF/lib/cn-abc-db-object-1.0.0.jar:
/opt/WebSphere85/profiles/appprofile/installedApps/wascell/rrbapp.ear/cn-abc-web-app-1.0.0.war/WEB-INF/lib/cn-abc-web-1.0.0.jar:
/opt/WebSphere85/profiles/appprofile/installedApps/wascell/rrbapp.ear/cn-abc-web-app-1.0.0.war/WEB-INF/lib/commons-logging-1.2.jar:
....
  

Ответ №1:

Похоже, это ошибка зависимости от Jar, вы пробовали запускать mvn clean install , это должно решить вашу проблему. Запустите эту команду и повторите попытку повторного развертывания

Комментарии:

1. Я попробовал «mvn clean install» для своего проекта, а затем создал пакет ear для повторного развертывания на сервере WAS. Но появляется то же сообщение об ошибке. Возможно ли связать с каким-либо конфликтом jar между моим пакетом и сервером WAS? Он может работать в локальном Eclipse. Тот же пакет EAR также может работать на сервере Tomcat. Но не может работать на сервере WAS.

2. Да, разница в bcz серверной библиотеки

3. Не могли бы вы посоветовать, какой файл jar может привести к этой проблеме «DispatcherServlet»? spring-web, spring-webmvc? или другие?

Ответ №2:

После добавления в мой пакет jar «slf4j-log4j12» он может работать без этой ошибки. Я думаю, причина в том, что журнал не может печатать без этого jar на сервере, поэтому программа останавливается в начале.