김재홍 principal consultant oracle corporation 오라클의 웹서비스 지원과 사례연구

41

Upload: iris-hubbard

Post on 26-Dec-2015

217 views

Category:

Documents


2 download

TRANSCRIPT

김재홍Principal ConsultantOracle Corporation

오라클의 웹서비스 지원과 사례연구

4

Agenda

Introduction to Web Services Why Web Services? Web Services Standards Oracle’s Web Services Strategy Case Study

5

Where is All This Headed?

Internet Internet Phase IPhase I

CommunicationPlatform

Internet Internet Phase II Phase II

Information Platform

InternetInternet Phase III Phase III

Application Platform

• Person-to-Person• e-mail, FTP, Gopher

• Person-to-Server• Browser, HTML, HTTP

• Server-to-Server• XML, SOAP, WSDL

6

Web Services Versus Web Applications

HTML User-to-program

interaction Static integration of

components Single use service

XML/SOAP Program-to-program

interaction Static or dynamic

integration Re-usable service

Web ApplicationWeb Services

7

Web Services In Context

Java, C++, Forms, VB, …

CORBA ORBWindows MTS

Mid-1990’sCorba/COM

e.g. IIOP/DCOM

(Forms, PB VB …

DatabaseStored Procedure

Early 1990’sClient/Server

e.g. OCI

1980’sTP Monitor

Cobol, Forms,

CICs, Tuxedo

e.g ATMI

Java, VB, FormsC++, Python

J2EE ContainerWindows

CORBA ORB …

XML/SOAPEarly 2000’sWeb Services

JavaJ2EE Container

(EJB)

RMILate-1990’sJ2EE

Client ServerMessage Protocol

8

Web Services Conceptually

ServiceRequestor

PublishFind

Invoke ServiceProvider

Service Registry

9

WSDL

Web Service(J2EE, PL/SQL,

.NET,C/C++,Legacy …)

Web Service(J2EE, PL/SQL,

.NET,C/C++,Legacy …)

Web ServiceClient

(J2EE, .NET,PL/SQL …)

Web ServiceClient

(J2EE, .NET,PL/SQL …)

Points to description

DescribesService

FindsService

Invokes withXML Messages

Web Services Technologies

SOAP

UDDI Registry Points to

service

10

Agenda

Introduction to Web Services Why Web Services? Web Services Standards Oracle’s Web Services Strategy Case Study

11

Web Services Re-Use Applications

HTML

SOAP

EJBs

Browsers

ExternalApplications

WebPresentation

BusinessLogic Databases

Firewall Application Server

12

Information Channels - Today

Data/Services Providers

InternalSystems

Partners

Services Integrationand Consolidation

Services Delivery Channels

Mainframe

Packages

ServicesConsumers

B2BB2B

B2CB2B

B2BB2B

Frequent users

B2CB2B

Public

Partners

PrvtUDDI

Web ServicesGateway

BusinessServices

Hub

Business Orchestration

Business Objects

Transaction Management

Businesses

Businesses

PublicUDDI

Browser/Device Users

Future DeliveryPlatforms

Smart ClientDelivery

Web and Mobile Client

Delivery

Database

HT

TP

Net

8,et

cS

OA

PJX

TA

,etc

13

Information Channels – With Web Services

Data/Services Providers

InternalSystems

Partners

Services Integrationand Consolidation

Services Delivery Channels

Mainframe

Packages

ServicesConsumers

B2BB2B

B2CB2B

B2BB2B

Frequent users

B2CB2B

Public

Partners

PrvtUDDI

Web ServicesGateway

BusinessServices

Hub

Business Orchestration

Business Objects

Transaction Management

Inte

rnal

Web

Ser

vice

s

Businesses

Businesses

PublicUDDI

Browser/Device Users

Future DeliveryPlatforms

Smart ClientDelivery

Web and Mobile Client

Delivery

Database

14

Web Services Standardize Integration

Web Services

ModernIntegration

EAI and B2Bi

Traditional Integration

One-Off

Custom Integration

• Costly

• High resource requirements

• Proprietary focus

• Point to point approach

• Reduced cost

• Enabled line of business

• Standards focus

• High reusability and adoption

• Costly

• High resource requirements

• Slow time to market

• Little reusability

15

Agenda

Introduction to Web Services Why Web Services? Web Services Standards Oracle’s Web Services Strategy Case Study

16

Web Services Standards in Context

Core Web Services

BusinessWeb Services

Core XMLXMLXML

XSLXSL

XML Schema

XML Schema

XMLNamespace

XMLNamespace

XPathXPath…

SOAPSOAP WSDLWSDL UDDIUDDI

OrchestrationOrchestration…

SecuritySecurity TransactionsTransactions

ReliabilityReliability

17

Web Services Meet J2EE

J2EE is proven– Broad adoption and

mature

J2EE Web services– Standardized in J2EE 1.4

JAX-RPC, JAXR, JAXB, JAXP, JSR109

Inherit J2EE facilities– Packaging, transactions,

security, lifecycle …J2EE Container

Lifecycle Services

Transactions and Security

Component Model

Web Services

Connectivity

18

What About Interoperability?

J2EE .NetBEA

Oracle

Sun

IBM

Microsoft

XMLSOAPWSDLUDDILDAP,SMTP,

Others

참조 -http://otn.oracle.com/tech/windows/

19

• Web Services WG(SOAP,WSDL,UDDI)

• XMLP/SOAP WG• XML Schema WG• XML Query WG• WS-Choreography

• WS-Security• SAML• WSRP

• J2EE Web Services JSR

• JAXM JSR• JAX-RPC JSR

• Protocol• Repository• Messaging

• RNIF WG• RNIF

Interop

• XMI Metadata WG• Component Model WG

Oracle is a Founding Member of the Web Services-Interoperability Organization

Oracle’s Investment in Open Standards

20

Agenda

Introduction to Web Services Why Web Services? Web Services Standards Oracle’s Web Services Strategy Case Study

21

Oracle’s Web Services Strategy

Make Web services pervasive– Embed Web services across the infrastructure– Interoperate based on industry standards

Build Web services on J2EE and XML– Maximize productivity, minimize retraining– Inherit performance, reliability, security of OC4J

Deliver simple and business Web services– Enable business process based Web Services

22

Oracle9i Application Server

J2EE & J2EE & Web ServicesWeb Services

Portals andForms

Mobile &Wireless

BusinessIntelligence

e-Business Integration

Management &Security

Performance &Reliability

23

Oracle9iAS: Fastest, Lightest J2EE 1.3 Application Server

J2EETM 1.3 Compatible

Advanced Caching and Clustering

Integrated, Productive Development Tools

Advanced Security with Authentication and Authorization

Built-in Management Tools

2.02.02.02.0

2.32.32.32.3

EJBEJB

1.21.21.21.2

2.02.02.02.0

ServletsServlets

JSPJSP

JDBCJDBC

Oracle9Oracle9iiASASJ2EE 1.3 J2EE 1.3

ComplianceCompliance

1.01.01.01.0

1.0.21.0.21.0.21.0.2

JAASJAAS

JMSJMS

1.01.01.01.0ConnectorConnector

24

Oracle9iAS Web Services Architecture

MessagingTransactions PoolingNamingSecurity

SO

AP

Ser

vlet

Ap

ach

e H

TT

P

StatefulJava Class

StatelessSession EJB

JMS Queue

PL/SQLStored Proc.

HTML/XML Stream

Stateless Java Class

WSDLWSDL

Web ServiceWeb ServiceClientClient

(J2EE, .NET,(J2EE, .NET,Portal, Mobile,Portal, Mobile,

PL/SQL …)PL/SQL …)

Bin

din

gB

ind

ing

Sta

tic/

Dyn

amic

Sta

tic/

Dyn

amic Request/Response

Message Oriented

Oracle9iAS

SOAP

Publish

Find

UDDI

Jav

a X

ML

Bin

din

g

25

Oracle9i XML Infrastructure

Oracle9i XML DBOracle9iDB Web Services

Oracle9i XDK XSLT Processing

XML Query ProcessingXML Caching

Oracle9iAS Web ServicesXSLT Processing

XML Query ProcessingXML Schema/DTD Validation

XML Caching w/ JAAS securityXML J2EE Components

XML Messaging & Queuing XML Data Integration

Oracle9iAS Oracle9i Database Web Cache

XSLT ProcessingXML Query Processing

XML Caching w/HTTP security

XSLT ProcessingXML Query Processing

XML Caching

Client

XML XML XML

26

Oracle9i JDeveloper

Award winning IDE with full development lifecycle

UML modeling for J2EE Embedded J2EE

container Integration of Java, XML,

and SQL Built in performance

tuning … integrated support

for Web Services

27

Web Services and Portals

Any Data Source

Packaged Apps

Page Assembly

Engine

PersonalizationPortal

PortletEngine

Runtime(User, Session,

Management

Wireless &Mobile

Internet / intranetUsers

– Reduce web sites, simplify searches & navigation – Single sign-on security framework, enterprise search– Assemble personalized portal from pre-built “portlets”– Connect Web services declaratively with the OmniPortlet

Any Web Service

Oracle9i Application Server Portal

28

Oracle9iAS IntegrationOne Platform for EAI, B2B, and Web Services

EventManagement

BusinessProcess

Management

TradingPartner

Management

AdapterFramework

AuditTransform Translate Validate

IntegrationManager

Secure

J2EE

Web Services

B2B EAI

Oracle9i Application Server Integration

OracleE-Business

Suite

3rd partyApplications

LegacySystems

TradingPartners

Exchanges

ServiceProviders

29

Emerging Management Requirements

Intelligent Resource Management– Pooling, Partitioning, Management

Provide Security Monitoring, Assurance– Auditing, Tracing, Denial of Service, Assurance

Manage User Presence and Context– Identify, Understand, Manage User Presence

Manage User Identities– Provision, Identify, Authorize, Share Identities

30

Oracle and Web Services

PlatformPlatform

ToolsTools

ApplicationsApplications

Oracle11Oracle11i i E-Business SuiteE-Business Suite

OracleOracle Collaboration SuiteCollaboration Suite

Oracle9Oracle9i i JDeveloperJDeveloper

Oracle9Oracle9i i Application ServerApplication Server

Oracle9Oracle9ii Database Database

31

Agenda

Introduction to Web Services Why Web Services? Web Services Standards Oracle’s Web Services Strategy Case Study

32

schober.com

schober.com ( 독일 )– 온라인 상점에 비즈니스 서비스 제공 ( 주소 확인 ,

신용 확인 등 ) Business Needs

– 고객에게 표준 서비스 인터페이스 제공 필요– 기존 애플리케이션의 수정 최소화 필요– JDeveloper 를 통한 빠른 구현

Software– Oracle9i JDeveloper, Oracle9iAS, Oracle8i

33

schober.com

UDDIRegistry

Merchant schober.com

Consumers

Web SiteWeb Site

OrderOrderProcessingProcessing

1. PlaceOrder

Address Address Validation Validation

ServiceServiceCreditCredit

VerificationVerificationServiceService

Oracle9Oracle9iiASAS

4. ShipOrder

2. Validate Address

3. Verify Credit

PublishWSDL

SOAP

Get ServiceWSDL

34

한국원자력연구소

www.kaeri.re.kr– 웹상에서 고객 및 Supplier 에게 여러 정보제공 및 공유

Business Needs– 외부 사용자에 대한 내부 서버로의 직접적인 액세스를 차단– Java 및 PL/SQL Web Service 의 동시 구현– 고객에게 표준 서비스 인터페이스 제공 필요– 기존 애플리케이션의 수정 최소화 필요

Software– Oracle9i JDeveloper, Oracle9iAS, Oracle8i

35

Firewall(port:80)

원자력연구소외부 서비스

HTTP

원자력연구소내부서비스

참여마당 (jsp)민원처리 (jsp)

입찰공고 (plsql)원마루쉼터 (jsp)

xxx1.kaeri.re.kr( 내부 서비스 :intranet)

Oracle9iAS 1.0.2

www.kaeri.re.kr( 외부서비스 :internet)

apache + jserv

xxx2.kaeri.re.kr(DB Server)

Browser( 외부사용자 )

HTTP

Oracle 8.1.6

기존 환경

36

Firewall(port:80)

원자력연구소외부 서비스

원자력연구소내부서비스

www.kaeri.re.kr( 외부서비스 :internet)

apache + jserv

xxx2.kaeri.re.kr(DB Server)

Browser( 외부사용자 )

HTTP

Oracle 8.1.6

OC4J

Web Service Client참여마당민원처리입찰공고

원마루쉼터

OC4J

Board ( JavaWeb Service )Bid (PL/SQLWeb Service)

SOAP(XML over HTTP)

X

ML

In

terf

ace

XM

L I

nte

rfa

ce

SO

AP

Ser

vlet

SO

AP

Ser

vlet

xxx1.kaeri.re.kr웹서비스

현재 구성 (Web Service Model)

37

www.kaeri.re.kr ( 외부 )

xxx.kaeri.re.kr ( 내부 )

화면예제 ( 원마루 쉼터 )

38

Bid Web Service ( PL/SQL )

39

Board Web Service (Java )

40

“ Oracle9iAS Web Services provides a highly scalable runtime infrastructure

for developing, deploying and managing Web Services. ”

“ Oracle9iAS Web Services provides a highly scalable runtime infrastructure

for developing, deploying and managing Web Services. ”