2012-08-30 3 views
1

새로운 플레이! 프레임 워크 및 wsdl2java 도구 사용 나는 연극을 개발 중입니다! SOAP 웹 서비스와 상호 작용해야하는 애플리케이션. WSDL을 가지고 jaxws를 사용하여 객체를 생성했습니다. 그것은 자바 클래스와 1 인터페이스의 무리를 만들고있어. webservice 호출을 시도하자마자 클래스 로더가 인터페이스를 찾을 수 없다는 오류가 발생합니다. 이것은 내 코드입니다.클래스 로더에서 인터페이스를 볼 수 없습니다.

MyWebserviceBeanService service = new MyWebserviceBeanService(); 
MyWebserviceRemote mwr = service.getMyWebserviceBeanPort(); 
LoginResponse response = mwr.loginUser("xxx", "xxx"); 

'MyWebserviceRemote'는 인터페이스입니다. 자동 생성으로 getMyWebserviceBeanPort의 코드는 매우 일반적이지만, 여기있다 :

@WebEndpoint(name = "MyWebserviceBeanPort") 
public MyWebserviceRemote getMyWebserviceBeanPort() { 
    return super.getPort(new QName("http://xxxxxxxxxx/", "MyWebserviceBeanPort"), MyWebserviceRemote.class); 
} 

내가, 예를 메소드를 호출 할 때 나는이 문제를 디버깅하는 방법도이 문제를 해결하거나하는 방법을 정말 아무 생각이

play.exceptions.JavaExecutionException: interface xxxx.xxxx.xxxx.MyWebserviceRemote is not visible from class loader 
    at play.mvc.ActionInvoker.invoke(ActionInvoker.java:237) 
    at Invocation.HTTP Request(Play!) 
Caused by: java.lang.IllegalArgumentException: interface xxxx.xxxxx.xxxx.MyWebserviceRemote is not visible from class loader 
    at com.sun.xml.ws.client.WSServiceDelegate.createEndpointIFBaseProxy(WSServiceDelegate.java:736) 
    at com.sun.xml.ws.client.WSServiceDelegate.getPort(WSServiceDelegate.java:408) 
    at com.sun.xml.ws.client.WSServiceDelegate.getPort(WSServiceDelegate.java:384) 
    at com.sun.xml.ws.client.WSServiceDelegate.getPort(WSServiceDelegate.java:366) 
    at javax.xml.ws.Service.getPort(Service.java:119) 
    at xxxx.xxxx.xxxx.MyWebserviceBeanService.getMyWebserviceBeanPort(MyWebserviceBeanService.java:72) 
    at controllers.MyController.index(MyController.java:26) 
    at play.mvc.ActionInvoker.invokeWithContinuation(ActionInvoker.java:557) 
    at play.mvc.ActionInvoker.invoke(ActionInvoker.java:508) 
    at play.mvc.ActionInvoker.invokeControllerMethod(ActionInvoker.java:484) 
    at play.mvc.ActionInvoker.invokeControllerMethod(ActionInvoker.java:479) 
    at play.mvc.ActionInvoker.invoke(ActionInvoker.java:161) 
    ... 1 more 

: 위와 loginUser 방법은, 나는 다음과 같은 스택 트레이스를 얻을. 어디서 봤어? 어디서부터 시작해야합니까? SoapUI를 사용하여 웹 서비스를 테스트했는데 제대로 작동합니다.

감사합니다.

답변

5

이것은 재생 프레임 워크에서 충돌하는 jar 파일 (이름에 'jax'가있는 총 3 개의 병)로 인해 발생했습니다. 나는 그들을 제거하고 모두 잘되었습니다. 설명 오류 메시지 :-)에 대한 만세

관련 문제