2011-09-29 2 views
1

REST 클라이언트 (저지 - 클라이언트)와 JBoss6 :내 웹 응용 프로그램 (6.0.0.Final과 .WAR)에서 REST 서비스를 소비하지만, 문제가 추가 저지 클라이언트 libs가 갖고 싶어

<dependency> 
    <groupId>com.sun.jersey</groupId> 
    <artifactId>jersey-client</artifactId> 
    <version>1.9.1</version> 
    <type>jar</type> 
    <scope>compile</scope> 
</dependency> 

을 이 구성을 나는 보스를 시작하는 동안 다음과 같은 오류가 발생합니다 :

08:11:28,297 ERROR [org.apache.catalina.core.ContainerBase.[jboss.web]. 
[localhost].[/test]] Exception starting filter Resteasy: 
java.lang.ClassCastException: com.aht.erp.web.rest.JaxRsActivator 
cannot be cast to javax.ws.rs.core.Application 

내 웹 애플리케이션 다음 주석과 활성화 JAX-RS 있습니다

import javax.ws.rs.ApplicationPath; 
import javax.ws.rs.core.Application; 

@ApplicationPath("/rest") 
public class JaxRsActivator extends Application {} 

내가 dependecy를 추가하지 않으면 나의 전쟁은 시작된다. 물론 jersey-client가 불릴 때 나는 NoClassDefFoundError: com/sun/jersey/api/client/config/ClientConfig를 얻는다. jersey-core을 제외하면이 오류가 발생합니다 : NoClassDefFoundError: com/sun/jersey/core/util/FeaturesAndProperties.

답변

4

웹 응용 프로그램에서 서로 다른 두 가지 jax-rs 구현을 섞어 사용하려고합니다. RESTful 리소스의 경우 RESTEasy를 사용하고 클라이언트 측에서는 Jersey를 사용하려는 경우 - 모두 동일한 병에서 사용됩니다. 그러나 Jersey 클라이언트는 RESTEasy와 충돌하는 Jersey 코어에 의존합니다. 따라서 RESTEasy 클라이언트 API에 의존하거나 서버 측용으로 Jersey로 전환해야합니다.

관련 문제