UDDI에 대한 JAXR 제공자 사용
JAXR(Java™ API for XML Registries) 제공자를 시작하려는 경우 샘플 프로그램을 사용할 수 있습니다. 또한 클래스 라이브러리, 인증 및 보안, 내부 용어, 로깅 및 메시지도 고려해야 합니다.
이 태스크 정보

프로시저
- ConnectionFactory 인스턴스를 확보하고
레지스트리에 대한 연결을 작성하고 조직을 레지스트리에 저장하려면, 다음
샘플 프로그램을 참조하십시오.
localhost에 대한 모든 참조를 UDDI 레지스트리가 실행되는 특정 IBM® i 시스템에 대한 참조로 대체합니다.
import java.net.PasswordAuthentication; import java.util.ArrayList; import java.util.Collection; import java.util.HashSet; import java.util.Properties; import java.util.Set; import javax.xml.registry.BulkResponse; import javax.xml.registry.BusinessLifeCycleManager; import javax.xml.registry.Connection; import javax.xml.registry.ConnectionFactory; import javax.xml.registry.JAXRException; import javax.xml.registry.RegistryService; import javax.xml.registry.infomodel.Key; import javax.xml.registry.infomodel.Organization; public class JAXRSample { public static void main(String[] args) throws JAXRException { //Tell the ConnectionFactory to use the JAXR provider for UDDI System.setProperty("javax.xml.registry.ConnectionFactoryClass", "com.ibm.xml.registry.uddi.ConnectionFactoryImpl"); ConnectionFactory connectionFactory = ConnectionFactory.newInstance(); //Set the URLs for the UDDI inquiry and publish APIs. //These must be the URLs of the UDDI version 2 APIs. Properties props = new Properties(); props.setProperty("javax.xml.registry.queryManagerURL", "http://localhost:9080/uddisoap/inquiryapi"); props.setProperty("javax.xml.registry.lifeCycleManagerURL", "http://localhost:9080/uddisoap/publishapi"); connectionFactory.setProperties(props); //Create a Connection to the UDDI registry accessible at the above URLs. Connection connection = connectionFactory.createConnection(); //Set the user ID and password used to access the UDDI registry. PasswordAuthentication pa = new PasswordAuthentication("Publisher1", new char[] { 'p', 'a', 's', 's', 'w', 'o', 'r', 'd' }); Set credentials = new HashSet(); credentials.add(pa); connection.setCredentials(credentials); //Get the javax.xml.registry.BusinessLifeCycleManager interface, //which contains methods corresponding to UDDI publish API calls. RegistryService registryService = connection.getRegistryService(); BusinessLifeCycleManager lifeCycleManager = registryService.getBusinessLifeCycleManager(); //Create an Organization (UDDI businessEntity) with name //"Organization 1". Organization org = lifeCycleManager.createOrganization("Organization 1"); //Add the Organization to a Collection, ready to be saved in the UDDI //registry. Collection orgs = new ArrayList(); orgs.add(org); //Save the Organization in the UDDI registry. BulkResponse bulkResponse = lifeCycleManager.saveOrganizations(orgs); //Obtain the Organization Key (the UDDI businessEntity //businessKey) from the response. if (bulkResponse.getExceptions() == null) { //1 Organization was saved, so 1 key will be returned in the //response collection Collection responses = bulkResponse.getCollection(); Key organizationKey = (Key)responses.iterator().next(); System.out.println("\nOrganization Key = " + organizationKey.getId()); } } }
- 클래스 경로가 설정되었는지 확인하십시오. UDDI에 대한 JAXR 제공자의 클래스 라이브러리는 app_server_root/plugins 디렉토리의 com.ibm.uddi_1.0.0.jar 파일에 있습니다. WebSphere Application Server에서 실행 중인 Java EE 애플리케이션에서 JAXR API를 사용하는 경우 모든 필수 클래스는 자동으로 클래스 경로에 있습니다. 이 환경 외부에서 JAXR API를 사용하는 경우 다음 .jar 파일은 Java 클래스 경로에 있어야 합니다.
- app_server_root/lib/bootstrap.jar
- app_server_root/plugins/com.ibm.uddi_1.0.0.jar
- app_server_root/plugins/com.ibm.ws.runtime_6.1.0
- UDDI에 대한 JAXR 제공자를 사용하려면
먼저 ConnectionFactory 구현 클래스의 이름을 지정해야 합니다. javax.xml.registry.ConnectionFactoryClass 시스템 특성을 com.ibm.xml.registry.uddi.ConnectionFactoryImpl로 설정하십시오.
이 시스템 특성을 설정하지 않으면 값은 기본적으로 com.sun.xml.registry,common.ConnectionFactoryImpl로 설정됩니다. 그러나 ConnectionFactory.newInstance() 메소드가 호출되면 이 특성을 찾을 수 없으므로 JAXRException 예외가 발생합니다.
UDDI에 대한 JAXR 제공자는 JNDI(Java Naming and Directory Interface)를 사용하는 ConnectionFactory의 검색을 지원하지 않습니다.
- 연결 특정 특성을 지정하려면 연결을 확보하기 전에
JAXR ConnectionFactory에서 java.util.Properties 오브젝트를 설정하십시오. 이러한 특성의 전체 목록은 JAXR 스펙에 있습니다. 다음 테이블에서는 3개의 가장 중요한 특성과 UDDI 레지스트리에 액세스하기 위해 UDDI에 대한 JAXR 제공자를 사용할 때 사용하는 값을 나열합니다.
표 1. UDDI에 대한 JAXR 제공자를 사용하여 UDDI 레지스트리에 액세스하는 데 필요한 연결 특정 특성. 테이블에서는 서로 다른 특성과 각각에 대한 설명을 나열합니다. 특성 설명 javax.xml.registry.queryManagerURL UDDI 버전 2에 대한 UDDI 레지스트리의 조회 API의 URL. 일반적으로 이 특성은 http://hostname:port/uddisoap/inquiryapi 양식입니다. 이 특성은 필수입니다. javax.xml.registry.lifeCycleManagerURL UDDI 버전 2에 대한 UDDI 레지스트리의 게시 API의 URL. 일반적으로 이 특성은 http://hostname:port/uddisoap/publishapi 양식입니다. 이 특성을 지정하지 않으면, javax.xml.registry.queryManagerURL 특성의 값이 기본값으로 사용됩니다. 그러나 UDDI 레지스트리는 일반적으로 조회 및 게시 API에 대해 다른 URL을 보유하므로 두 특성 모두 지정하는 것이 좋습니다.
javax.xml.registry.authenticationMethod 레지스트리로 인증할 때 사용할 인증의 메소드. 이 경우 두 개의 값, UDDI_GET_AUTHTOKEN 및 HTTP_BASIC 중 하나를 사용할 수 있습니다. 값을 지정하지 않으면 기본값은 UDDI_GET_AUTHTOKEN초입니다. 자세한 정보는 다음 단계를 참조하십시오. 유일한 연결 특성은 javax.xml.registry.queryManagerURL입니다. 그러나 javax.xml.registry.lifeCycleManagerURL을 설정하고 javax.xml.registry.security.authenticationMethod의 기본값을 이해하는 것이 바람직합니다. JAXR 스펙에서 정의되는 다른 연결 특성은 선택사항이고 해당 값은 UDDI 레지스트리에 특정하지 않습니다. UDDI에 대한 JAXR 제공자는 추가적 제공자별 특성을 정의하지 않습니다.
- JAXR 제공자가 UDDI 레지스트리로
인증하는 데 사용할 메소드를 판별하려면 javax.xml.registry.authenticationMethod
연결 특성을 설정하십시오. javax.xml.registry.authenticationMethod 연결 특성은 UDDI 레지스트리로 JAXR 제공자가 인증하는 데 사용할 메소드를 판별합니다. 이 특성의 두 개 값이 지원됩니다.
- UDDI_GET_AUTHTOKEN
JAXR 제공자는 UDDI V2 get_authToken API를 사용하여 레지스트리에서 인증합니다. 연결 신임 정보를 설정할 때 JAXR 제공자는 자동으로 get_authToken 호출을 작성합니다. JAXR 제공자는 후속 UDDI 게시 API 호출에서 사용하도록 호출이 리턴하는 UDDI V2 authToken을 저장합니다.
- HTTP_BASIC
JAXR 제공자는 HTTP 기본 인증을 사용하여 레지스트리에서 인증합니다. WebSphere Application Server는 보안을 사용할 때 HTTP 기본 인증을 지원합니다. JAXR 제공자는 get_authToken 호출을 수행하지 않습니다. 대신, UDDI API 호출(조회 및 게시 모두)이 있을 때마다 HTTP 기본 인증을 사용하여 HTTP 헤더에서 사용자 이름 및 비밀번호를 전송합니다. UDDI 레지스트리에 HTTP 기본 인증이 필요하지 않으면, 신임 정보는 무시됩니다.
이 특성을 설정하지 않으면 기본 인증 메소드는 UDDI_GET_AUTHTOKEN입니다.
- UDDI_GET_AUTHTOKEN
- SSL(Secure Sockets Layer)을 사용하여 UDDI 및 UDDI 레지스트리에 대한 JAXR 제공자 사이의 HTTP 트래픽을 암호화하려면 UDDI JAXR 제공자에서 SSL 사용의 내용을 참조하십시오.
- 사용자 정의 내부 용어를 제공하려면 JAXR 제공자의 사용자 정의 내부 택소노미 작성의 내용을 참조하십시오.
- UDDI4J 로깅을 켜려면 org.uddi4j.logEnabled 시스템 특성을 true로 설정하십시오. UDDI에 대한 JAXR 제공자는 UDDI4J 버전 2를 사용하여 UDDI 레지스트리와 통신하고 UDDI4J에는 고유한 로깅 기능이 있습니다.
하위 주제
UDDI용 JAXR(Java API for XML Registries) 제공자
JAXR(Java API for XML Registries)은 UDDI(버전 2 전용) 및 ebXML 레지스트리 액세스를 위한 Java 클라이언트 API입니다. Java EE(Java Platform, Enterprise Edition) 스펙의 일부입니다.UDDI JAXR 제공자에서 SSL 사용
SSL(Secure Sockets Layer)을 사용하여 UDDI용 JAXR( Java API for XML Registries) 제공자와 UDDI 레지스트리 간 HTTP 트래픽을 암호화할 수 있습니다.JAXR 제공자의 사용자 정의 내부 택소노미 작성
사용자 정의 내부 택소노미를 작성하고 이를 JAXR(Java API for XML Registries) 제공자에서 사용 가능하게 만들 수 있습니다.UDDI용 JAXR 제공자 내부 택소노미
UDDI용 JAXR(Java API for XML Registries) 제공자는 여러 내부 택소노미를 제공합니다.JAXR 제공자 로깅 및 메시지
UDDI용 JAXR(Java API for XML Registries) 제공자는 UDDI4J 로깅, 명령 로깅 및 일부 표준 메시지를 사용합니다.


http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=twsu_jaxr
파일 이름:twsu_jaxr.html