oracle direct seminar...【tips】jdeveloperで公開可能なロジック •...

50
Oracle Direct Seminar <Insert Picture Here> 実践SOA構築!! WEBサービス開発入門 日本オラクル株式会社

Upload: others

Post on 31-Jan-2020

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Oracle Direct Seminar...【Tips】JDeveloperで公開可能なロジック • Javaクラスクラス •今回ご紹介の単純な実装 • JMSキュ ー /トピック • キューイング(MQやOracle

Oracle Direct Seminar

<Insert Picture Here>

実践SOA構築!! WEBサービス開発入門日本オラクル株式会社

Page 2: Oracle Direct Seminar...【Tips】JDeveloperで公開可能なロジック • Javaクラスクラス •今回ご紹介の単純な実装 • JMSキュ ー /トピック • キューイング(MQやOracle

Agenda

<I t Pi t H >E t i 2 0時代のシステム <Insert Picture Here>• Enterprise 2.0時代のシステム• Web Service概要• Web Service実装Web Service実装

• Web Service実装例• Web Serviceクライアント実装

(S l t)・SQL Serverからの移行アセスメント

相談

Oracle Directの無償技術サービス

(Servlet)• Oracle SOAのご紹介• まとめ

・MySQLからの移行相談・PostgreSQLからの移行相談・Accessからの移行アセスメント・Application Server移行相談まとめ Application Server 移行相談・Oracle Database バージョンアップ支援・Oracle Developer/2000 Webアップグレード相談・パフォーマンス・クリニック

構成相談・Oracle Database 構成相談・Oracle Database 高可用性診断・システム連携アセスメント

htt // l /l /j /di t/ i ht l

Copyright© 2010, Oracle. All rights reserved. 2

http://www.oracle.com/lang/jp/direct/services.html

Page 3: Oracle Direct Seminar...【Tips】JDeveloperで公開可能なロジック • Javaクラスクラス •今回ご紹介の単純な実装 • JMSキュ ー /トピック • キューイング(MQやOracle

時代はEnterprise 2.0にシフト

ホスト

分散コンピ

ューティング

Webクライアント

サーバー

シンクライアントシンクライアント

Enterprise2.0

Web 2.0

統合と分散を繰り返す統合と分散を繰り返す

システム/アプリケーション構成の歴史

Copyright© 2010, Oracle. All rights reserved. 3

Page 4: Oracle Direct Seminar...【Tips】JDeveloperで公開可能なロジック • Javaクラスクラス •今回ご紹介の単純な実装 • JMSキュ ー /トピック • キューイング(MQやOracle

Enterprise 2.0への変遷

アプリケーションを

目的に応じて作る時代

アプリケーションを

組み合わせて作る時代

リソースを有効に活用して

アプリケーションを構成する

Enterprise 2.0

Copyright© 2010, Oracle. All rights reserved. 4

Page 5: Oracle Direct Seminar...【Tips】JDeveloperで公開可能なロジック • Javaクラスクラス •今回ご紹介の単純な実装 • JMSキュ ー /トピック • キューイング(MQやOracle

Enterprise 2.0で実現する新しい企業システムEnterprise mashup - JSF, Ajax, RSS, Wikis, SIP

Search

Recent

Favorites

NotificationsNotifications

Communities

Email

Documents

Discussions

Contextual Wiring

Presence

Copyright© 2010, Oracle. All rights reserved. 5

Page 6: Oracle Direct Seminar...【Tips】JDeveloperで公開可能なロジック • Javaクラスクラス •今回ご紹介の単純な実装 • JMSキュ ー /トピック • キューイング(MQやOracle

Enterprise 2.0で実現する新しい企業システムテム

リ チな ザ インタ フ ス• リッチなユーザーインターフェース• AJAXを使ったリッチなクライアント• Wiki SNSなど高機能アプリケーションと連携• Wiki, SNSなど高機能アプリケ ションと連携

• 開発の柔軟性• オープンな技術により技術の実装が容易オ プンな技術により技術の実装が容易

• 柔軟なシステム間連携• オープンな仕様によりデータ交換/システム間連携を実現

• 柔軟なプロセス変更への対応• 各システムの機能をオープンに利用• 機能ごとを組み合わせて新しいビジネスの創出へ

Copyright© 2010, Oracle. All rights reserved. 6

Page 7: Oracle Direct Seminar...【Tips】JDeveloperで公開可能なロジック • Javaクラスクラス •今回ご紹介の単純な実装 • JMSキュ ー /トピック • キューイング(MQやOracle

SOAの実装と考え方

在庫管理シ テム

サービスは切り出して持ってくるのではなく、リモートから利用

しかし、各システムごとにプログラム言語もデータタイプもバラバラ

在庫管理システム

ステム

新規構築We

We

受注管理システム既存シ

ebebサササー

サー

顧客管理システム統合販売システム

ビスビス

考え方は「分散オブジェクト指向」に近いが、プログラム言語 デ タタイプに全く依存しないのが特徴

スス

カスタム・サービス群

Copyright© 2010, Oracle. All rights reserved. 7

プログラム言語、データタイプに全く依存しないのが特徴カ タ サ 群

Page 8: Oracle Direct Seminar...【Tips】JDeveloperで公開可能なロジック • Javaクラスクラス •今回ご紹介の単純な実装 • JMSキュ ー /トピック • キューイング(MQやOracle

SOAを実現する基盤群プログラム言語でハードコードしてしまっては、

在庫管理

注文

プログラム言語でハ ドコ ドしてしまっては、システムの柔軟性が損なわれる

在庫管理システム

ステム

新規構築

在庫照会

文受付WW

ササ

ビジ

ビジ

受注管理システム既存

シス

納期回答決済手

Web

Web

ササ

サービス

サービス

ジネスプ

ジネスプ

画面

画面

与信チェック

手段確認

サー

サー

ス連

携ス連

プロセス

プロセス

面の統

面の統

顧客管理システム統合販売システム

ク受注確定

出荷

ービス

ービス

携基

盤携

基盤

ス基

盤ス基

統合

統合

ビジネス・プロセスとサービス(機能)をビジネス・プロセスとサービス(機能)を分離独立させて システムを構築する手法分離独立させて システムを構築する手法

カスタム・サービス群

荷指示

出荷

スス 盤盤 盤盤

分離独立させて、システムを構築する手法分離独立させて、システムを構築する手法

Copyright© 2010, Oracle. All rights reserved. 8

カスタム サ ビス群

Page 9: Oracle Direct Seminar...【Tips】JDeveloperで公開可能なロジック • Javaクラスクラス •今回ご紹介の単純な実装 • JMSキュ ー /トピック • キューイング(MQやOracle

中核技術 Web サービス (API)• 用意された機能を「使う」ではなく、利用したい技術をすきなように「使う」(ユーザー)

• Webページを公開するのではなく、機能を公開(サービス)

機能を公開機能を公開これからは

すきなように!

これまでは・・・・

受動的に利用受動的に利用

Copyright© 2010, Oracle. All rights reserved. 9

Page 10: Oracle Direct Seminar...【Tips】JDeveloperで公開可能なロジック • Javaクラスクラス •今回ご紹介の単純な実装 • JMSキュ ー /トピック • キューイング(MQやOracle

Web サービスのギモン?Q. Web サービスAPIで公開してなきゃだめなの?A. 広義には各種技術により再利用可能に構築されているもの含んでいます。本資料では再利

用性の高い連携技術として 企業ユースにおいて有利なWebサービス APIをベースに解用性の高い連携技術として、企業ユ スにおいて有利なWeb サ ビス APIをベ スに解説します。

Q. Web サービスってなにでつくるの?A. Javaをはじめ、PHP、Perlなど、Visual Studioなどにおいては標準技術です。また、やりとりにはHTTPをベースとしたSOAP/RESTプロトコルを利用します。

サ ビ 新 技術Q. Web サービスAPIって新しい技術?A.Web サービス API自体は実は2001年に制定されています。その後プロトコルの変化、多機

能化がすすみAJAXなどの技術とあわせWeb 2.0を構成する技術となっています。古くて新しい技術です。新しい技術です。

Q. これまでの連携技術となにが違ってなにがいいの?A. CORBAやEJBといった技術が現れては廃れていきました。これらは非常に複雑な構成によ

り、メンテナンス性を損ない、設計が難しいなど普及するにいたっていません。Web サービスはWebサイトの延長線上にあり、敷居が低くオープンな環境から普及しているものです。

Copyright© 2010, Oracle. All rights reserved. 10

Page 11: Oracle Direct Seminar...【Tips】JDeveloperで公開可能なロジック • Javaクラスクラス •今回ご紹介の単純な実装 • JMSキュ ー /トピック • キューイング(MQやOracle

Web サービス APIの動作実装形態は何でもよい

Ex. Web, クラサバ形態

ビW bサ ビス

*WSDL①WSDL参照

②機能の公開

Web サービス(エンドポイント)

Webサービスクライアント

プログラム

②機能の公開

③機能の利用

メソッド

ロジック

④機能の実行と結果

*WSDL: Webサービス記述言語。参照することで機能、利用方法を公開する

Copyright© 2010, Oracle. All rights reserved. 11

Page 12: Oracle Direct Seminar...【Tips】JDeveloperで公開可能なロジック • Javaクラスクラス •今回ご紹介の単純な実装 • JMSキュ ー /トピック • キューイング(MQやOracle

Web サービスAPIの動作(概説)

1 WSDL参照1. WSDL参照• URL/URIとしてアクセスします(エンドポイント)

• http://www.oracle-shop.com/getWebServices?wsdlp p g2. 機能の公開

• WSDLの規約に沿って“機能”を公開します機能3. 機能の利用

1. WSDLに記載された“機能”を抽象化2 抽象化された“機能”にコードを書くことで利用2. 抽象化された 機能 にコ ドを書くことで利用

• 実行プロトコルで実行

4. 実行と結果1. 実行プロトコル形式で渡された機能を与えられた値とともに実行2. 実行結果を実行プロトコルに沿って結果を返却します

Copyright© 2010, Oracle. All rights reserved. 12

Page 13: Oracle Direct Seminar...【Tips】JDeveloperで公開可能なロジック • Javaクラスクラス •今回ご紹介の単純な実装 • JMSキュ ー /トピック • キューイング(MQやOracle

機能的Webサービス実装のススメ

中核はXMLを扱う言語/プロト ル• 中核はXMLを扱う言語/プロトコル• 各種言語においても機能別に用意

PHP5のSOAPクライアント実装の例PHP5のSOAPクライアント実装の例

<?php

$client = new SoapClient(“Kensaku.wsdl”); // Soapクライアント関数の実行$ ($params = array(

‘Keyword’ => “日本オラクル株式会社”,) // Webサービスに対するパラメータの設定

$result = $client->SearchRequest($params); // SOAPリクエストの実行print_r($result); // 実行結果を表示(XML);p _ ( ); ( );

?>

Copyright© 2010, Oracle. All rights reserved. 13

Page 14: Oracle Direct Seminar...【Tips】JDeveloperで公開可能なロジック • Javaクラスクラス •今回ご紹介の単純な実装 • JMSキュ ー /トピック • キューイング(MQやOracle

統合開発環境の利用

• Webサービス構成に必要な機能を包括• 高速なサービス開発、高機能化への道標

GUIを利用した開発画面開発!

機能/フレ ムワ ク機能/フレームワークを統合!

ウィザード形式でW bサ ビス開発!Webサービス開発!

Copyright© 2010, Oracle. All rights reserved. 14

Page 15: Oracle Direct Seminar...【Tips】JDeveloperで公開可能なロジック • Javaクラスクラス •今回ご紹介の単純な実装 • JMSキュ ー /トピック • キューイング(MQやOracle

<I t Pi t H ><Insert Picture Here>

Web サービス

サーバーアプリケーション開発

•Oracle JDeveloperにより開発を行います。

Copyright© 2010, Oracle. All rights reserved. 15

Page 16: Oracle Direct Seminar...【Tips】JDeveloperで公開可能なロジック • Javaクラスクラス •今回ご紹介の単純な実装 • JMSキュ ー /トピック • キューイング(MQやOracle

サーバーアプリケーション開発 –概要

Webサ ビス¥→$ レート変換今回作成

するところWebサービス

Copyright© 2010, Oracle. All rights reserved. 16

Page 17: Oracle Direct Seminar...【Tips】JDeveloperで公開可能なロジック • Javaクラスクラス •今回ご紹介の単純な実装 • JMSキュ ー /トピック • キューイング(MQやOracle

新規プロジェクトの作成

新規 プ ケ シ①新規アプリケーション

②アプリケーションの作成

アプリケーション名: Exchange

③プロジェクトの作成

すべてのテクノロジ

③プロジェクトの作成

Copyright© 2010, Oracle. All rights reserved. 17

Page 18: Oracle Direct Seminar...【Tips】JDeveloperで公開可能なロジック • Javaクラスクラス •今回ご紹介の単純な実装 • JMSキュ ー /トピック • キューイング(MQやOracle

レート変換メソッドの作成①④新規 ⑤新規Javaクラス④新規 ⑤新規Javaクラス

⑥Javaクラス生成名前: RateChange

⑥Javaクラス生成

⑦ソースの自動生成

ソースが自動生成

Copyright© 2010, Oracle. All rights reserved. 18

Page 19: Oracle Direct Seminar...【Tips】JDeveloperで公開可能なロジック • Javaクラスクラス •今回ご紹介の単純な実装 • JMSキュ ー /トピック • キューイング(MQやOracle

レート変換メソッドの作成②

⑧レート変換ロジックコーディング⑧

package project1;p g p j

public class RateChange {public RateChange() {}

public long yentodaller(long yen){long daller = 0; //初期化long daller = 0; //初期化long rate = 108; //1ドル108円daller = yen / rate; // 計算return daller; //戻り値

}

}

Copyright© 2010, Oracle. All rights reserved. 19

Page 20: Oracle Direct Seminar...【Tips】JDeveloperで公開可能なロジック • Javaクラスクラス •今回ご紹介の単純な実装 • JMSキュ ー /トピック • キューイング(MQやOracle

Webサービスの作成①⑨J2EE W bサ ビスの作成

Webサービス名: RateChange

⑨J2EE Webサービスの作成

SOAP 1 2バインディングSOAP 1.2バインディング

Copyright© 2010, Oracle. All rights reserved. 20

Page 21: Oracle Direct Seminar...【Tips】JDeveloperで公開可能なロジック • Javaクラスクラス •今回ご紹介の単純な実装 • JMSキュ ー /トピック • キューイング(MQやOracle

Webサービスの作成②ビ 作成⑩Webサービスの作成 Step1 – Step5

RESTアクセスの有効化

Copyright© 2010, Oracle. All rights reserved. 21

Page 22: Oracle Direct Seminar...【Tips】JDeveloperで公開可能なロジック • Javaクラスクラス •今回ご紹介の単純な実装 • JMSキュ ー /トピック • キューイング(MQやOracle

Webサービスの作成③⑩ bサ ビスの作成 S 6 S 8⑩Webサービスの作成 Step6 – Step8

Copyright© 2010, Oracle. All rights reserved. 22

Page 23: Oracle Direct Seminar...【Tips】JDeveloperで公開可能なロジック • Javaクラスクラス •今回ご紹介の単純な実装 • JMSキュ ー /トピック • キューイング(MQやOracle

Webサービスの実行

Copyright© 2010, Oracle. All rights reserved. 23

Page 24: Oracle Direct Seminar...【Tips】JDeveloperで公開可能なロジック • Javaクラスクラス •今回ご紹介の単純な実装 • JMSキュ ー /トピック • キューイング(MQやOracle

Webサービス(SOAP)のテスト

http://localhost:8988/Exchange-Project1-context-root/RateChangeSoap12HttpPort

10000と入力10000と入力

WebサービスはWeb経由でテスWeb経由でテス

ト可能Copyright© 2010, Oracle. All rights reserved. 24

Page 25: Oracle Direct Seminar...【Tips】JDeveloperで公開可能なロジック • Javaクラスクラス •今回ご紹介の単純な実装 • JMSキュ ー /トピック • キューイング(MQやOracle

結果の取得

<env:Envelopexmlns:env="http://www.w3.org/2003/05/soap-

envelope"xmlns:xsd="http://www w3 org/2001/XMLSchema"xmlns:xsd= http://www.w3.org/2001/XMLSchemaxmlns:xsi="http://www.w3.org/2001/XMLSchema-

instance"xmlns:ns0="http://project1/types/"><env:Body>y<ns0:yentodallerResponseElement><ns0:result>92</ns0:result>

</ns0:yentodallerResponseElement></env:Body></env:Envelope></env:Envelope>

92ドル

Copyright© 2010, Oracle. All rights reserved. 25

Page 26: Oracle Direct Seminar...【Tips】JDeveloperで公開可能なロジック • Javaクラスクラス •今回ご紹介の単純な実装 • JMSキュ ー /トピック • キューイング(MQやOracle

WSDLの参照

http://localhost:8988/Exchange-Project1-context-root/RateChangeSoap12HttpPort?wsdl

定義内容を参照定義内容を参照

Copyright© 2010, Oracle. All rights reserved. 26

Page 27: Oracle Direct Seminar...【Tips】JDeveloperで公開可能なロジック • Javaクラスクラス •今回ご紹介の単純な実装 • JMSキュ ー /トピック • キューイング(MQやOracle

【Tips】 RESTアクセス

• SOAPでは、問い合わせをするためにXML形式のフォーマットが常に必要• RESTではURIとしてパラメータを入れることが可能• RESTでは結果が単純なXMLで返されるため扱いが容易

http://localhost:8989/Exchange-Project1-context-root/RateChangeSoap12HttpPort/yentodaller?yen=1000/ g p p /y y

結果が単純なフォーマット結果が単純なフォ マット

Copyright© 2010, Oracle. All rights reserved. 27

Page 28: Oracle Direct Seminar...【Tips】JDeveloperで公開可能なロジック • Javaクラスクラス •今回ご紹介の単純な実装 • JMSキュ ー /トピック • キューイング(MQやOracle

Web Serviceサーバーアプリケーション開発 ここまでで作成したところ発 – ここまでで作成したところ

ChageRate()Yentodaller()

Webサ ビス¥→$ レート変換

WebサービスChageRateTypePort

RateChange.wsdl*自動作成

Copyright© 2010, Oracle. All rights reserved. 28

Page 29: Oracle Direct Seminar...【Tips】JDeveloperで公開可能なロジック • Javaクラスクラス •今回ご紹介の単純な実装 • JMSキュ ー /トピック • キューイング(MQやOracle

【Tips】JDeveloperで公開可能なロジック

J クラス• Javaクラス• 今回ご紹介の単純な実装

• JMSキュ /トピック• JMSキュー/トピック• キューイング(MQやOracle AQ)

• PL/SQLプロシージャ• PL/SQLプロシ ジャ• Oracle Databaseに実装された手続き言語

• CORBAサーバント・オブジェクトCORBAサ バント オブジェクト• CORBAリモートオブジェクトを公開

• EJB• EJB 1.0/2.0/3.0に対応したアプリに対応し、データベースアプリケーションを即座にWebサービス化が可能

Copyright© 2010, Oracle. All rights reserved. 29

Page 30: Oracle Direct Seminar...【Tips】JDeveloperで公開可能なロジック • Javaクラスクラス •今回ご紹介の単純な実装 • JMSキュ ー /トピック • キューイング(MQやOracle

Web Serviceの粒度

• Web Serviceはロジック次第で高機能にも単機能にもなりえる• 実装レベルに応じ粒度という表現をします

粗い

在庫を確認する

発注を行う

月次〆処理の実行

データベース表からデータ取得する

社員情報を取得する

ファイルを取得する

細かいCopyright© 2010, Oracle. All rights reserved. 30

細かい

Page 31: Oracle Direct Seminar...【Tips】JDeveloperで公開可能なロジック • Javaクラスクラス •今回ご紹介の単純な実装 • JMSキュ ー /トピック • キューイング(MQやOracle

<I t Pi t H ><Insert Picture Here>

Web サービス

クライアントアプリケーション開発

• Oracle JDeveloperにより開発を行います。

HTTP S l t形式で作成します• HTTP Servlet形式で作成します

Copyright© 2010, Oracle. All rights reserved. 31

Page 32: Oracle Direct Seminar...【Tips】JDeveloperで公開可能なロジック • Javaクラスクラス •今回ご紹介の単純な実装 • JMSキュ ー /トピック • キューイング(MQやOracle

クライアントの定義

W b S i を利用するアプリケ シ ンをさす• Web Serviceを利用するアプリケーションをさす• 実装形態については技術が利用できる限りどのような携帯でも利用できる帯でも利用できる

JspServlet

Web Service

javaVisual Basic/C#

リッチクライアント

Copyright© 2010, Oracle. All rights reserved. 32

Page 33: Oracle Direct Seminar...【Tips】JDeveloperで公開可能なロジック • Javaクラスクラス •今回ご紹介の単純な実装 • JMSキュ ー /トピック • キューイング(MQやOracle

Web Serviceクライアントアプリケーション開発 概要発 –概要

Webサ ビス¥→$ レート変換

Webサービス

今 作成 値の入力&結果取得S l

Webサービスクライアント今回作成

するところ値の入力&結果取得Servlet

Webサ ビスクライアント

Copyright© 2010, Oracle. All rights reserved. 33

Page 34: Oracle Direct Seminar...【Tips】JDeveloperで公開可能なロジック • Javaクラスクラス •今回ご紹介の単純な実装 • JMSキュ ー /トピック • キューイング(MQやOracle

新規プロジェクトの作成

①新規プロジェクトの作成

②Webプロジェクトの作成②Webプロジェクトの作成

Copyright© 2010, Oracle. All rights reserved. 34

Page 35: Oracle Direct Seminar...【Tips】JDeveloperで公開可能なロジック • Javaクラスクラス •今回ご紹介の単純な実装 • JMSキュ ー /トピック • キューイング(MQやOracle

Webプロジェクトウィザード③ウィザードの実行

Copyright© 2010, Oracle. All rights reserved. 35

Page 36: Oracle Direct Seminar...【Tips】JDeveloperで公開可能なロジック • Javaクラスクラス •今回ご紹介の単純な実装 • JMSキュ ー /トピック • キューイング(MQやOracle

Webサービスプロキシの作成④Webサービスプロキシの作成

Webサ ビスプロキシとは?Webサービスプロキシとは?・プログラムから簡単扱えるようにWebサービス

APIをラッピングしたコード

Copyright© 2010, Oracle. All rights reserved. 36

Page 37: Oracle Direct Seminar...【Tips】JDeveloperで公開可能なロジック • Javaクラスクラス •今回ご紹介の単純な実装 • JMSキュ ー /トピック • キューイング(MQやOracle

Webサービスプロキシの作成②⑤Webサ ビスプロキシの作成 Step1 Step3⑤Webサービスプロキシの作成 Step1 – Step3

http://localhost:8988/Exchange-Project1-context-root/RateChangeSoap12HttpPort?wsdlroot/RateChangeSoap12HttpPort?wsdl

Copyright© 2010, Oracle. All rights reserved. 37

Page 38: Oracle Direct Seminar...【Tips】JDeveloperで公開可能なロジック • Javaクラスクラス •今回ご紹介の単純な実装 • JMSキュ ー /トピック • キューイング(MQやOracle

Webサービスプロキシの作成③⑤Webサ ビスプロキシの作成 Step4 Step6⑤Webサービスプロキシの作成 Step4 – Step6

Copyright© 2010, Oracle. All rights reserved. 38

Page 39: Oracle Direct Seminar...【Tips】JDeveloperで公開可能なロジック • Javaクラスクラス •今回ご紹介の単純な実装 • JMSキュ ー /トピック • キューイング(MQやOracle

Servlet作成⑥HTTPサ ブレットの追加⑥HTTPサーブレットの追加

ここから実際に処理を行うクライアントServletを開発します。

Copyright© 2010, Oracle. All rights reserved. 39

Page 40: Oracle Direct Seminar...【Tips】JDeveloperで公開可能なロジック • Javaクラスクラス •今回ご紹介の単純な実装 • JMSキュ ー /トピック • キューイング(MQやOracle

Servlet開発①⑦HTTPサーブレット作成ウィザード Step1 – Step3

Copyright© 2010, Oracle. All rights reserved. 40

Page 41: Oracle Direct Seminar...【Tips】JDeveloperで公開可能なロジック • Javaクラスクラス •今回ご紹介の単純な実装 • JMSキュ ー /トピック • キューイング(MQやOracle

Servlet: コード追加- Webサービスプロキシのコード追加 -- Webサ ビスプロキシのコ ド追加 -

public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException IOException HttpServletResponse response) throws ServletException, IOException

{response.setContentType(CONTENT_TYPE);PrintWriter out = response.getWriter();RateChangeSoap12HttpPortClient my_port;

try {my_port = new RateChangeSoap12HttpPortClient();long a = my_port.yentodaller(231421);

out.println("<html>");out.println("<head><title>Servlet1</title></head>");out.println("<body>");out.println(a + "Daller(s)");out.println("</body></html>");out.close();

} catch (Exception e) {out.println(e);

}}

Copyright© 2010, Oracle. All rights reserved. 41

Page 42: Oracle Direct Seminar...【Tips】JDeveloperで公開可能なロジック • Javaクラスクラス •今回ご紹介の単純な実装 • JMSキュ ー /トピック • キューイング(MQやOracle

実行および結果

Web画面に結果が返されます。

Copyright© 2010, Oracle. All rights reserved. 42

Page 43: Oracle Direct Seminar...【Tips】JDeveloperで公開可能なロジック • Javaクラスクラス •今回ご紹介の単純な実装 • JMSキュ ー /トピック • キューイング(MQやOracle

SOAのリファレンスアーキテクチャ~Web Serviceの利用方法~利用方法

受注担当者

画面

( ンポジ ト

顧客管理画面 受注画面 精算処理画面•業務実行に必要な機能を集約した、ユーザ

経理担当者

BPELBPEL ジジ

(コンポジット・アプリケーション) 注文

Call

顧客情報

取引履歴

在庫引当

売掛計上 完了

売掛確認

請求書作成

・・・ごとのワークスペースを提供

•業務処理手順(ビジ顧客情報確認プロセス 受注プロセス 請求プロセス

BAMBPELBPELエンジンエンジン

プロセス

(BPM(BPEL)およびBAM)

•業務処理手順(ビジネスプロセス)を定義

•要求に応じた自動実行とモニタリング

サービスサービスリポジトリ

システム間連携

(ESB:Enterprise

Enterprise Service BusEnterprise Service Bus•ビジネスプロセスとシステム機能の疎連携

サービス

EnterpriseService Bus)

•実際に業務処理を行

.Net ERPJ2EE

顧客管理サービス群

販売管理サービス群

在庫管理サービス群

Host

会計管理サービス群

売上管理サービス群

・・・(Webサービス)

実際に業務処理を行うためのシステム機能を、標準化された仕様で公開

システムレイヤ

Copyright© 2010, Oracle. All rights reserved. 43

Page 44: Oracle Direct Seminar...【Tips】JDeveloperで公開可能なロジック • Javaクラスクラス •今回ご紹介の単純な実装 • JMSキュ ー /トピック • キューイング(MQやOracle

まとめ

W b S i は難しくありません• Web Serviceは難しくありません• 実装方法は言語ごと使いやすくなっています実装する機能は現在おもち キ 延長線上にありま• 実装する機能は現在おもちのスキルの延長線上にあります

Oracleでは開発環境から 実行基盤 SOA基盤までト• Oracleでは開発環境から、実行基盤、SOA基盤までトータルにご支援可能です

Copyright© 2010, Oracle. All rights reserved. 44

Page 45: Oracle Direct Seminar...【Tips】JDeveloperで公開可能なロジック • Javaクラスクラス •今回ご紹介の単純な実装 • JMSキュ ー /トピック • キューイング(MQやOracle

Oracle Direct Seminar コースフローSOA編

Oracle Direct Seminar

編開発編

超入門!SOAって何だ!?

「SOAって何?? 」という方はこちらから

実践SOA環境構築!!

SOA最前線!!現場で起きたホントのところ

超入門!SOAって何だ!?WEBサービス開発入門

実践SOA環境構築!!BPELプロセスマネージャ開発入門

SOAを実装する!! オペレーションコストを

削減する画面統合テクノロジ

アプリケーション統合編

SOAを実装する! Oracle AIAで完成するSOA

削減する画面統合テクノロジー

基盤のためのMDM

ITキーワード早分かり!! ”マスターデータ統合”の勘ドコロ

Oracle AIAで完成するSOA

Copyright© 2010, Oracle. All rights reserved. 45

Page 46: Oracle Direct Seminar...【Tips】JDeveloperで公開可能なロジック • Javaクラスクラス •今回ご紹介の単純な実装 • JMSキュ ー /トピック • キューイング(MQやOracle

OTNOTN掲示版のご紹介掲示版のご紹介

・セミナー中に解消できなかった疑問点を解消したい!・セミナー終了後に疑問点が出てきた!

このようなお客様に

・一般的なその解決方法などを知りたい!

このようなお客様に、Oracle Technology Network(OTN)の掲示版の活用をお薦めします。掲示版の活用をお薦めします。

http://otn.oracle.co.jp/forum/index.jspa?categoryID=2

本セミナーに関連する質問については、OTN掲示版の「アプリケーションサーバーの部屋」へ投げてみてください

※OTN掲示版は、基本的にOracleユーザー有志からの回答となるため100%回答があるとは限りません。ただ 過去の履歴を見ると 質問の大多数に関してなんらかの回答が書き込まれております

「アプリケ ションサ バ の部屋」へ投げてみてください。

Copyright© 2010, Oracle. All rights reserved. 46

ただ、過去の履歴を見ると、質問の大多数に関してなんらかの回答が書き込まれております。

Page 47: Oracle Direct Seminar...【Tips】JDeveloperで公開可能なロジック • Javaクラスクラス •今回ご紹介の単純な実装 • JMSキュ ー /トピック • キューイング(MQやOracle

OTNOTNセミナーセミナー オンデマンドオンデマンド コンテンコンテン期間限定にて ダイセミの人気セミナ を動画配信中!!

http://www.oracle.com/technology/global/jp/ondemand/otn-seminar/index.html

期間限定にて、ダイセミの人気セミナーを動画配信中!!ダイセミのライブ感はそのままに、お好きな時間で受講頂けます。

http://www.oracle.com/technology/global/jp/ondemand/otn seminar/index.html

※掲載のコンテンツ内容は予告なく変更になる可能性があります。いずれも期間限定での配信です 気になる ンテンツは早めにダウンロ ド頂くことをお勧めいたします

Copyright© 2010, Oracle. All rights reserved. 4747

いずれも期間限定での配信です。気になるコンテンツは早めにダウンロード頂くことをお勧めいたします。

Page 48: Oracle Direct Seminar...【Tips】JDeveloperで公開可能なロジック • Javaクラスクラス •今回ご紹介の単純な実装 • JMSキュ ー /トピック • キューイング(MQやOracle

ITプロジェクト全般に渡る無償支援サービスOracle Direct Conciergeサ ビスメニュ

業務改善計画の作成支援• 業務診断サービス• BIアセスメントサ ビス

Oracle Direct Conciergeサービスメニュー

経営企画

• BIアセスメントサービスシステム運用状況の診断•パフォーマンス・クリニック・サービス•システム・セキュリティ診断サービスデ タ管理最適化サ ビス

運用 IT 企画システム企画の作成支援•業務診断サービス•BIアセスメントサービス

•データ管理最適化サービス

構築 設計RFP/提案書の作成支援

システム構築時の道案内•Access / SQL Serverからの移行•MySQL / PostgreSQLからの移行

•BIアセスメントサービス•仮想化アセスメントサービス•Oracle Database 構成相談サービス•Oracle Database 高可用性クリニック

MySQL / PostgreSQLからの移行•Oracle Database バージョンアップ支援•Oracle Developer Webアップグレード•システム連携アセスメントサービス

Copyright© 2010, Oracle. All rights reserved. 4848

Page 49: Oracle Direct Seminar...【Tips】JDeveloperで公開可能なロジック • Javaクラスクラス •今回ご紹介の単純な実装 • JMSキュ ー /トピック • キューイング(MQやOracle

あなたにいちばん近いオラクル

O l Di tOracle Directまずはお問合せくださいまずはお問合せください

Oracle Direct 検索

まずはお問合せくださいまずはお問合せください

O ac e ect 検索

システムの検討・構築から運用まで、ITプロジェクト全般の相談窓口としてご支援いたします。

システム構成やライセンス/購入方法などお気軽にお問い合わせ下さい

Web問い合わせフォーム フリーダイヤル

システム構成やライセンス/購入方法などお気軽にお問い合わせ下さい。

http://www.oracle.co.jp/inq_pl/INQUIRY/quest?rid=28専用お問い合わせフォームにてご相談内容を承ります。

※フォームの入力には Oracle Direct Seminar申込時と同じ

0120-155-096※月曜~金曜 9:00~12:00、13:00~18:00※フォ ムの入力には、Oracle Direct Seminar申込時と同じ

ログインが必要となります。※こちらから詳細確認のお電話を差し上げる場合がありますので、ご登録されている連絡先が最新のものになっているか、ご確認下さい。

※月曜 金曜 9:00 12:00、13:00 18:00

(祝日および年末年始除く)

Copyright© 2010, Oracle. All rights reserved. 4949

Page 50: Oracle Direct Seminar...【Tips】JDeveloperで公開可能なロジック • Javaクラスクラス •今回ご紹介の単純な実装 • JMSキュ ー /トピック • キューイング(MQやOracle

以上の事項は、弊社の一般的な製品の方向性に関する概要を説明するものです。また、情報提供を唯一の目的とするものであり、いかなる契約にも組み込むことはできません 以下の事項は マテリアルやコード 機能を提供することをコミットメンできません。以下の事項は、マテリアルやコ ド、機能を提供することをコミットメント(確約)するものではないため、購買決定を行う際の判断材料になさらないで下さい。オラクル製品に関して記載されている機能の開発、リリースおよび時期については、弊社の裁量により決定されます。ては、弊社の裁量により決定されます。

Oracle、PeopleSoft、JD Edwards、及びSiebelは、米国オラクル・コーポレーション及びその子会社、関連会社の登録商標です。その他の名称はそれぞれの会社の商標の可能性があります。

Copyright© 2010, Oracle. All rights reserved. 5050