У меня есть приложение для отдыха. Моя цель - удалить IBM JAX-RS и использовать RESTEasy JAX-RS. Я использую WAS8, и я хочу использовать только это.Невозможно протестировать RESTEasy JAX-RS для REST API
Чтобы отключить IBM JAX-RS, я удалил классы IBMRestServlet и IBMRestFilter и установил com.ibm.websphere.jaxrs.server.DisableIBMJAXRSEngine JVM для прав в консоли администратора.
Для Resteasy JAX-RS implementaion, Added Resteasy-jaxrs зависимостей в ПОМ и сконфигурированный сервлет в web.xml
<dependency>
<groupId>org.jboss.resteasy</groupId>
<artifactId>resteasy-jaxrs</artifactId>
<version>3.0.11.Final</version>
</dependency>
web.xml
<context-param>
<param-name>resteasy.servlet.mapping.prefix</param-name>
<param-value>/</param-value>
</context-param>
<listener>
<listener-class>
org.jboss.resteasy.plugins.server.servlet.ResteasyBootstrap
</listener-class>
</listener>
<servlet>
<servlet-name>resteasy-servlet</servlet-name>
<servlet-class>
org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher
</servlet-class>
<init-param>
<param-name>javax.ws.rs.Application</param-name>
<param-value>com.application.RestApplication</param-value>
</init-param>
</servlet>
<servlet-mapping>
<servlet-name>resteasy-servlet</servlet-name>
<url-pattern>/*</url-pattern>
</servlet-mapping>
A) Сначала я получил «Java. lang.NoSuchMethodError: org/jboss/resteasy/samplepl/BuiltResponse.getHeaders() исключение. Глядя на различные ответы, добавил ниже зависимость, как первый в pom.xml (хотя это не делает никакого смысла для меня)
<dependency>
<groupId>org.jboss.resteasy</groupId>
<artifactId>jaxrs-api</artifactId>
<version>3.0.11.Final</version>
</dependency>
B) Теперь после этого, я получаю java.lang.NoSuchMethodError: javax/WS /rs/ClientErrorException.validate(Ljavax/ws/rs/core/Response;Ljavax/ws/rs/core/Response$Status$Family;Ljavax/ws/rs/core/Response)
Можете ли вы помочь мне разрешения как A, так и B исключений. Я хочу попробовать это только в WAS8.
Кроме того, как я могу быть уверен, что я полностью отключил IBM JAX-RS, и сервер выбирает только REST Easy jaxrs.
Да, я изменил его. Мои приложения. Порядок загрузчика классов - это классы, загруженные сначала загрузчиком локального класса (родительский последний). – user3766874
Дважды проверьте, что вы устанавливаете это на веб-модуле, а не в приложении - у них есть отдельные загрузчики классов, которые должны иметь этот параметр, настроенный отдельно. Если THAT не решит его, и вы уверены, что как API, так и банки реализации находятся в загрузчике с этим параметром, тогда, возможно, трассировка стека поможет сузить его - возможно, есть проблема с тем, неожиданные области. – Jarid