WSDL2Client 도구는 웹 서비스의 WSDL 문서에서 클라이언트를 생성합니다.
구문
명령행을 설정했다면 다음 구문과 인수를 사용하여
도구를 실행할 수 있습니다.
스켈레톤 클라이언트 구현을 작성하려면
다음 구문을 사용하십시오.
- Windows: WSDL2Client
[<선택 인수>] -project <ProjectDir> <WSDL URI>
- Linux: WSDL2Client.sh
[<선택 인수>] -project <ProjectDir> <WSDL URI>
- <WSDL URI>는 마지막 인수여야 합니다.
- -createEar 인수를 성공적으로 실행하려면, 스켈레톤 웹 서비스 클라이언트 구현을 작성할 때
-clientType 인수를 지정해야 합니다.
클라이언트 아카이브를 작성하려면 다음 구문을 사용하십시오.
- Windows: WSDL2Client
[<선택 인수>] -createEar <대상 EAR 파일의 이름>
-clientType <application | servlet | EJB> <ProjectDir>
- Linux: WSDL2Client.sh
[<선택 인수>] -createEar <대상 EAR 파일의 이름>
-clientType <application | servlet | EJB> <ProjectDir>
인수
스켈레톤 클라이언트 구현을 작성하려면
다음 인수를 사용하십시오.
필수 인수:
- -project <ProjectName>
- 결과를 출력할 대상 프로젝트 디렉토리의 완전한 경로를
지정합니다. 이 디렉토리가 존재하지 않으면 WSDL2Client에서
자동으로 작성합니다. 기본값은 현재 디렉토리입니다.
- <WSDL-URI>
- WSDL 문서의 위치를 URI로 지정합니다. 이 URI는
원격 또는 로컬 파일 시스템일 수 있습니다. WSDL이
여러 개의 WSDL 문서로 분할된 경우, 가져오기 체인의
최상위 문서(주로 구현 WSDL)를 지정해야 합니다.
선택 인수:
- -NSToPkg <맵핑>
- namespace=package 맵핑의 목록을 지정합니다.
- -fileNSToPkg <맵핑 파일>
- namespace=package 맵핑이 포함된 특성 파일의 경로를
지정합니다. 이 파일에서는 네임스페이스에 포함된 콜론(':')을
백슬래시로 이스케이프 처리해야 합니다(예: http\://my.namespace).
WSDL2Client는 콜론을 이스케이프 처리하지 않은
모든 네임스페이스 참조를 무시합니다.
- -all
- WSDL 문서에 정의된 모든 복합 유형에 대한 Java™ 클래스를
생성합니다. 기본값은
WSDL 문서에서만 정의 및 참조되는 클래스를
생성하는 것입니다.
- -genResolver
- 가져오기 분석기를 생성합니다. 이 분석기는 가져온 XSD(xml 스키마) 파일의
모든 정보를 포함합니다. 이 매개변수에 대한 자세한 내용은
참고 1을 참조하십시오.
- -wsSecDir <디렉토리>
- WSDL2Client에서 WS-Security 정보를 사용하여 생성되는
배치 디스크립터를 구성할 템플리트가 포함된 디렉토리의 전체 경로를
지정합니다. 이 디렉토리는 ibm-webservicesclient-bnd.xmi 및
ibm-webservicesclient-ext.xmi 파일도 포함해야 합니다.
- -clientType <J2SE | Application | Servlet | EJB>
- 지정된 클라이언트 유형에 사용할 스켈레톤 구현 클래스를
생성합니다. 이 인수는 -genMain 인수를 사용할 때만 지정할 수
있습니다.
- -genMain <기본 클래스 이름>
- 생성할 기본 클래스의 이름을 지정합니다. 이 인수는 -clientType 인수를 사용할 때만
지정할 수 있습니다.
- -user
- WSDL URI에 액세스하는 데 사용할 사용자 이름을 지정합니다.
- -password
- WSDL URI에 액세스하는 데 사용할 비밀번호를 지정합니다.
- -verbose
- 도구를 실행하면 추가 정보를 표시합니다.
- -help
- 도움말 정보를 표시합니다.
- -clientName <클라이언트 이름>
- <ProjectDirectory>의 <클라이언트 이름>이라는 디렉토리에
클라이언트를 생성합니다.
- -overwrite
- 기존의 클라이언트 디렉토리를 겹쳐씁니다.
클라이언트 아카이브를 작성하려면 다음 인수를 사용하십시오.
필수 인수:
- -createEar<대상 EAR 파일의 이름>
- 작성할 EAR 파일의 완전한 경로 이름을 지정합니다.
지정한 경로 이름이 이미 존재할 경우, .ear~ 확장자를 사용하여
기존 파일을 백업한 후에 새 파일로 기존 파일을 겹쳐씁니다.
- -clientType <application | servlet | EJB>
- 구현할 클라이언트 유형을 지정합니다.
- -ri
- 클라이언트 원격 인터페이스의 이름을 지정합니다. 이는
완전한 패키지 이름이어야 합니다. -clientType EJB를 지정할 경우
이 인수는 필수입니다. 그 외의 다른 유형을 사용할 경우 이 인수는 유효하지 않습니다.
- -main
- 클라이언트 기본 클래스의 이름을 지정합니다. 이는
완전한 패키지 이름이어야 합니다. -clientType <Application
| Servlet>을 지정할 경우 이 인수는 필수입니다.
그 외의 다른 유형을 사용할 경우 이 인수는 유효하지 않습니다.
- <ProjectDir>
- WSDL2Client의 1단계 또는 Bean2WebService와 같은 다른 도구에서 작성된
프로젝트 디렉토리의 경로 이름입니다.
이 디렉토리는 컴파일된 클라이언트 구현이 포함된 Client-side 디렉토리를
포함해야 합니다.
선택 인수:
- -verbose
- 도구를 실행하면 추가 정보를 표시합니다.
- -help
- 도움말 정보를 표시합니다.
- -rootModule <루트 모듈 기본 이름>
- 클라이언트 유형이 동일한 개별 웹 서비스 클라이언트를 단일 모듈로
병합하고 집계합니다. -clientName 옵션을 사용하여 클라이언트를
생성할 경우에만 유효합니다. 웹 모듈의 이름은 <루트
모듈 기본 이름>_WEB.war로, EJB 클라이언트 모듈의 이름은 <루트
모듈 기본 이름>_EJB.jar로, 애플리케이션 클라이언트 모듈의 이름은
<루트 모듈 기본 이름>_APP.jar로 지정됩니다.
참고 1:
-genResolver 인수만
선택하여 원격에 있는 절대 참조 로컬 위치를 가져오면, 웹 서비스를 실행할 때 인터넷에 반드시 연결하지 않아도 됩니다. 이는
로컬 또는 상대적 가져오기에 사용할 수 없습니다. 또한 -genResolver
옵션은 XSD 파일을 가져오는 WSDL 가져오기가 포함된 WSDL 파일에서
사용할 수 없습니다. 예를 들어, 다음과 같이 WSDL 가져오기가 스키마 요소 밖에
있는 경우
<import location="a.xsd" namespace="http://namespaceA"/>
<유형>
<schema xmlns="http://www.w3.org/2001/XMLSchema"
targetNamespace="http://namespaceA"
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
아래와 같이 변경하여 스키마 요소 안에
스키마 가져오기를 포함시키십시오.
<유형>
<schema xmlns="http://www.w3.org/2001/XMLSchema"
targetNamespace="http://namespaceA"
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<import schemaLocation="a.xsd" namespace="http://namespaceA"/>