JAX-RPC 애플리케이션에 대한 Java2WSDL 명령
Java2WSDL 명령행 도구는 Java™ 클래스를 JAX-RPC(Java API for XML-based RPC) 애플리케이션에 대한 WSDL 파일에 맵핑합니다.
Java2WSDL 명령행 도구는 z/OS® 플랫폼에서 지원되지 않습니다.이 기능은
제품의 z/OS 버전과 함께
제공되는 어셈블리 도구에서 제공합니다.
Java2WSDL 명령은 다음 JAX-RPC(Java API for XML-based Remote Procedure Call) 1.2 스펙에 의해 Java 클래스를 WSDL(Web Services Description Language) 파일로 맵핑합니다.
Java2WSDL 명령은 입력으로 Java 클래스를 승인하고 입력 클래스를 표시하는 WSDL 파일을 생성합니다. 파일이 출력 위치에 존재하면 이는 겹쳐써집니다. Java2WSDL 명령이 생성하는 WSDL 파일에는 입력 클래스에서 자동으로 파생되는 WSDL 및 XML 스키마 구성이 포함됩니다. 이러한 기본값을 명령행 인수로 대체할 수 있습니다.
Java2WSDL 명령은 프로토콜 독립입니다. Java2WSDL 명령을 실행할 때, WSDL 파일에서 SOAP 및 비SOAP 프로토콜 바인딩 모두를 생성하는 명령행 옵션을 지정할 수 있습니다. 생성될 수 있는 각 바인딩의 경우, Java2WSDL 명령에 해당 바인딩에 대한 WSDL을 생성하기 위한 바인딩 생성기가 있습니다.
명령행 구문 및 인수
Java2WSDL [argument...] class
다음 명령행 인수가 지원됩니다.
필수 인수
- class다음 Java 클래스 중 하나의 완전한 이름을 나타냅니다.
- javax.ejb.EJBObject 클래스를 확장하는 Stateless 세션 EJB(Enterprise JavaBeans) 원격 인터페이스
- java.rmi.Remote 클래스를 확장하는 서비스 엔드포인트 인터페이스
- Java beans
중요한 인수
- -location 위치
공개된 위치 또는 서비스의 URL(Uniform Resource Locator)을 제공합니다. 이 정보가 제공되지 않으면 마지막으로 공개된 위치가 아직 결정되지 않았다는 것을 표시하는 경고가 실행됩니다. 서비스 위치는 일반적으로 웹 서비스가 배치될 때 대체됩니다.
마지막 백슬래시 뒤의 이름은 이름이 -servicePortName 인수로 대체되지 않으면 서비스 포트의 이름입니다. 서비스 포트 주소 위치 속성이 지정된 값을 지정받습니다. 여러 엔드포인트 주소가 지정될 수 있습니다. 단일 바인딩 유형이 필요한 경우에만 -location 옵션을 사용하는 것이 권장됩니다. 여러 바인딩 유형이 필요하면 프로토콜 바인딩 특정 위치 특성이 -x 플래그를 사용하여 명령행을 통해 전달됩니다.
다음 예제는 HTTP를 통한 SOAP 및 JMS(Java Message Service)를 통한 SOAP 바인딩 모두를 생성하는 방법에 대해 설명합니다.
-location 옵션을 사용하여 바인딩 특정 특성 값을 통해 지정되는 엔드포인트 URL을 요청하여 -location 옵션 값이 적용되는 포트를 판별하십시오.java2wsdl -bindingTypes http,jms \ -x http.location=http://your.server.name:9080/StockQuoteService/services/StockQuote \ -x jms.location= \ jms:/queue?destination=jms/MyQueue&connectionFactory=jms/MyCF&targetService=StockQuote
- -output wsdl-uri
출력 WSDL 파일의 경로와 파일 이름을 표시합니다. 지정되지 않으면 기본 class.wsdl 파일은 현재 디렉토리에 작성됩니다.
- -input wsdl-uri
출력 WSDL 파일을 빌드하는 데 사용되는 입력 WSDL 파일을 지정합니다. 기존 WSDL 파일로부터의 정보가 이 옵션에 지정되고, 출력을 생성하기 위해 입력 Java 클래스와 함께 사용됩니다.
- -bindingTypes 출력 WSDL 파일에 바인딩 유형 쓰기의 목록을 지정합니다. Java2WSDL 명령의 각 바인딩 생성기는 특정 바인딩 유형을 지원합니다. 올바른 바인딩 유형 값은 http(HTTP를 통한 SOAP), jms(JMS를 통한 SOAP) 및 ejb(로컬 또는 원격 EJB 호출)입니다. 예를 들어, 다음 명령은 HTTP를 통한 SOAP, my.pkg.MySEI 서비스 엔드포인트 인터페이스에 대한 EJB 바인딩 및 my.pkg.MyEJBClass 구현 클래스를 생성하기 위해 사용될 수 있습니다.
다음 명령은 JMS 바인딩을 통한 SOAP 및 HTTP를 통한 SOAP를 생성하기 위해 -bindingTypes 옵션을 사용하는 예제입니다.java2wsdl -bindingTypes http,ejb -implClass my.pkg.MyEJBClass my.pkg.MySEI
java2wsdl -bindingTypes http,jms -implClass my.pkg.MyEJBClass my.pkg.MySEI
- -style RPC | DOCUMENT
생성된 WSDL 파일에서 사용할 WSDL 스타일을 지정합니다. 자세히 학습하려면 Java 언어, JAX-RPC용 WSDL 및 XML 애플리케이션 사이에 맵핑 정보를 참조하십시오. 이 인수는 -use 인수와 함께 사용됩니다.
RPC가 -use ENCODED로 지정되면 style=rpc/use=encoded WSDL 파일이 생성됩니다. RPC가 -use LITERAL 옵션으로 지정되면 style=rpc/use=literal WSDL 파일이 생성됩니다. DOCUMENT가 -use LITERAL 옵션으로 지정되면 style=document/use=literal WSDL 파일이 생성됩니다.
- -use LITERAL | ENCODED
-style 인수와 함께 사용될 때 WSDL 파일에 생성되는 스타일 및 사용 조합을 지정합니다. 조합은 rpc 및 인코딩, rpc 및 리터럴 또는 doc 및 리터럴입니다. 이 설정은 모든 SOAP 바인딩에 적용됩니다. 자세히 학습하려면 Java 언어, JAX-RPC용 WSDL 및 XML 애플리케이션 사이에 맵핑 정보를 참조하십시오.
- -transport http | jms
HTTP(기본값) 또는 JMS에 대한 SOAP 바인딩을 생성합니다. JMS가 지정되면 다른 전송을 위한 기존 WSDL 파일을 겹쳐쓰는 것을 방지하기 위해 문자 jms가 WSDL 파일 이름에 추가됩니다. 전송 옵션이 한 번만 지정될 수 있습니다.
이 옵션은 권장되지 않습니다. 비SOAP 특정인 바인딩을 생성할 수 있도록 -bindingTypes 옵션을 -transport 옵션으로 대체합니다.
- -portTypeName name
portType 요소에 사용할 이름을 지정합니다. 지정되지 않으면, 바인딩 이름은 포트 유형 이름입니다.
- -bindingName name
바인딩 요소에 사용할 이름을 지정합니다. 지정되지 않으면, 바인딩 이름은 포트 유형 이름입니다.
- -serviceElementName name
서비스 요소의 이름을 지정합니다.
- -servicePortName name
서비스의 이름을 지정합니다. 지정되지 않으면, 서비스 이름은 -location 인수에서 파생됩니다.
- -namespace targetNamespace
생성되는 WSDL 파일에 대한 대상 네임스페이스를 표시합니다. 기본 네임스페이스를 획득하기 위해 사용되는 알고리즘에 대해 학습하려면 Java 언어, JAX-RPC용 WSDL 및 XML 애플리케이션 사이에 맵핑 정보를 참조하십시오.
- -PkgtoNS package namespace
네임스페이스에 대한 Java 패키지의 맵핑을 지정합니다. 패키지에 네임스페이스가 없는 경우, Java2WSDL 명령은 네임스페이스 이름을 생성합니다. 여러 패키지에 대한 맵핑을 지정하기 위해 -PkgtoNS 인수를 반복할 수 있습니다.
- -extraClasses classes
WSDL 파일에 표시되는 기타 클래스를 지정합니다.
- -implClass impl-class
Java2WSDL 명령은 WSDL 파일 메시지 파트 이름을 구성하기 위해 메소드 매개변수 이름을 사용합니다. 명령은 클래스의 디버그 정보에서 메시지 이름을 자동으로 획득합니다. 클래스가 디버그 정보 없이 컴파일되거나 클래스가 인터페이스이면, 메소드 매개변수 이름은 사용할 수 없습니다. 이 경우, -implClass 인수를 사용하여 메소드 매개변수 이름을 획득하려는 대체 클래스를 제공할 수 있습니다. impl-class는 클래스가 인터페이스인 경우 클래스를 구현할 필요가 없지만, 클래스와 동일한 메소드를 구현해야 합니다.
- -verbose
자세한 메시지를 표시합니다.
- -help
도움말 메시지를 표시합니다.
- -helpX
바인딩 생성기에서 지원되는 다양한 옵션 및 확장된 옵션에 대한 도움말 메시지를 표시합니다.
기타 인수
- -wrapped boolean
랩핑한 규칙에 따라 WSDL 파일을 생성할지 여부를 지정합니다. 이 옵션은 use가 리터럴인 경우에만 올바릅니다. 옵션의 기본값이 true로 설정됩니다.
- -stopClasses parent [, parent]
Java2WSDL 명령은 -all 인수가 지정되면 WSDL 파일 조작에 대한 메소드 목록을 구성하기 위해 상속된 클래스 및 인터페이스를 검색합니다.
Java2WSDL 명령은 확장된 complexTypes를 생성할 때 상속된 클래스 및 인터페이스를 검색합니다. java 또는 javax로 시작하는 패키지 내에서 클래스 또는 인터페이스가 발견될 때 검색이 중지됩니다. -stopClasses 인수를 사용하여 검색이 중지되도록 하는 추가 클래스를 정의할 수 있습니다.
- -methods argument
출력 WSDL 파일에서 노출되어야 하는 서비스 엔드포인트 인터페이스로부터 메소드 이름 목록을 지정합니다. 목록이 공백 또는 쉼표로 구분됩니다.
- -soapAction 올바른 인수는 다음과 같습니다.
- DEFAULT
배치 정보에 따라 soapAction 필드를 설정합니다.
- NONE
soapAction 필드를 큰따옴표("")로 설정합니다.
- OPERATION
soapAction 필드를 조작 이름으로 설정합니다.
- DEFAULT
- -outputImpl impl-wsdl
인터페이스 및 구현 WSDL 파일이 생성되도록 하려는지 여부를 지정합니다.
- -locationImport location-uri
-outputImpl 인수를 사용하면 인터페이스 WSDL 파일의 위치를 지정합니다.
- -namespaceImpl namespace
-outputImpl 인수를 사용하면 구현 WSDL 파일에 대한 대상 네임스페이스를 지정합니다.
- -MIMEStyle <style>
바인딩 요소에 대해 첨부파일 참조(wsi:swaRef)를 가지는 WS-I(Web Services-Interoperability) SOAP로 맵핑하기 위해 사용되는 MINE(Multipurpose Internet Mail Extensions) 유형을 지정합니다.
<style>은 다음 중 하나일 수 있습니다.- WSDL11(기본값): 독점적으로 WSDL 1.1 표준을 사용하여 MINE 유형을 맵핑하십시오. MIME 유형을 WSDL 1.1 표준에 맵핑할 수 없으면 명령이 실패합니다.
- AXIS: AXIS 표준을 사용하여 MINE 유형을 맵핑하십시오. 예를 들어, 이미지는 axis:image가 됩니다.
- swaRef: 두 개의 제한사항으로 WSDL 1.1 표준을 사용하여 MINE 유형을 맵핑하십시오.
- DataHandler는 애플리케이션 및 octet-stream 대신 wsi:swaRef 요소에 맵핑합니다.
- WSDL 1.1을 통한 맵핑이 올바르지 않으면 wsi:swaRef 요소로 맵핑하십시오.
- -propertiesFile argument명령행을 가지는 대신 특성 파일을 가지는 기존 옵션(예: -extraClasses)을 설정합니다. 다음 예제는 이 인수의 사용에 대해 설명합니다.
extraClasses=com.ibm.Class1, com.sun.Class2,org.apache.Class3
- -voidReturn올바른 인수는 다음과 같습니다.
- ONEWAY
무효 리턴을 가진 메소드는 단방향입니다. 이 인수는 JMS 전송에 대해 기본값입니다.
- TWOWAY
무효 리턴을 가진 메소드는 양방향입니다. 이 인수는 HTTP 전송에 대해 기본값입니다.
- ONEWAY
- -debug
디버그 메시지를 표시합니다.
- -property 또는 -x-x 옵션을 사용하여 명령행 옵션을 다양한 바인딩 생성기로 전달하십시오. -x 옵션을 명령행에서 여러 번 사용하여 Java2WSDL 명령에 의해 호출되는 각 바인딩 생성기 메소드를 전달하기 위한 특성 값 세트를 지정하십시오. 쉼표로 구분하여 여러 특성을 지정하기 위해 단일 -x 옵션을 사용할 수도 있습니다. 예를 들면, 다음과 같습니다.
다음과 동일합니다.java2wsdl -x prop1=value1 -x prop2=value2
필요한 경우, -x 옵션은 각 바인딩 생성기에 각 명령행 옵션을 개별적으로 지정하기 위한 유연성을 제공합니다. -x 옵션에 지정된 값은 양쪽 모두가 지정되면 동등한 명령행 옵션에 지정되는 값을 대체합니다.java2wsdl -x prop1=value1,prop2=value2