http://www.nextree.co.kr/p2010/
# 웹 서비스 시나리오
- UDDI : 웹 서비스 관련 정보의 공개와 탐색을 위한 표준
- 공공데이터 포털
- 서비스제공자
- 서비스요청자
# 웹서비스 3가지 기술요소
- WSDL : Web Service Description Language, 웹서비스를 표현 및 기술, XML
- SOAP : Simple Object Access Protocol, 메시지프로토콜
- UDDI : 기술의 탐색, 등록 ----> 국내에선 없음
*Jax-WS - java 메시지와 Soap메시지를 매칭,바인딩 해주는 객체
# 웹 서비스 아키텍처 모델
- framework ? 반 자동화 되어있는, 스스로 동장할 수 없음, 프로그램으로 동작 시켜줘야함
- Server ? 서비스를 제공할 수 있음, 자동화 되어있는,
> 웹서비스 핵심 기술 표준
- XML
- XML 스키마
- SOAP
- WSDL
- UDDI
> 웹 서비스 확장기술 표준 (wS-*)
- 보안처리 WS-Security, WS-Trust, WS-SecureConversation
- 트랜잭션처리 WS-Coordination, WS=Transaction
- 신뢰성있는 메시지 WS-ReliableMessaging, WS-Addressing
- 기타(BPM-업무프로세스, RM-자원관리)
=> 실무에서 이런 확장기술을 적용하는 분위기는 아니지 ㅎㅎ
# XML[Extensible Markup Language]
- W3C에서 다른 특수 목적의 마크업 언어를 정의하기 위한 마크업 언어
- XML 활용도 높다면 데이터처리에 사용, 보통 요즘엔 환경설정에 사용
- XML은 문서로 구조화 할때, 많이 사용
- HTML의 단점이, 표현과 구현을 섞어놓아 디자이너와 개발자의 협업이 어려웠음
- XML은 HTML에서 데이터만 끄집어내자하여 떨어져 나옴
- Transformation, XSLT
- CSV
- X-Path, XML의 path를 처리하는 기술
- XHTML, HTML5
- RDF, ROA, 시맨틱 웹의 토대
- 라이센스 제약이 없고, 플랫폼이 독립적, 많은 지원이 있음
> XML의 구조
- 버전표기
- root 엘리먼트 1개만 반드시 포함
> XML의 특징
- 문서의 내용과 스타일을 분리하여 사용
- 표준 규약,ft
- 문서(microso, 전송자료(ACORD, OFX, IFX...)
> Well-Formed
> Valied
> Namespace
: 논리적 이름 구분을 위함
> XML스키마의 목적
- DTD와 같이 XML문서를 구조화하기 위해 W3C에서 표준화하여 제공
> XML스키마의 특성
- XML문법, XML 네임스페이스 지원, 루트요소를 반드시 가져야함,
- <schema>, 다양한 데이터타입, 문서화 메커니즘 제공
> DTD와 XML스키마의 특징 비교
> XML 스키마 네임스페이스
- 스키마 네임스페이스를 지정하지 ㅇ낳으면 파서는 XML 스키마로 인식할 수 없음
- xs, xsd와 같은 접두사를 많이 사용
> 대상 네임스페이스(targetNamespace)
- 새로운걸 만들어서 참조를 하려면 그대로~ 붙여야함
- targetNamespace를 안붙이면 안되. namespace중복이 되버려. 선언은 할 수 있음
> elementFormDefault, attributeFormDefault
- "qualified", "unqualified"
- XML파서가 알아서 처리를 해줌
- full package를 주는게 좋음.. 결국 언젠간 확장하다보면 충돌 날 수 있으므로
# SOAP
: 개방형 프로토콜을 사용하여, XML기반의 SOAP 메시지를 네트워크 상에서 교환하는 프로토콜(HTTP, HTTPS, SMTP를 기저로 깔고)
: 구조, 전송, 상호 중립성의 개념을 도입
: 태생 자체가 상호독립/호환을 위해서 만들어짐
- SOAP 1.2 version
> 특징 (장점)
- SOAP을 기본적으로 HTTP기반 위에서 동작,
- HTTP와 같이 프록시와 박화벽에 구애받지 않고 쉽게 통신이 가능,
- 플랫폼 및 프로그래밍 언어에 독립적
- 간단하고 확장가능, 멀티파트 MIME구조를 사용, 첨부를 통합하는 SOAP XMl 메시지를 지원
- 페이로드
> 특징 (단점)
- 성능이슈, (실제 stress test시, 응답속도가 예전에 비하여, 몇배이상 빨랐음)
==> 상대적으로 늦는다는 이야기지, 이제는 더이상 단순히 느리다라고 할 수 없음
# SOAP 메시지 구조
1.1 버전
1.2 버전
# WSDL
: 웹서비스가 어디에 존재하는지, 웹서비스로 무엇을 할 수 있는지, 또 어떻게 하는지, XML형식으로 기술하여 제공
: SOAP메시지에서 주곱다아야하는 데이터가 WSDL에 있음
> WSDL 네임스페이스 목록
> 문서구조
> 웹서비스 스택
# 웹스비스 프레임워크
- Aegis Databinding
- Spring
- JAX-WS지원
- 비동기방식의 호출 지원
- 바이너리와 기존 프로토콜 지원
- 기타.. (책참고)
> Apache CXF 도구
> Apache CXF 아키텍처
- CXF-API : Bus,
> SOAP 메시지 구조
> Aegis, JAXB : 데이터바인딩 하는 친구들
: SOAP메시지가 들어오면 JAVA의 객체로 만들어지고 SOAP의 DATA부분의 내용을 또다른 자바객체로 바인딩하는 기술을 일컬음
> SDO, Service Data Objects
'Development > Web' 카테고리의 다른 글
[웹서비스] 기초 4 - QnA, Web Client (0) | 2015.05.01 |
---|---|
[웹서비스] 기초 3- 웹 서비스 구현 (0) | 2015.04.29 |
[웹서비스] 기초 1 - 웹 서비스 개요 (0) | 2015.04.28 |
[java study] 4차 스터디 정리 20150131 (0) | 2015.04.21 |
[pocket tube] 화면설계 항목 및 DB 설계 (0) | 2015.04.21 |