オラクルの
オラクルの
Web
Web
サービス
サービス
鈴木 潤一
マネジャー
システム製品マーケティング部
製品本部
日本オラクル株式会社
アジェンダ
Webサービスとは
Webサービスコンポーネント
何故Webサービスか
Infrastructure Providerとしてのオラクル
Service Providerとしてのオラクル
まとめ
新しい Webモデル の登場
いままで Web で提供されてきたもの
– リンクされた文書のブラウズ – 手動を前提とした購買とトランザクション – ファイルのダウンロードすべて手動でブラウザを通しておこなわれている
Web Services: Web の使い方に関する新しいモデル
– プログラムによりトランザクションを自動的に生成
– 分散環境におけるダイナミックな記述、公開、発見、呼び出し – Web を使った新しい手段: intelligent agents, market places,
auctions,...
Web サービス とは?
E-Business の次なる展開
– ビジネス・ファンクションを Web 上に公開 – 広範囲なアクセスクライアント - サーバー モデルへのスムーズな拡張
– E-Business のためのトランザクション・モデル – リモート・オブジェクト上でのメソッドの起動 (SOAP) – SOAP lookup を用いた利用可能なサービスと プロバイダーのディレクトリー (UDDI) – サービスとプロバイダーのためのXMLをベース とした標準的な記述言語 (WSDL, WDS)Web サービス の例(1)
内容が豊富なビジネス情報
–天気予報
–ニュース配信
–フライト・スケジュール
–株価
–与信
–クレジット・カード照会
–オークション
–...
Web サービス の例(2)
B2B/B2C のためのトランザクションを前提とした
Web Services
–フライト予約
–レンタカー配車調整
–サプライチェーン
–管理(生産、人事、危機..)
–受発注
–...
Web サービス の例(3)
ビジネス・プロセスの外部への展開
–
ワークフロー・レベルのビジネス連携
Web サービス コンポーネント
Service Provider
– 登録を通して使用可能な E-Business サービスの提供 Service Provider Service Broker Service Requestor Pu sh Find B indService Broker
– サービスの公開情報と位置 情報を提供(イエローページ) bliService Requestor
– Service Broker 上で、必要なサービスの位置から Service Provider
Web サービス の手順
Publish/Unpublish
– Service Provider が一つ以上の Service
Broker にサービスに関する情報を公開 Service Provider Service Broker Service Requestor Pu sh Find B ind
Find
– Service Requestor が Service Brokers に対して一 連の必要なサービスを照会 bliBind
– Service Requestor が Service Broker/Service Provider と折衝を
Web サービス Opportunity
Oracle’s View
技術的な発展
– プラットフォームに依存しない、インターネット ベースの RPC – インターネットによる新しい分散コンピューティング モデルへの進化 – キーワード: 単純明快 – 現在の制限: 意味的な統合/既存のビジネス プロセスとトランザクションビジネスの革命
– 新しいプロダクト/サービスの分散モデル – 新しいインターネットによる収益モデル – 顧客とパートナーとの密接な連携 – Web の価値が競合構造の変化をもたらす要件
– ビジネス トランザクションやビジネス プロセスの開示– 既存の投資とスキル (J2EE, PL/SQL, Existing Apps) を活用
Web サービス の主要な要件
Deliver, Implement, Integrate ...
プロダクトとサービスの供給
– パートナーを介したWeb Services の公開によって新しい 分散チャネルを確立し、競合に対する優位性を Web の力 で創造する。新しい Web Services の実現
– Web Services として提供するための新しいアプリケーショ ンとコンポーネントの開発既存のサービスを統合
– Web Services 、エンタープライズ・アプリケーション、ビジ ネスプロセスを一つのビジネスプロセスとして統合Web サービス のビジネス上の価値
ビジネスパートナーの社内システムとの連携 – リアルタイムな顧客サービスの提供 – ダイナミックで高度に洗練されたサプライチェーン – サービスの供給や、パートナー とのチャネルの増強 内部システムとの連携 – よりダイナミックにビジネス プロセスを合理化する – リアルタイムな連携を維持しながら、ビジネス機能の外注化 – IT資産を更に活用しながら、ITインフラを標準化 内在する新しいビジネスの機会 – コンテンツとアプリケーションによる新しい収益モデル – 顧客の製品/ビジネス プロセスのサービス化 – インターネット アプリケーションとコミュニティとの協調Web サービス 登場の技術的な背景
Yesterday
–
Building applications with J2EE and XML…
Today
–
Building applications with J2EE, XML and
The Solution: Web サービス
相互補完的なオンライン サービス.. Payment
Services ServicesBilling
Payroll Services Shipping Services Credit Services Many Others... Oracle9
Oracle9iiApplication ServerApplication Server Oracle9
Oracle9ii Database Database Web Services
Web Services Infrastructure
インターネットの為の分散コンピューティング モデル
(UDDI/JAXR) Web Service Web Service Web Services Web Services Registries Registries Client Application Client Application Publish (WSDL) Invoke (SOAP/ebXML) XML Binding XML Binding Service Implementation Service Implementation Find / Discover (J2EE, PL/SQL, Other)Java Community Process
Adding Web Services to J2EE
Description Description JSR JSR JAX JAX--RPCRPC JAXP JAXP JAXM JAXM JAXB JAXB JAXR JAXR
Java API for XML Remote Procedure Call Java API for XML Remote Procedure Call
Java API for XML Remote Procedure Call
Java API for XML Registries Java API for XML Registries
Java API for XML Registries
Java API for XML Parsing Java API for XML Parsing
Java API for XML Parsing
Java API for XML Messaging Java API for XML Messaging
Java API for XML Messaging
Java API for XML Data Binding Java API for XML Data Binding
Web サービス と既存のフレームワーク
既存のアプリケーション・フレームワークとWeb Services モデルとの統合ISSUE
ISSUE J2EE/CORBAJ2EE/CORBA Web ServicesWeb Services Business Logic
Business Logic Java/AnyJava/Any AnyAny Transport Protocol
Transport Protocol RMI/IIOPRMI/IIOP SOAP/XMLPSOAP/XMLP Interface Definition
Interface Definition RMI/IDLRMI/IDL WSDLWSDL Naming Service
Naming Service JNDI/JNDI/CosNamingCosNaming XMLNamespaceXMLNamespace Repository
Repository JNDI JNDI ReposRepos/LDAP/LDAP UDDI/JAXRUDDI/JAXR Agreements
Agreements RMI/IDL TypesRMI/IDL Types XML DocumentsXML Documents Discovery
Discovery JNDI BrowsingJNDI Browsing ReposRepos. Search. Search Composition
Composition YES/YESYES/YES Being DefinedBeing Defined Discovery
Discovery YES/YESYES/YES Being DefinedBeing Defined Security
Security JAZN/JAZN/CORBASecCORBASec Being DefinedBeing Defined Transactionality
Transactionality JTS/OTSJTS/OTS Being DefinedBeing Defined Messaging
Web サービス:
Infrastructure Providerとしての
Oracle9i Web Services Infrastructure
Service Development Service Development ( (JDeveloperJDeveloper)) Web Web Service Service Clients Service Service Implement. Implement. PL/SQL PL/SQL J2EE J2EE Applications Applications Service Service Delivery Delivery Portal Portal Wireless Wireless SOAP SOAP ICE ICE Service Service Integration Integration Business Business Process Process Management Management Semantic Semantic Transform. Transform. Messaging Messaging Clients B2BB2B Protocols Protocols Internet Internet Web Web Services Oracle9iUDDI & JAXR Repositories UDDI & JAXR Repositories
Web サービス クライアントからの起動
Request Brokers JSP 1.1 JSP 1.1 Servlets Servlets EJBs EJBs W W S S D D L L B B I I N N D D I I N N G G SS Stored ProcsStored Procs RMI Broker IIOP Broker IIOP Broker (ORB) (ORB) Web Svc Web Svc Broker Broker ( (DynDynSvcsSvcs)) I I D D L L B B I I N N D D I I N N G G S S R R M M I I B B I I N N D D I I N N G G S S Interface
Bindings Program Logic
EJB Client EJB Client CORBA CORBA Client Client
9iAS
UDDI UDDI Repository Repository 1.SEARCH 1.SEARCH Web Service Web Service Client 2.BIND 2.BIND ClientWeb サービスを加速する Oracle9iコンポーネン
ト
Design & Development
Design & Development
ツール
ツール
最新の
最新の
J2EE実行環境
J2EE
実行環境
Web Cache
Web Cache
Oracle9
Oracle9
i
i
JDeveloper
JDeveloper
OC4J
OC4J
Oracle9
Oracle9
i
i
AS
AS
Oracle9i JDeveloper
– SOAPクライアント/サーバーのシームレスな開発環境
• Web Service Publishing Wizard
• Web Service Stub/Skeleton Wizard
• WSDL Document (by hand)
Service Provider Service Broker Service Requestor Pub lish Bind WSDLファイル Service Providerへのサービスの登録を行う WSDLによるService Requestorへのスタブ/スケルトンクラスを生成する 手動でWSDLを登録する Find 自動変換 Stub/Skeletonクラス
Oracle9i JDeveloper
SOAPクライアント開発
– WSDL入力によるProxyクラス の自動生成 http://www.xmethods.net/sd/2001/EBayWatcherService.w sdlOracle9i JDeveloper
UMLモデリングからWeb Servicesまで最新テクノロジーに対応
Any Technology – Java, J2EE, BC4J – PL/SQL – XML – SOAP, WSDL Service の生成 – Web Serviceの発見 – Web Serviceへのバインド – Web Serviceの公開 複合 Services – Aggregate services – Compound services – Conditional servicesOracle9iASに実装
– (Standard Editionから)
J2EE 1.2 & 1.3
(一部)Certify
– Servlet 2.3, EJB2.0 の一部
Pure Java
実行時モジュール 10MB
(圧縮時)最小使用メモリー 12MB
(NT)Tomcatの約8倍のパフォーマンス
(300ユーザーアクセス時)スケーラビリティ/可用性
– クラスタリング対応 JDK JVM HTTP Server Servlet Container JSP Container EJB ContainerOC4J
JDBCOC4J
(Oracle9iAS Containers for
Oracle9iAS –Web Cache –
データベースサーバ データベースサーバ
Oracle9
Oracle9iiAS S.E. or E.E.AS S.E. or E.E. HTTP HTTP Server Server Powered by Powered by Apache Apache クライアント クライアント Web Cache Web Cache アプリケーション Servlet / JSP ... Oracle9
Oracle9iiAS S.E. or E.E.AS S.E. or E.E. HTTP HTTP Server Server Powered by Powered by Apache Apache アプリケーション Servlet / JSP ...
...
Oracle9 Oracle9iiASAS E.E. E.E. 表の更新により該当するキャッシュデータを 無効化する(HTTP/XML) パフォーマンス保証ヒューリスティクス採用 トリガー トリガーOracle9iAS Web CacheでXMLペイロード
を高速化
Web Cache Web Cache ( (キャッシュされたキャッシュされたXMLXMLデータデータ)) アプリケーションアプリケーションサーバサーバ Oracle Database LOB LOB XMLXML interMedia interMedia Procedure Procedure Tables アプリケーション アプリケーション サーバ サーバ アプリケーション アプリケーション サーバ サーバXMLペイロードもCache技術で高速に送信
速報
速報
Oracle9iAS Release 2 の概
要
Webサービス最新対応
–UDDI レジストリ & インポート機能
–Apache-SOAP 2.2, WSDL
–.Net コンパチブル
BtoB Integration
–
RosettaNet 1.1/2.0, ebXML, WebDAV
J2EE 1.3
Web サービス:
Service Providerとしての
Web サービス の統合
Integrate Web Services, Applications, Business Proce
Design Manage Analyze
Tools Tools Oracle Oracle E E--BusinessBusiness Suite Suite Oracle Oracle Exchange Exchange Business Process Management Semantic Transformation Profile Management Messaging B2B Protocol Engine A A D D A A P P T T E E R R S S W W S S D D L L Web Web Service Service Clients Clients Internet Internet 3rd Party 3rd Party Applications Applications Oracle9iAS Integration B2B B2B Protocols UDDI & JAXR
Repositories UDDI & JAXR
Repositories Protocols
Web
Web
Services
Oracle Web Services Strategy
Web Services Everywhere
Internet
Internet
Infrastructure
Infrastructure
Internet
Internet
Applications
Applications
Online
Online
Services
Services
Oracle
Oracle
Online Services
Online Services
Oracle
Oracle
e
e
-
-
Business Suite
Business Suite
Oracle9i DB
Oracle9i DB
Oracle9i AS
Oracle’s and Web Services Standards
Active Presence in Web Services’ Standards Bodies
•
• Web Services WGWeb Services WG (SOAP,WSDL,UDDI) (SOAP,WSDL,UDDI) • • XMLP WGXMLP WG • • XML Schema WGXML Schema WG • • XML Query WGXML Query WG •
• XMI Metadata WGXMI Metadata WG •
• Component Model WGComponent Model WG •• J2EE Web J2EE Web Services JSR
Services JSR
•
• JAXM JSRJAXM JSR •
• JAXM MessagingJAXM Messaging
® W3C W3C OMG OMG Java/J2EE Java/J2EE ebXML
ebXML WGWG OASIS/XML.orgOASIS/XML.org
• • Protocol/JAXPProtocol/JAXP • • Repository/JAXRRepository/JAXR • • Messaging/JAXM • • TPAMLTPAML • • BOPC WGBOPC WG
Messaging/JAXM RosettaNetRosettaNet
•
参考資料 参考資料
企業情報ポータルと
Portalによる Web サービス の実現
Using Oracle9iAS Portal
Web をベースとした情報
へのアクセス機能
“Portlets” を介したコン
テンツの管理と配信
Portlet Provider として
のWeb サービス の利用
すべてのPortlet を Web
サービス 化
Portlets 参考資料 参考資料Portal: Web サービス の集約と連携
参考資料参考資料ユーザーにとってWeb サービス の検索を容易に
Web サービス を複数の Portal に連携
パーソナライズ化された Web サービス の提供
Web サービス 上でシングル サインオンを実現
Portal と UDDI リポジトリー に Web
サービス を集約
Web Services ベースの Portal Framework を利用
参考資料 参考資料 Page Assembly (Servlet) P P O O R R T T L L E E T T Engine Engine
9iAS
Login Server Login Server SOAP (HTTP) Packaged Packaged Application Application Existing Existing Web Web Service Service W W S S D D L L W W S S D D L L W W S S D D L L JPDK JPDK J2EE Based J2EE Based WSDL Interfaces WSDL Interfaces SOAP Invocation SOAP Invocation Web Site Web Site Personalized Portals • User Preferences • Web Services Metadata (Namespace, WSDL Definitions) LDAP LDAP (公開されたPortal と UDDI リポジトリー
の連携(Syndicate Services)
標準のインターネット Syndication ファシリティを利用
参考資料 参考資料 Content Content Sources Sources Web Service Web Service Interfaces Interfaces SOAP (HTTP) Packaged Packaged Application Application Existing Existing Web Web Service Service W W S S D D L L W W S S D D L L W W S S D D L L Syndication Syndication Services ServicesDB • User Preferences• Web Services
Metadata (Namespace, WSDL Definitions) Login Server Login Server LDAP LDAP (
(PvtPvt UDDI UDDI ReposRepos))
P P O O R R T T L L E E T T Engine Engine Web Site Web Site Other Portals