웹 서비스 사용 클라이언트 JAR 파일을 EAR 파일로 어셈블리
이제 사용자 애플리케이션 아티팩트를 생성했고 웹 서비스 애플리케이션에서 사용되는 이러한 아티팩트를 엔터프라이즈 아카이브(EAR) 파일을 작성하기 위해 어셈블리해야 합니다.
시작하기 전에
JAX-WS(Java™ API for XML-Based Web Services)
웹 서비스 애플리케이션의 경우 이 태스크를 완료하기 위해 WSDL 파일로부터 시작할 때
wsimport 명령행 도구에 의해 생성되는 휴대용 아티팩트가 필요합니다.
wsimport 도구는 WSDL 파일을 입력으로서 처리하고 다음 휴대용 아티팩트를 생성합니다.
- 서비스 엔드포인트 인터페이스(SEI)
- 서비스 클래스
- wsdl:fault 클래스로부터 맵핑되는(있는 경우) 예외 클래스
- XML 스키마 유형에서 맵핑된 Java 클래스에 해당되는 JAXB(Java Architecture for XML Binding)의 생성된 값 유형
- 구현, wsimport 명령행 도구에 의해 생성되는 모든 클래스 및
ejb-jar.xml 배치 디스크립터 또는 application-client.xml 배치 디스크립터를 포함하는 어셈블된 클라이언트 모듈.
이 모듈은 다음일 수 있습니다.
- META-INF/application-client.xml 파일을 포함하는 애플리케이션 클라이언트 모듈.
- META-INF/ejb-jar.xml 파일을 포함하는 EJB(Enterprise JavaBeans) 모듈
JAX-RPC(Java API for XML-based RPC)
웹 서비스 애플리케이션의 경우 이 태스크를 완료하려면 WSDL2Java 명령행 도구로부터 생성된 다음 아티팩트가 필요합니다.
- 구현, WSDL2Java 명령행 도구에 의해 생성되는 모든 클래스 및
ejb-jar.xml 배치 디스크립터 또는 application-client.xml 배치 디스크립터를 포함하는 어셈블된 클라이언트 모듈.
이 모듈은 다음일 수 있습니다.
- META-INF/application-client.xml 파일을 포함하는 애플리케이션 클라이언트 모듈.
- META-INF/ejb-jar.xml 파일을 포함하는 EJB(Enterprise JavaBeans) 모듈
- 클라이언트를 개발하는데 사용한 WSDL 파일.
- 사용된 경우, ibm-webservicesclient-ext.xmi 및 ibm-webservicesclient-bnd.xmi 배치 디스크립터의 템플리트
- 생성된 JAX-RPC(Java API for XML-based remote procedure call) 맵핑 배치 디스크립터
제한사항: 애플리케이션 아카이브 내에서 패키징된
파일 이름에 파운드 기호(#)를 포함하지 마십시오.
애플리케이션 아카이브 내의 파일 이름에
파운드 기호가 포함된 경우 내부 처리로 인해 애플리케이션 서버가
애플리케이션을 올바르게 배치하지 못합니다. 이러한 장애가 발생하면
애플리케이션이 처리되는 동안 예외가 발생할 수 있습니다. 또한
애플리케이션이 배치된 후 애플리케이션의 일부가 누락될 수 있습니다.
이러한 문제점을 해결하려면 애플리케이션 아카이브 내 파일 이름에
파운드 기호가 포함되지 않도록 이름을 바꾸십시오.
이 태스크 정보
WebSphere® Application Server에 포함된 어셈블리 도구를 사용하여 웹 서비스 사용 클라이언트 애플리케이션을 어셈블리할 수 있습니다.
애플리케이션 클라이언트가 제공된 단계를 사용하여 웹 서비스에 액세스할 수 있도록 클라이언트 코드 및 아티팩트를 어셈블리하십시오.
프로시저
- 어셈블리 도구를 시작하십시오. Rational® Application Developer 문서에서 어셈블리 도구 시작을 참조하십시오.
- 아직 수행하지 않은 경우 Java EE 모듈에서 작동할 수 있도록 어셈블리 도구를 구성하십시오. Java EE 및 웹 카테고리가 사용으로 설정되었는지 확인해야 합니다. Rational Application Developer 문서에서 어셈블리 도구 구성을 참조하십시오.
- 명령행 도구를 사용하여 생성된 클라이언트 구현 및 아티팩트를 어셈블리 도구로 가져오십시오.
- Rational Application Developer 어셈블리 도구로 작성된 JAR 파일을 마이그레이션하십시오. 파일을 마이그레이션하려면 JAR 파일을 어셈블리 도구로 가져오십시오. Rational Application Developer 문서에서 코드 아티팩트를 어셈블리 도구로 가져오기에 대해 읽으십시오.
- 클라이언트가 컨테이너에서 실행되는 경우 일반 어셈블리 기술을 사용하여 JAR 파일을 엔터프라이즈 아카이브(EAR) 파일로 어셈블하십시오.
결과
예
이 어셈블리 프로세스의 예는 AddressBookClient.jar JAR
파일 및 AddressBookClient.ear EAR 파일을 사용합니다.
META-INF/MANIFEST.MF
META-INF/application-client.xml
META-INF/wsdl/AddressBook.wsdl
META-INF/AddressBook_mapping.xml
com/ibm/websphere/samples/webservices/addr/Address.class
com/ibm/websphere/samples/webservices/addr/AddressBook.class
com/ibm/websphere/samples/webservices/addr/AddressBookClient.class
com/ibm/websphere/samples/webservices/addr/AddressBookService.class
...other generated classes...
AddressBookClient.jar 파일을
AddressBookClient.ear 파일에 어셈블링한 후
AddressBookClient.ear 파일에는 다음 파일이 포함됩니다.
META-INF/MANIFEST.MF
AddressBookClient.jar
META-INF/application.xml
다음에 수행할 작업
JAX-WS(Java API for XML-Based Web Services) 애플리케이션의 경우 웹 서비스 클라이언트 애플리케이션을 배치할 준비가 되었습니다.
JAX-RPC(Java API for XML-based RPC) 애플리케이션의 경우 클라이언트가 서버에 배치된 웹 서비스와 통신할 수 있으려면 어셈블리 도구를 사용하여 클라이언트 배치 디스크립터를 구성해야 합니다.