2010-04-17 1 views
1

웹 서비스가 있고 ws-import를 사용하여 웹 클라이언트를 만들고 있습니다.동일한 클라이언트를 사용하여 동일한 웹 서비스에 액세스

MyServiceService service = new MyServiceService(); 

그것은 그대로 잘 작동 : 클라이언트를 만들 때

나는이 라인을 가지고있다.

다른 웹 서버에서 동일한 웹 서비스가 실행되고 있으며 동일한 클라이언트를 사용하여 액세스 할 수 있는지 궁금합니다. 클라이언트의 wsdl url을 변경할 수 있습니까? Eclipse의 Ctrl-Space는 MyServiceService에 입력 할 수있는 2 개의 매개 변수를 제공합니다.이 매개 변수는 URL arg0 및 Qname arg1입니다. 내가 뭘 찾고 있니? 그리고 이것은 내가 관련된 자바 독을 발견하지 않았기 때문에 지은 Qname에 넣어해야하며, 구글에

감사와 안부도 그것을 찾을 수 없습니다 어떤 경우, Krt_Malta

답변

0

인 경우 예, 당신은이 작업을 수행 할 수 있습니다 . 의심스러운 경우 서비스 클래스에 생성 된 this signature의 생성자를 사용해야합니다. 보시다시피 두 개의 인수 (QName 및 Url)가 필요합니다.

QName은 결정하기가 약간 까다 롭습니다. 서비스 클래스 (그리고 클래스의 @Service 속성)의 인수가없는 생성자에 대해 생성 된 소스 코드를 살펴 봐야한다. 이렇게하면, 인수가없는 생성자가 사용하는 QName을 파악할 수 있어야합니다. 그냥 같은 값을 가진 QName을 만들고 그것을 사용하십시오.

URL은 쉽습니다. 액세스하려는 wsdl URL 만 사용하십시오.

+0

P. 사용할 QName을 알아내는 데 여전히 문제가있는 경우 생성 된 서비스 스텁 소스 코드를 게시하면 사용할 QName을 표시 할 수 있습니다. –

+0

Brilliant! QName은 다음과 같습니다. 개인 최종 정적 QName MYSERVICESERVICE_QNAME = 새 QName ("http : // MyService /", "MyServiceService"); 감사합니다. :) –