J2SE (데스크톱) 응용 프로그램에서 액세스 할 때 제대로 작동하는 웹 서비스가 있습니다. 이 서비스를 액세스하기 위해 따라야 할 :웹 서비스 용 웹 클라이언트
- 은 그때 생성 된 클래스를 사용하여 서비스를 생성하고 WSDL의 operations.It 중 하나를 실행 자바 wsimport의 도구
를 사용하여 WSDL 링크로 스텁 클래스를 생성은 다음과 같습니다
MyWebServiceService webService = new MyWebServiceService();
MyWebService port = webService.getMyWebServicePort();
webService.run ("XYZ");
독립형 응용 프로그램에서 사용하면 슬프지만 잘 작동합니다. 내가 생성 된 스텁을 사용하여 같은 방법으로하지만, 서블릿 - 클라이언트에서 웹 서비스에 액세스하려고하면 오류 다음 얻을 하지만 ... : 나는하지만 구글 오랜 시간을 검색 한
java.lang.ClassCastException: com.sun.xml.bind.v2.runtime.JAXBContextImpl cannot be cast to com.sun.xml.bind.api.JAXBRIContext
org.jboss.ws.metadata.umdm.EndpointMetaData.eagerInitializeAccessors(EndpointMetaData.java:686)
org.jboss.ws.metadata.umdm.EndpointMetaData.initializeInternal(EndpointMetaData.java:567)
org.jboss.ws.metadata.umdm.EndpointMetaData.eagerInitialize(EndpointMetaData.java:553)
org.jboss.ws.metadata.builder.jaxws.JAXWSClientMetaDataBuilder.rebuildEndpointMetaData(JAXWSClientMetaDataBuilder.java:314)
org.jboss.ws.core.jaxws.spi.ServiceDelegateImpl.getPortInternal(ServiceDelegateImpl.java:271)
org.jboss.ws.core.jaxws.spi.ServiceDelegateImpl.getPort(ServiceDelegateImpl.java:202)
javax.xml.ws.Service.getPort(Service.java:143...
아무것도 도움이 주제를 발견 . 일부 주제는 서블릿에서 웹 서비스에 액세스하는 예를 보여,하지만 불행히도 나는이 작업을 수행 할 수 없습니다 ... (그리고 문제의 원인이 무엇인지 모르는
응용 프로그램 서버 :. 보스 4.2.3GA이
인가 어떻게하면 서블릿에서 웹 서비스에 연결할 수 있습니까? 어떻게합니까?
@WebServiceRef 주석을 사용해 보았지만 웹 컨테이너가 웹 서비스 스텁을 삽입 할 수없는 것처럼 보입니다. 스텁 클래스는 이미 wsimport 도구에서 생성되었으며이 클래스를 사용하여 웹 서비스에 액세스 할 수 있기 때문에
wsimport -keep -p com.myhost.ws http://www.myhost.com/services/MyWebService?wsdl
... –
어떤 버전은 너 사용하고있어? JAX-WS RI의 버전은 무엇입니까? 당신은 전쟁에서 JAX-RI를 포장합니까? –
1. jdk 1.6.0_13 2. RI가 '원격 인터페이스'인 경우 버전을 확인하는 방법을 모르겠습니다. 3. 예, RI도 패키지로 제공됩니다. –