[자바교육/자바학원]웹 서비스 장터를 구축하는 UDDI ( From 웹서비스 - 한빛미디어 ),UDDI,XMl,HTTP,DNS,W3C,IEFT,SOAP
1. UDDI 개괄
1) 정의
Universal Description, Discovery, and Integration 의 약자로 인터넷에서 전 세계 비즈니스 목록에 자신을 등재하기 위한 확장성 생성 언어(XML) 기반의 레지스트리이다. 웹에서 상호 온라인 거래의 원활과 e-커머스의 상호 운용을 위한 것으로, 전화번호부의 업종별 색상 항목(page)과 유사하며 비즈니스 이름, 제품, 위치 혹은 웹 서비스 등으로 목록을 작성한다. 확장성 생성 언어(XML), 하이퍼텍스트 전송 규약(HTTP), 도메인 네임 시스템(DNS) 프로토콜과 같은 월드 와이드 웹 컨소시엄(W3C)과 인터넷 엔지니어링 테스크 포스(IETF) 표준을 사용하며, 서로 다른 플랫폼간의 프로그래밍을 위해 메시지 관련 지침인 단순 객체 접근 통신 규약(SOAP) 초기 버전을 적용한다. 일부의 회사들이 UDDI 레지스트리 서버를 운영하고 있고 정보가 레지스트리에 등재되면 다른 업종의 서버들에게 공유된다.
2) 데이터 엘리먼트
UDDI 1.0에서는 기본적으로 businessEntity, businessService, tModel, bindingTemplate이라는 4가지 데이터 엘리먼트를 정의한다.
3) UDDI 레지스트리 구성
(UDDI 비즈니스 등록으로 제공하는 정보)
화이트 페이지 옐로우 페이지 그린 페이지
비즈니스 이름 서비스와 제품 색인 e-비즈니스 규칙
연락처 정보 산업코드 서비스 기술
각종 식별자(DUNS 등) 지리적 색인 애플리케이션 호출
데이터 바인딩
2. UDDI 데이터 타입
businessEntity: 비즈니스 개체에 대한 이름, 설명, URL, 연락처와 식별 및 분류를 위한 정보를 표현하기 위한 최상위 구조이며, 하나의 businessEntity에는 여러 개의 서비스에 대한 논리정보를 가지는 businessService를 가질 수 있다. 또한, 개체간 식별을 위해 UUID(Universal Unique IDentifer)를 사용하고 있다.businessService: 비즈니스 개체가 제공하는 서비스에 대한 논리 정보를 표현하는데 이용되며, businessEntityh와는 별도의 UUID를 가진다. 그리고, 여러 개의 bindingTemplate를 가질 수 있지만, 하나의 bindingTemplate는 단지 하나의 businessService에만 속한다.bindingTemplate: 데이터 구조는 웹서비스 실행에 필요한 기술 정보를 표현하는데 사용되는데, 서비스 엔트리 포인트를 지정하기 위한 accessPoint와 구현 정보를 제공하기 위한 instanceDetail, 서비스 이용에 필요한 기술에 대한 개요 문서를 보이기 위한 overviewDoc 와 같은 데이터 구조를 가진다.tModel: 웹서비스 이용에 필요한 통신 프로토콜, 메시지 형식, 서비스 이용 규칙 등과 같은 기술 표준들을 표현하기 위한 것으로 모든 객체들에 사용되는 메타 데이터의 기술을 위해 사용된다.PublisherAssertion: 각 비즈니스 개체의 키 값과 비즈니스 개체간 관계성의 종류를 지정함으로써 두 비즈니스 개체간의 관계성을 표현함으로써 검색을 용이하도록 한다.
3. WSDL 문서의 발행과 검색
1) WSDL 서비스 인터페이스 : 서비스에 대한 재사용 가능한 정의라고 할 수 있으며, UDDI 레지스트리에 tModel형태로 발행한다.
2) WSDL 서비스 구현 : 서비스의 인스턴스를 기술한 것으로 각 서비스 엘리먼트는 UDDI의 businessService를 발행하는 데 이용한다.
4. 서비스 구현 문서의 발행
서비스 구현 문서는 UDDI 레지스트리에 하나 이상의 bindingTemplate을 포함한 businessService로 발행하고 businessService는 서비스 제공자가 발행한다.
1) businessService 생성 : name엘리먼트는 서비스 엘리먼트의 name 애트리뷰트값으로 설정하고 description엘리먼트는 서비스 엘리먼트 안에 있는 documentation엘리먼트 내용의 처음 256자로 설정. (옵션)
2) bindingTemplate 생성 : businessService내부에서 생성되며 서비스 엘리먼트 내부에 있는 각각의 port 엘리먼트에 대해 생성한다. (description, accessPoint, tModelInstanceInfo, overviewURL 엘리먼트를 설정.)
5. WSDL 서비스 인터페이스 검색하기
모든 WSDL 서비스 인터페이스는 UDDI 레지스트리에 tModel 형태로 발행. tModel들은 카테고리화되며 UDDI의 find_tModel 메시지를 이용해 tModel을 검색할 수 있다.
1) find_tModel : tModel의 여러 키 목록을 반환.
2) get_tModelDetail : tModel을 가져온다.
3) overviewURL: WSDL 서비스 인터페이스 문서의 실제 내용을 알 수 있다.
4) find_tModel 에 categoryBag, keyedReference 추가: 카테고리와 참조내용 검색.
6.WSDL 서비스 구현 검색
WSDL 서비스 구현 문서는 UDDI 레지스트리에 businessService로 발행되고 그것은 하나 이상의 bindingTemplate을 포함한다.
1) businessService 검색
find_service : businessService 검색, categoryBag에 정보를 추가하여 검색 대상 범위를 줄일 수 있다.
get_serviceDetail : businessService를 기술하는 내용을 가져온다.
overviewURL : WSDL 서비스 구현 문서를 가져올 수 있다.
2) bindingTemplate 검색
businessService가 여러 개의 bindingTemplate을 포함하는 경우 어떤 것을 사용할 것인지 결정해야하는데 find_binding 메시지를 이용해 사용할 bindingTemplate를 검색한다.
7. UDDI의 유형
1) UDDI 클라우드
간단히 말해 UDDI 노드들의 컬렉션이다. 오퍼레이터의 동의에 의해 어떠한 오퍼레이터 노드에서 나온 웹 서비스 메타데이터도 마치 하나의 노드에 접근하는 것처럼 협력하는 것이다. 웹 서비스 메타 데이터를 하나의 오퍼레이터 노드에 등록한 후 정의된 복제 스키마를 이용해 다른 오퍼레이터 노드에서도 데이터를 공유할 수 있다.
2) 사설UDDI vs 공용UDDI
공용 레지스트리 : 글로벌 환경에서의 서비스와 비즈니스에 대한 등록 정보를 제공하며, IBM, MS, SAP, HP와 같은 회사들이 운영하고 있다.
사설 레지스트리 : 기업 내 인트라넷 등 제약된 환경에서의 서비스와 비즈니스 정보를 제공한다. Sun One Registry Server, IBM Private UDDI Registry, UDDI Server in Java 등이 존재하며, 기업 내부 또는 기업간 어플리케이션 통합에 사용된다.
3) 여러 종류의 UDDI: UDDI 오퍼레이터 노드, e-마켓플레이어스 UDDI, 포탈 UDDI, 파트너 카탈로그 UDDI, 내부 EAI UDDI, 테스트 베드 UDDI
8. UDDI 클라우드와 디자인 타임 검색
UDDI 클라우드는 다양한 지리적인 위치와 산업에서 여러 비즈니스에 대한 웹 서비스 데이터를 포함한다. 우리는 효율적인 검색을 위해 의미있는 엔트리와 그렇지 않은 엔트리를 구별할 수 있어야 한다.
9. 사설 UDDI와 디자인 타임 또는 런타임 검색
사설 UDDI의 UDDI 엔트리 컨텐트는 몇 가지 유형으로 한정되는 경향이 있는데, 이러한 유형에는 파트너 카탈로그 UDDI와 같이 인증된 파트너만 포함하는 경우와 WSDL 기반의 tModel에 의해 인증되는 경우가 있다. 서비스를 발행할 때는 요청자 애플리케이션이 사설 UDDI에 대한 find 호출을 하고 그 결과로 반환한 엔트리를 이용해 웹 서비스와 바인딩 하는 프로그래밍 모델을 이용한다.
10. 웹 검색엔진으로써의 UDDI 레지스트리
앞으로 검색엔진은 키워드 검색뿐 아니라 웹사이트의 능력을 검증 할 수 있을 것이다.원하는 조건에 맞는 상품을 보여주고 구입도 가능하게 할 것 이다.UDDI가 HTTP,SOAP,WSDL 등의 기술과 함께 이러한 스마트 웹 검색엔진의 구현을 가능하게 한다.
11. UDDI 현황
일본의 경우, NTT가 2001년 12월에 UDDI운영자협의회(UDDI Operators Council: UDDI의 상호운용성을 확보하기 위하여 IBM, 마이크로소프트, NTT, SAP 등이 공동으로 UBR의 운영을 관리하는 회의체)에 가입을 함으로써 아시아 지역에서는 최초로 UDDI 비즈니스 레지스트리 노드 운영자가 되었으며 2002년 10월 9일부터 아시아 지역에서는 최초로 UDDI 규격에 기반한 UBR 운영을 시작했다(http://www.ntt.com/uddi)
국내의 경우에도 비록 파일럿 수준이지만 KT, SKT, LG-CNS, 삼성 SDS 등과 같은 IT 업체들을 중심으로 사설 UDDI 비즈니스 레지스트리 구축을 추진 중에 있으며 한국전산원을 중심으로 공용 UDDI 비즈니스 레지스트리 구축작업이 진행중에 있다
오라클자바커뮤니티교육센터, 개발자전문교육, 개인80%환급
www.oraclejavacommunity.com
평일주간(9:30~18:10) 개강
(7/14)[기업100%환급]C#4.0,WinForm,ADO.NET프로그래밍
(7/14)[기업100%환급]SQL기초에서 Schema Object까지
(7/14)[기업100%환급]안드로이드개발자과정
(7/21)[기업100%환급]자바기초에서 JDBC, Servlet/JSP까지
(7/21)[기업100%환급]Spring ,MyBatis,Hibernate실무과정
(7/21)[기업100%환급]PL/SQL,ORACLE HINT,TUNING
(7/21)[채용예정교육]오라클자바개발잘하는신입뽑기프로젝트,교육전취업확정
평일야간(19:00~21:50) 개강
(7/09)닷넷(C#,Network,ADO.NET,ASP.NET)마스터과정
(7/10)JAVA,Network&WEB&Framework(자바기초에서웹스프링까지)
(7/11)웹퍼블리싱 마스터
(7/15)SQL기초에서실무까지
(7/15)안드로이드개발자과정
(7/16)Spring3.X, MyBatis, Hibernate실무과정
(7/22)자바기초에서JSP,Ajax,jQuery,Spring3.2,MyBatis까지
(7/22)MyBatis3.X, Hibernate4.X ORM실무과정
주말(10:00~17:50) 개강
(7/12)SQL초보에서 Schema Object까지
(7/12)개발자를위한PLSQL,SQL튜닝,힌트
(7/13)C#,ASP.NET마스터
(7/19)JAVA,Network&WEB&Framework(자바기초에서웹스프링까지)
(7/19)Spring3.X, MyBatis, Hibernate실무과정
(7/19)웹퍼블리싱 마스터
(7/19)안드로이드개발자과정
(7/26)MyBatis3.X, Hibernate4.X ORM실무과정
(8/09)자바기초에서JSP,Ajax,jQuery,Spring3.2,MyBatis까지
주말저녁(18:30~22:20) 개강
(8/02)JAVA,Network&WEB&Framework
(8/09)SQL기초에서실무까지
댓글 없음:
댓글 쓰기