Java2WSDL 도구 참조

Java2WSDL 도구는 Java™ 클래스를 WSDL 문서에 맵핑합니다.

Java2WSDL 도구는 Java 클래스를 입력 값으로 취하여 이 클래스를 표시하는 WSDL 파일 출력으로 생성합니다. 출력 위치에 파일이 있을 경우 해당 파일을 겹쳐씁니다.

Java2WSDL에서 생성되는 WSDL 문서는 입력 클래스에서 자동으로 파생되는 WSDL 및 XML 스키마 생성자를 포함합니다. 명령행 인수를 사용하여 이러한 기본값 중 대다수를 대체할 수 있습니다.

구문

Java2WSDL 도구는 <WS-install-dir>\appserver\bin 디렉토리에 있습니다.

Java2WSDL [<인수>] <클래스>

인수

필수 인수:

<클래스> - 다음 Java 클래스 중 하나의 완전한 이름(패키지 이름 포함)입니다.

Java2WSDL 도구는 CLASSPATH에서 클래스를 찾습니다.

선택 인수:

-help
도움말 메시지를 표시합니다.
-output <WSDLfile>
출력 WSDL 파일의 경로와 파일 이름을 지정합니다. 이 인수를 지정하지 않으면 기본 WSDL 파일인 <클래스>.wsdl이 현재 디렉토리에 작성됩니다.
데이터 유형
문자열
단위
적용 불가능
기본값
현재 디렉토리의 <클래스>.wsdl
범위
시스템의 올바른 파일 이름
-location <위치>
서비스의 위치(URL)를 지정합니다. 이 값은 보통 웹 서비스가 배치될 때 자동으로 지정됩니다. 위치 URL이 포함된 WSDL 파일을 배치하지 않고 생성하기만 하려면 이 인수로 위치를 지정하십시오. 위치를 지정하지 않을 경우, 최종 위치가 아직 지정되지 않아 생성된 WSDL 파일을 공개할 수 없음을 알려주는 경고가 표시됩니다. -servicePortName 인수로 대체되지 않을 경우, 마지막 슬래시 또는 백슬래시 뒤의 이름은 서비스 포트의 이름입니다. 서비스 포트 주소 위치 속성은 입력된 값으로 지정됩니다.
데이터 유형
문자열
단위
적용 불가능
기본값
file:undefined_location
범위
올바른 URL 문자열
-portTypeName <이름>
portType 요소에 사용할 이름을 지정합니다. 이를 지정하지 않을 경우 <클래스> 이름이 사용됩니다.
데이터 유형
문자열
단위
적용 불가능
기본값
<클래스>
범위
적용 불가능
-bindingName
바인딩 요소에 사용할 이름을 지정합니다. 이를 지정하지 않을 경우 서비스 요소 이름(-serviceElementName 인수)에 "SOAPBinding"을 추가한 이름이 바인딩 이름으로 사용됩니다.
데이터 유형
문자열
단위
적용 불가능
기본값
<serviceElementName> <SOAPBinding>
범위
적용 불가능
-serviceElementName <이름>
서비스 요소의 이름을 지정합니다.
데이터 유형
문자열
단위
적용 불가능
기본값
<portTypeName> Service. 여기서 <portTypeName>은 -portTypeName 인수로 지정된 이름이거나 기본 portTypeName입니다.
범위
적용 불가능
-servicePortName <이름>
서비스의 이름을 지정합니다. 이를 지정하지 않으면 -location 인수에서 파생된 서비스 이름이 사용됩니다.
데이터 유형
문자열
단위
적용 불가능
기본값
-location 인수 또는 <클래스> 이름의 마지막 백슬래시 '\' 뒤의 이름
범위
적용 불가능
-namespace <targetNamespace>
생성할 WSDL 문서의 대상 네임스페이스를 지정합니다.
데이터 유형
문자열
단위
적용 불가능
기본값
네임스페이스에 맵핑된 <클래스>의 패키지 이름
범위
적용 불가능
-PkgtoNS <패키지> <네임스페이스>
네임스페이스에 대한 Java 패키지의 맵핑을 지정합니다. 네임스페이스가 없는 패키지가 검색될 경우, Java2WSDL이 적합한 네임스페이스 이름을 생성합니다. 이 인수는 반복 지정할 수 있으므로 여러 패키지에 대한 맵핑을 지정할 수 있습니다.
  • 패키지:
    데이터 유형
    문자열
    단위
    적용 불가능
    기본값
    적용 불가능
    범위
    Java 패키지 이름
  • 네임스페이스:
    데이터 유형
    문자열
    단위
    적용 불가능
    기본값
    적용 불가능
    범위
    적용 불가능
-methods <메소드> [,<메소드>...]
이 인수를 지정하면 클래스에 있는 지정된 메소드만 WSDL 파일로 내보냅니다. 메소드 목록은 쉼표로 구분해야 합니다. 이 인수를 지정하지 않을 경우 클래스에 정의된 모든 메소드를 WSDL 파일로 내보냅니다.
데이터 유형
쉼표로 구분된 문자열 목록
단위
적용 불가능
기본값
<클래스>에 정의된 모든 메소드
범위
<클래스> 또는 해당 상위 클래스에 정의된 메소드.

-all 인수를 사용하여 포함시킬 메소드를 선택할 수도 있습니다.

-all
이 인수를 지정하면 Java2WSDL이 해당 상위 클래스를 탐색하여 WSDL 파일로 내보낼 메소드 목록을 판별합니다. -all 인수를 지정할 경우 -method 인수는 사용되지 않습니다. -stopClasses 인수는 정방향 메소드 스캔을 종료할 시점을 지정합니다.
-implClass <impl-class>
Java2WSDL 도구는 메소드의 매개변수 이름을 사용하여 WSDL 메시지 파트 이름을 구성합니다. 메시지 이름은 <클래스>의 디버그 정보에서 가져옵니다. 이 클래스가 디버그 정보 없이 컴파일되었거나, 인터페이스인 경우에는 메소드 매개변수 이름이 제공되지 않습니다. 이 경우, -implClass 인수를 사용하여 메소드 매개변수 이름을 가져올 대체 클래스를 지정하십시오. <클래스>가 인터페이스인 경우, <impl-class>는 <클래스>를 반드시 구현하지 않아도 되지만 <클래스>와 동일한 메소드를 구현해야 합니다.
데이터 유형
문자열
단위
적용 불가능
기본값
적용 불가능
범위
<클래스>와 동일한 메소드를 구현하는 CLASSPATH의 Java 클래스
-stopClasses <상위> [,<상위>...]
-all 인수가 지정된 경우, Java2WSDL이 상속된 클래스와 인터페이스를 검색하여 WSDL 조작에 사용할 메소드 목록을 구성합니다. Java2WSDL은 확장 complexTypes를 생성할 때 상속된 클래스 및 인터페이스를 검색합니다. 이 검색은 Java 또는 Javax로 시작하는 패키지가 포함된 클래스나 인터페이스를 발견할 때마다 중지됩니다. -stopClasses 인수를 사용하여 검색을 중지시키는 추가 클래스를 정의할 수도 있습니다.
데이터 유형
쉼표로 구분된 문자열 목록
단위
적용 불가능
기본값
기본 stopClasses는 java.* 및 javax.*입니다.
범위
<클래스>의 상위 클래스
-style RPC | DOCUMENT | WRAPPED
생성된 WSDL에서 사용할 WSDL 스타일을 지정합니다. 이 인수는 -use 인수와 함께 사용됩니다.
  • -use ENCODED와 함께 RPC를 지정하거나 -use를 생략할 경우 style=rpc/use=encoded WSDL이 생성됩니다.
  • -use LITERAL과 함께 RPC를 지정할 경우 style=rpc/use=literal WSDL이 생성됩니다.
  • -use LITERAL과 함께 DOCUMENT를 지정하거나 -use를 생략할 경우 style=document/use=literal WSDL이 생성됩니다.
  • -use LITERAL과 함께 WRAPPED를 지정하거나 -use를 생략할 경우 "랩핑된" 형식의 style=document/use=literal WSDL이 생성됩니다.
  • DOCUMENT를 지정할 경우 랩핑되지 않은 WSDL이 생성됩니다.

WRAPPED 형식은 다음을 가리킵니다.

  • complexType이 요청 및 응답에 생성됩니다.
  • 요청에 사용되는 complexType은 operation.request와 동일한 이름을 가지며 각 입력 매개변수 요소를 포함합니다.
  • 응답에 사용되는 complexType은 조작 + "Response" 형식의 이름을 가지며 각 출력 요소를 포함합니다.
  • 요청 메시지는 "body"라는 단일 파트를 포함하는 요청 complexType을 참조합니다.
데이터 유형
문자열
단위
적용 불가능
기본값
RPC
범위
RPC, DOCUMENT 또는 WRAPPED
-use LITERAL | ENCODED
-style 인수와 함께 사용되며, WSDL에 생성할 4가지 스타일 조합(RPC/Enc, RPC/Lit, Doc/Lit 또는 Doc-wrapped/Lit)을 지정합니다. 자세한 내용은 WSDL 바인딩 절을 참조하십시오.
데이터 유형
문자열
단위
적용 불가능
기본값
스타일이 RPC인 경우 ENCODED, 그 외의 경우 LITERAL
범위
ENCODED 또는 LITERAL
--outputWsdlMode <모드>
<모드> 값이 인터페이스이거나 구현인 경우, 해당 값에 따라 각각 WSDL 서비스 인터페이스 문서 또는 WSDL 서비스 구현 문서를 생성합니다. 참고: 이 인수는 하이픈 2개로 시작해야 합니다. 그렇지 않으면 -output 인수와 구분되지 않습니다.

문제점 해결

Java2WSDL에서 생성된 WSDL에 예상치 않은 요소가 포함될 수 있습니다. 수행되는 변환에 대한 자세한 정보는 JAX-RPC 스펙을 참조하십시오.

또한 작성한 WSDL 문서를 WSDL2Java 도구로 Java로 재생성할 경우 해당 WSDL 문서에서 컴파일되지 않는 출력이 작성될 수도 있습니다. 이는 Java에서 WSDL로의 JAX-RPC 맵핑이 반전되지 않기 때문입니다. 이 문제가 발생할 경우 WSDL 파일을 검사하여 원하는 결과가 나오도록 파일을 수정하십시오.


피드백