2012-04-10 3 views
0

SOAP 서비스에 액세스해야하며 wsdl url도 있습니다. 어떻게하면 자바에서이 일을 할까? 이를 달성하기위한 훌륭한 자습서가 있습니까?Java에서 SOAP 서비스에 액세스

또한 비누 서비스를 호출하는 안드로이드에서 생성 된 XML 파일이 있지만 작동하지 않습니다. xml이 제대로 webservice를 호출하는지 확인하기 위해이 xml을 붙여 넣을 수있는 곳이 있습니까 (wireshark를 사용하여 xml이 전송되고 잘 나타납니다).

+1

Apache 축 또는 cxf와 같은 웹 서비스 라이브러리를 사용해야합니다. 둘 다 wsdl에서 클라이언트 코드 생성을 제공합니다. –

+0

메모장에 쓰고 있습니까? 이데? – kommradHomer

답변

1

질문의 첫 부분에 대해서는 SoapUI (http://www.soapui.org/)를 사용하여 WSDL을로드하고 이에 대한 Java 클라이언트 코드 (http://nitinaggarwal.wordpress.com/2010/11/12/generating-client-java-code-for-wsdl-using-soap-ui-axis2-wsdl2java/)를 생성 할 수 있습니다. 나는이 방법을 한 번 사용했지만 더 나은 방법이있을 수 있습니다.

+0

axis2 genearted java 파일을 어떻게 실행합니까? – user1179510

+0

나는 apache-cxf-2.3.2 (http://cxf.apache.org/)를 사용하여이 작업을 수행했다. 나는 Eclipse에서 생성 된 java 패키지를 넣고 java 파일을 검사했다. 제 경우의 기본 자바 파일은 wsdl의 이름으로 된 파일과 ** '_ Service.java'**로 끝나는 두 가지 파일이었습니다. 생성 된 Java 클래스 중에는 ** 'Client.java'**로 끝나는 클래스가 있어야합니다. 여기에는 생성 된 클래스를 사용하여 wsdl의 모든 메소드를 호출하는 예제 코드가 들어 있습니다. 이 패키지를 jar로 내보내 주 프로젝트로 가져온 다음 예제 코드에 표시된대로 ws를 호출하면됩니다. –

+0

당신은 또한이 링크가 도움이 될 수 있습니다 (http://www.javadb.com/using-a-message-handler-to-alter-the-soap-header-in-a-web-service-client) 찾을 수 있습니다 당신의 도움을 많이 주셔서 감사합니다, –

0

가장 쉬운 방법은 netbeans에서 클라이언트 webservice 스텁을 생성하는 것입니다. 새 프로젝트를 만든 다음 새 웹 서비스 클라이언트를 추가하기 만하면됩니다. WSDL과 완료를 제공하십시오. Netbeans에는 훌륭한 웹 서비스 자습서가 있습니다.

매우 유용한 링크 : 나는 축 웹 서비스 클라이언트에서 멀리 체재 제안 http://netbeans.org/kb/trails/web.html

. 축에 대한 나의 경험은 좋지 않습니다. netbeans에 의해 사용되는 wsimport는 지금까지 훌륭합니다. JAX-WS를 사용합니다.

0

CXF가 Webservice를 클라이언트 생성을위한 도구 강력하고 사용하기 쉬운 둘 다보기 wsimport (JDK 6의 일부)를 사용할 수 있습니다.

Axis도 클라이언트 생성에는 문제가 있지만 개인적으로 문제가 있습니다.

관련 문제