Oracle9 Application Server - Oracle Tech Network JPotn.oracle.co.jp/event/ows/c1.pdf · Oracle iAS...
Transcript of Oracle9 Application Server - Oracle Tech Network JPotn.oracle.co.jp/event/ows/c1.pdf · Oracle iAS...
Agenda
� 9iASの特徴・機能説明– 基本機能(PL/SQL、Java2)
– Cache機能
– Portal機能、その他の機能
� Internet Developer Suiteによる開発– Designer、Developer、JDeveloper
� アプリケーション構築例� DEMO
データベース・サーバー
Oracle HTTP Server
ミドルティア・サーバー
アプリケーション実行環境
ブラウザ
クライアント
Servlet
JSP
EJB
PL/SQL
Portal
Forms
Reports
DiscovererViewer
PL/SQL
EJB
CORBAmod_jservmod_osemod_plsqlmod_perlmod_ssl…
Web
Cache
DatabaseCache
Oracle 9iASの基本構成
基本機能
� Oracle HTTP Server powered by Apache� PL/SQL� Java2(Servlet、JSP、EJB)、BC4J(JDeveloper)� WebCache、DBCache� Oracle Portal� Mobile Wireless、Forms/Reports Service� Business Intelligence
OracleHTTP
Server(powered
byApache)
mod_???
mod_???
ServletServlet/JSP/JSP
Oracle8Oracle8iiPL/SQLPL/SQL
Oracle HTTP Server
� シェアNo.1のWebサーバーを利用– 数多くの稼働実績と高い安定性
– シンプルなアーキテクチャ– 機能のモジュール化(mod_*)
� Oracleが提供することによるメリット– Oracle製品の機能を活用する拡張モジュールの
提供– Oracleによるサポートの提供
� メディアに含まれるモジュールのみサポート
� パッチについてもOracleから提供
� ソースコードは未提供
� Apache Software Foundationへのフィードバック
HTTPS
HTTP
PL/SQL
OracleHTTPServer
ブラウザ
PL/SQLストアド・プロシージャによるWebアプリケーション開発
Request
Response
HTTP Oracle8iPL/SQL
Net8
PL/SQLの特徴
� PL/SQLをベースとしたアプリケーション開発
� ストアドプロシージャ実行による動的ページ作成� PL/SQL ToolkitによるOAS PL/SQL Cartridgeとの
互換性� PL/SQL Server Pages (PSP)
– HTMLへのPL/SQLの埋め込み
– HTMLデザインとビジネスロジックの分離
PL/SQLアプリケーション・サンプル
create or replace procedure samplebegin
htp.p(‘<HTML>’);htp.p(‘<HEAD>’);htp.p(‘<TITLE>SAMPLE<TITLE>’);htp.p(‘</HEAD>’);htp.p(‘<BODY>’);htp.p(‘Hello World’);htp.p(‘</BODY>’);htp.p(‘</HTML>’);
end;/
� HTMLタグに対応した、PL/SQL Web Toolkit パッケージを呼び出し、HTMLを作成
PSPアプリケーション・サンプル
<@% page language="PL/SQL" %><%@ plsql procedure="show_catalog_simple" %><HTML><HEAD><TITLE>Show Contents of Catalog (Complete Dump)</TITLE></HEAD><BODY><% declare dummy boolean; begin dummy := owa_util.tableprint('catalog','border'); end;%></BODY></HTML>
� HTMLの中にPL/SQLを埋め込む� PSP CompilerによりPSPファイルをコンパイル
– loadpsp [-replace] -user <logon> [<page1> <page2> ...]
Servlet
OracleHTTPServer
Servletエンジン
Servlet AP
Java実行環境ブラウザ
HTTPクライアントから利用するサーバサイドJAVAの実装
Request
Response
HTTP
Servletの特徴
� プラットフォーム非依存� HTTPサーバ・アプリケーションサーバー非依存� Javaで記述→Javaの様々な仕組みを利用可能
– JDBCの利用– JSP、EJBの呼び出し
� マルチスレッドで動作– CGIに比べて性能を大幅に向上
� セッション管理機能
Servletアプリケーション・サンプル
import java.io.*;import javax.servlet.*;import javax.servlet.http.*;
public class Hello extends HttpServlet{ public void doGet (HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { PrintWriter out; response.setContentType("text/html"); out = response.getWriter(); out.println("<HTML><BODY>"); out.println("<H1>Hello World</H1>"); out.println("</BODY></HTML>"); out.close(); }}
JavaServer Pages (JSP)
OracleHTTPServer
Java実行環境ブラウザ
HTMLにJavaプログラムを埋め込んで開発を行える技術
Request
Response
HTTP JSPファイル
Servletエンジン
Oracle JSP
Servlet AP
JSPの特徴
� HTMLデザインとビジネスロジックの分離– HTMLにJavaを埋め込むことが可能
� 初回の呼び出し時に自動的にコンパイル– Servlet変換後Javaクラスにコンパイル
– 2回目以降の呼び出しはコンパイル済みのコードが実行される
– JSPが変更された場合は、自動的に再度コンパイルされて実行させることが可能
� JavaBeansの利用が可能
namenameオブジェクトオブジェクト
JSPアプリケーション・サンプル
<%@page session="false" %>
<jsp:useBean id="name" class="oracle.jsp.jml.JmlString" scope="request" >
<jsp:setProperty name="name" property="value" param="newName" />
</jsp:useBean>
<HTML>
<BODY>
<% if (!name.isEmpty()) { %>
<H3>Welcome <%= name.getValue() %></H3>
<% } %>
<P>
</BODY>
</HTML>
getValue()
scottscott
Enterprise JavaBeans (EJB)
Javaを利用したビジネスロジックのコンポーネント化技術
EJB AEJB A
EJB BEJB B
EJB CEJB C
EJB DEJB D
ServletServlet
EJB AEJB A
EJB BEJB B
EJB CEJB C
EJBの特徴
� ビジネスロジックを集中管理– 保守性を高める
� 共通のビジネスロジック実装方法を提供– 再利用性を高める
� ネットワークに分散されたビジネスロジックを統合� ビジネスロジックを効率よく実装
– システムレベルのプログラミングが不要� EJBサーバーがサービスとして提供� Transaction, Lifecycle, Security, Persistence...
� OSやEJBサーバーに非依存
� 静的ページだけでなく、Servlet/JSPなどで生成される動的ページもキャッシュ(H/W Cacheでは不可)
� CGI、PL/SQL、JavaなどあらゆるWebアプリケーションから生成された情報をキャッシュ(オープン/導入の容易さ)
� データベースの内容更新に合わせて、キャッシュの有効期間を管理(OracleDBと高度に連携)
OracleWeb Cache
OracleOracleWeb CacheWeb Cache
ビジネスビジネスロジックロジック
Oracle9iAS WebCache
データベース・サーバー
アプリケーション
ブラウザ
クライアント
Oracle iAS SE or EE
PL/SQL
EJB
CORBA
トリガー
(Servlet, JSP
, PL/SQL, …)
アプリケーション
Oracle iAS SE or EE
(Servlet, JSP
, PL/SQL, …)
表の変更により無効となったURLを伝達(HTTP/XML)しキャッシュの有効期間を管理
Oracle iASEE
OracleWeb
CacheOracle
HTTP Server
Oracle
HTTP Server
Oracle9iAS WebCache
Oracle9iAS WebCache 構成例
Browser
OracleOracleHTTPHTTPServerServer
ApacheApacheJservJserv
99iASiAS SE SE
OracleOracleHTTPHTTPServerServer
ApacheApacheJservJserv
99iASiAS SE SE
LoadBalancer
(HyperFlow etc)
OracleOracle DB DB99iASiAS EE EE
WebWebCacheCache
Pentium III 2CPUのサーバーでWebCacheを実装したサーバー
単位 (リクエスト数 / 秒)
平均的なWeb Serverにおける1台当たりのパフォーマンス
50
7500
Oracle9iAS WebCache
� ASP/IDCモデルに最適、既存のWebシステムの高速化
� ECサイトなどのコンテンツ参照の多いサイトにも最適
� 単純に実装するだけで、約150倍の性能向上を達成
DatabaseDatabaseCacheCache
キャッシュキャッシュ
ビジネスビジネスロジックロジック
� アプリケーション・サーバー層にてデータベース・キャッシュを実装、高速に処理!!
� システム全体(DB層+中間層)での最適な構成が可能
� Price Performanceの向上
キャッシュされていない場合キャッシュされていない場合
キャ
ッシ
ュさ
れて
キャ
ッシ
ュさ
れて
いる
場合
いる
場合
Oracle9iAS Database Cache
データベース・サーバー
Oracle8i PL/SQL
Oracle8i JVM
EJBCORBA
EJBCORBA
ストアドプロシージャ
ストアドプロシージャ
ミドルティア・サーバー
mod_perl
スナップショットによるスナップショットによるデータの同期データの同期
(一定間隔(一定間隔 oror DB DB更新時)更新時)
DML/DDL文及び表がキャッシュされて
いない場合
PerlPerl
Apache
JServ
JSPJSPServletServlet
ブラウザ
SELECT文
SQL実行エンジン
クライアント
Oracle 9iAS EE
Ora
cle
HT
TP
Ser
ver
DatabaseCache
Oracle9iAS Database Cache
� Javaのビジネスロジックを、中間層だけで高速に処理
Oracle Portalによる統合
完全にパーソナライズされたビュー
既存の情報・アプリケーション既存の情報・アプリケーション
社員検索・ワークフロー・顧客管理・社員検索・ワークフロー・顧客管理・タスク管理・経費清算・在庫管理・タスク管理・経費清算・在庫管理・社内サイト・スケジュール・メール・社内サイト・スケジュール・メール・......
ニュース・株価・お天気・サーチ・チャット・オークション・ニュース・株価・お天気・サーチ・チャット・オークション・……
Oracle iAS + Oracle8i
ERPERP・・CRMCRM
インターネット・コンテンツインターネット・コンテンツ
Oracle E-Business SuiteOracle E-Business Suite
WebWebアダプタアダプタ
RDBMSRDBMSアダプタアダプタ
カスタムカスタムアダプタアダプタ
XMLXML
XMLXML
DDI/IDODDI/IDO用用トランスフォーマトランスフォーマ
J-PHONEJ-PHONE用用トランスフォーマトランスフォーマ
VoiceVoiceトランスフォーマトランスフォーマ
Portal-to-Go Portal-to-Go ~~Wireless Wireless FlameworkFlamework ~~
XMLXML
MMLMML
VoxMLVoxML
HDMLHDML
iiモード用モード用トランスフォーマトランスフォーマ
CHTMLCHTML
WebWeb
DBDB
Any SourceAny Source
トランスフォーマトランスフォーマPalmPalm用用
HTMLHTML
Post processorPost processor
•• Oracle XML Parser Oracle XML Parser•• XSL XSL•• JSP JSP•• Other Other
JobJobSchedulerScheduler
NotificationNotificationEngineEngine
Oracle iAS Wireless Edition
ユーザーユーザーメニューメニュー
++ルールルール
Oracle HTTP ServerOracle HTTP ServerApache JServApache JServOracle JSPOracle JSP
C/Sアプリケーション
Webアプリケーションブラウザ
Developerで開発
配布
配布
Developerランタイム
JavaJavaアプレットアプレット//HTMLHTMLファイルファイル
ビジネス・アプリケーションの展開Developer Serverによるアプリケーションの統合
� C/SシステムからWebシステムまで共通の4GLで開発されたアプリケーション実行環境の統合
Developer ServerDeveloper Serverを統合を統合
Web
WebDB
Reports Server
BrowserBrowser
定型帳票のWeb配信
非定型問合わせレポーティング
ビジネス・インテリジェンスの実践Reports Server/Discoverer Viewerの統合
Discoverer Viewer
R1.0
SE
9月27日
9月27日
9月27日
9月27日
9月27日
9月27日
R1.0.2
SE,EE
2001年1月22日
2001年1月25日
2001年1月25日
2001年1月25日
2001年2月下旬
2001年2月下旬
R1.0.2
WE
2001年4月下旬
2001年4月下旬
2001年4月下旬
2001年4月下旬
2001年4月下旬
2001年4月下旬
リリース
Edition
プラットフォーム
Sun SPARC Solaris
HP-UX
IBM AIX
Compaq Tru64 UNIX
Windows NT/2000
Linux
リリース
Edition
プラットフォーム
Sun SPARC Solaris
HP-UX
IBM AIX
Compaq Tru64 UNIX
Windows NT/2000
Linux
R1.0.2.1
SE,EE,WE
2001年4月
2001年4~5月
2001年4~5月
2001年4~5月
2001年5月
2001年5月
Web Cacheは2月下旬からサポート開始
Database Cache,Portalなどサポート開始
製品出荷/サポートスケジュール
Internet Developer Suite等の利用
� PL/SQL– Oracle Designer6i(IDS)
– Oracle Portal / KeyWebCreator
� Java– Oracle JDeveloper(IDS)
� その他– Oracle Developer6i(IDS)
モジュールの構成
モジュール・コンポーネント1つの基礎表と複数の参照表から構成されるコンポーネント
マスターブロック
ディテールブロック
参照表基礎表の親表データの参照のみ可能
基礎表挿入・更新・削除を行う対象となる表
リレーション結合
モジュール・リンク複数モジュール間の連結
Personal Enquiry SystemWelcome to the personal enquiry system. ・About Page ・Job Grades ・Job Opportunities
EmployeesPlease enter query:
ID :
Name :
Department :
Find Clear
起動ページ起動ページ
問合せフォーム問合せフォーム
基本構成
バージョン情報ページバージョン情報ページ
About Personal Enquiry System
This application was generated by PL/SQL Web GeneratorVersion 6.5.9.0.0
WebServer Generator Library 6.5.8.0.0Current User DEMOPL/SQL 8.1.5.0.0 ProductionOracle WebServer Oracle_Web_Listener/1.0.7.1 Enterprize EditionWeb Browser Mozilla/4.61[en] (Win NT;I)Repository Application System Personal Enquiry SystemRepository Module Personal Enquiry
EmployeesSelect the employee of interest :
EmpNo Name Department
1000 Scott Develop
2000 Tiger Develop
3000 Sugi Marketing
4000 Kawamoto Sales
5000 Oguri Sales Engineer
Record 1 to 5
EmployeesSelect the employee of interest :
EmpNo Name Department
1000 Scott Develop
2000 Tiger Develop
3000 Sugi Marketing
4000 Kawamoto Sales
5000 Oguri Sales Engineer
Record 1 to 5
First Next Previous Last NewRequery
レコードリストレコードリスト
EmployeesScott
ID :
Name :
Job :
Salary :
RevertUpdate Delete New
EmployeesScott
ID : 1000
Name : Scott
Job : Transration
Salary : 8,000,000
表示フォーム表示フォーム
DeleteScott
Please confirm delete.
Delete 削除確認ページ削除確認ページ
Enter New Employee :Scott
ID :
Name :
Job :
Salary :
ClearInsert
挿入フォーム挿入フォーム
起動ページ� Web PL/SQLモジュールの
先頭ページ
� モジュールのバージョン情報 (バージョン情報ページ)
� モジュールの内容– 内容紹介のテキスト
– モジュール・コンポーネントとのハイパーリンク
– 他のモジュールとの ハイパーリンク
� 問合せフォームの表示
� 生成単位: モジュール
Personal Enquiry SystemWelcome to the personal enquiry system. ・About Page ・Job Grades ・Job Opportunities
EmployeesPlease enter query:
ID :
Name :
Department :
Find Clear
起動ページ起動ページ
問合せフォーム問合せフォーム
バージョン情報ページバージョン情報ページ
About Personal Enquiry System
This application was generated by PL/SQL Web GeneratorVersion 6.5.9.0.0
WebServer Generator Library 6.5.8.0.0Current User DEMOPL/SQL 8.1.5.0.0 ProductionOracle WebServer Oracle_Web_Listener/1.0.7.1 Enterprize EditionWeb Browser Mozilla/4.61[en] (Win NT;I)Repository Application System Personal Enquiry SystemRepository Module Personal Enquiry
Personal Enquiry SystemWelcome to the personal enquiry system. ・About Page ・Job Grades ・Job Opportunities
EmployeesPlease enter query:
ID : Name : Department :
Find Clear
起動ページ起動ページ
問合せフォーム問合せフォーム
問合せフォーム
� 生成単位: モジュール・コンポーネン
ト
� 検索条件を入力し、問合せを実行するようなフォーム
� 起動ページとの分離が可能
� 省略可能– 問合せを許可しない
– 自動問合せ
EmployeesSelect the employee of interest :
EmpNo Name Department
1000 Scott Develop
2000 Tiger Develop
3000 Sugi Marketing
4000 Kawamoto Sales
5000 Oguri Sales Engineer
Record 1 to 5
レコード・リスト
� 生成単位: モジュール・コンポーネン
ト
� 問合せの結果レコードを表示
– HTML表
– 順序番号付きリスト
– 黒丸付きリスト
レコードリストレコードリスト
First Next Previous Last NewRequery
EmployeesSelect the employee of interest :
EmpNo Name Department
1000 Scott Develop
2000 Tiger Develop
3000 Sugi Marketing
4000 Kawamoto Sales
5000 Oguri Sales Engineer
Record 1 to 5
表示・削除・挿入フォーム
EmployeesScott
ID :
Name :
Job :
Salary :RevertUpdate Delete New
EmployeesScott
ID : 1000
Name : Scott
Job : Transration
Salary : 8,000,000
表示フォーム表示フォーム
DeleteScott
Please confirm delete.
Delete
削除確認ページ削除確認ページ(削除フォーム)(削除フォーム)
Enter New Employee :Scott
ID :
Name :
Job :
Salary :
ClearInsert
挿入フォーム挿入フォーム
� 生成単位: モジュール・コンポーネン
ト
� 選択されたレコードの完全な詳細を表示
� レコードの変更– 更新
– 削除
– 挿入
� 表示は任意
3つのレイアウト・スタイル
レイアウト・スタイルレイアウト・スタイル 表示形式表示形式 選別の指針選別の指針
リストリストリスト
フォームフォームフォーム
リスト/フォームリストリスト//フォームフォーム
問合せフォーム /レコード・リスト/表示フォームをそれぞれ別々に表示
問合せフォーム/レコード・リスト/表示フォームをフレームを用いて同一ページに表示可能
レコード・リストは作成されない
表示情報が大量にある場合
読み取り専用情報を表示する場合にのみ選択
各フレームの内容を小領域で効率的に表示する場合
4GL RAD開発ツール
Oracle DeveloperGUI、宣言型開発
3GL(C, Java, Perl...)
すべてコーディング
private void initComponents () { addWindowListener (new java.awt.event.WindowAdapter () { public void windowClosing (java.awt.event.WindowEvent evt) { exitForm (evt); } } ); getContentPane ().setLayout (new java.awt.BorderLayout ()); tmrSeconds = new com.ora.timerbean.Timer (); tmrSeconds.addTimerListener (new com.ora.timerbean.TimerListener() { public void onTime (java.awt.event.ActionEvent evt) { tmrSecondsOnTime (evt); } } );
直感的に素早く開発
デフォルト生成機能
やり直し可能なウィザードForms� 値リスト、データブロック、レイアウト
Reports� レポート、Web、データモデル、、、
データセントリックな開発アプローチ–データ・オブジェクトを中心に–データモデルの定義
データを操作するのに、、、
通常の開発ツールでは操作ごとにプログラミングSELECT rowid, deptno, dname, locFROM deptWHERE rowid = ‘000012C1.0001.0001’AND deptno = 30AND dname = ‘Sales’AND loc = ‘Chicago’
FOR UPDATE OF deptno, dname, locNOWAIT ;
UPDATE dept SETdeptno = 30, dname = ‘Consulting’, loc =‘Chicago’WHERE rowid = ‘000012C1.0001.0001’ ;
SELECT rowid, deptno, dname, locFROM deptWHERE rowid = ‘000012C1.0001.0001’AND deptno = 30AND dname = ‘Sales’AND loc = ‘Chicago’
FOR UPDATE OF deptno, dname, locNOWAIT ;
UPDATE dept SETdeptno = 30, dname = ‘Consulting’, loc =‘Chicago’WHERE rowid = ‘000012C1.0001.0001’ ;
–排他制御–問合せ–更新 etc...
このような頻繁にある操作でもその都度SQLをDBに発行
問合せ
排他制御
更新
Oracle Developerアプリケーションはデータベースの操作を自動的に行います。機能を変更する場合も、プロパティを変更するだけです。
Oracle Developerアプリケーションはデータベースの操作を自動的に行います。機能を変更する場合も、プロパティを変更するだけです。
–排他制御–問合せ–更新 etc...
このような操作で開発者はプログラミングする必要ははありません
プログラミングを最低限に
C/Sとインターネットで同一モジュール
Oracle8
C/Sアプリケーション
Webアプリケーション
Webブラウザ
開発したアプリケーションファイル
配布
配布
Developerランタイム
Javaアプレット/HTMLファイル
Developer ServerForms ServerReports Server
Net8
Net8
HTTP
まったく同一の実行ファイル
ソースファイル
プラットフォーム間共通モジュール
配布
コンパイル
アプリケーションファイル
C/S-Internet → 同一ファイル
Developer Server
UNIX
Developer Server
Windows NT
C/S(Developer Runtime)アプリケーションファイル
プラットフォーム間 → 共通ソースファイル ソースファイル
コンパイル
アプリケーションファイル
Oracle JDeveloperの開発サイクル
開発開発
テスト・デバッグテスト・デバッグ
配布配布
配布プロファイルに配布プロファイルによる自動化よる自動化•• Oracle8Oracle8ii JVM JVM•• Oracle Oracle iiASAS•• Apache Apache JServ JServ•• Tomcat Tomcat
•• コード生成ウィザードコード生成ウィザード•• 2- 2-WayWayテクノロジテクノロジ•• JDKJDKスイッチングスイッチング•• Oracle JDBCOracle JDBCドライバドライバ•• SQLJSQLJのビルトインのビルトイン•• Business ComponentsBusiness Componentsfor Javafor Java•• XML, XSL, XSQL XML, XSL, XSQL
•• JDeveloperJDeveloperにビルトインされたにビルトインされたWebWebサーバーによるサーブレットサーバーによるサーブレット//JSPJSPののテスト・デバッグテスト・デバッグ
•• リモート・デバッグリモート・デバッグ Oracle8Oracle8ii JVM, Oracle JVM, Oracle iiASAS, ..., ...
•• BC4J BC4Jテスターテスター
Business Components for Java� JavaとXMLによる、ビジネス・アプリケーションを
構築するためのフレームワーク– Java: ビジネス・ルールの実装– XML: アプリケーションのメタ・データを記述 JDeveloperのウィザードにより、生成・編集
� 論理3階層で構成されるアプリケーションを構築– ユーザー・インターフェース(HTML, XML, Java)
– ビジネス・コンポーネント(ビジネス・ロジック)– アプリケーション・データ(DBに格納されたデータ)
ビジネス・コンポーネント
� DBアクセスのためのロジックをカプセル化– Java-DB間におけるデータ型の自動マッピング– JDBCやSQLJを用いたコーディングは不要
� プラットフォームに依存しないコンポーネント– ユーザー・インターフェースとの完全な分離– Write Once, Deploy Everywhere� ローカル・モードで実行(UIと同一Java VM上で実行)� Enterprise JavaBeansとして実行
Oracle8i JVM / 各種EJBサーバー� CORBAオブジェクトとして実行
Oracle8i JVM / VisiBroker対応 CORBAサーバー
ユーザーユーザーインターフェースインターフェース
•• エンティティ・オブジェクトエンティティ・オブジェクト
•• ビュー・オブジェクトビュー・オブジェクト
•• アプリケーション・モジュールアプリケーション・モジュール
ビジネス・コンポーネントビジネス・コンポーネント
ビジネス・コンポーネント
ビューオブジェクト
エンティティオブジェクト
エンティティオブジェクト
ビューオブジェクト
ビューオブジェクト
アプリケーション・モジュールアプリケーション・モジュール
� DBオブジェクトをJavaにマッピング� 問合せ結果をキャッシュ� ビジネス・ルールの実装
� エンド・ユーザーに対するデータの見せ方を定義
� データ・モデルの定義� DBトランザクション、
セッションの管理
アプリケーションアプリケーションデータデータ
ユーザー・インターフェース
� Webベースのユーザー・インターフェース– ビジネス・コンポーネントJSPアプリケーション・ウィザード
– Web Beanウィザード� HTML/XMLドキュメントの生成
� Javaフォーム・ベースのユーザー・インターフェース– ビジネス・コンポーネント・データ・フォーム・ウィザード� アプリケーション、フレーム、Appletを作成
– データベース対応コントロール� Swingをベースに作成したJavaBeans
Write Once, Deploy Everywhere
アプリケーションアプリケーションデータデータ
ビジネスビジネスコンポーネントコンポーネント
ユーザーユーザーインターフェースインターフェース
クライアント
Webサーバー
Appサーバー
DBサーバー
論理階層論理階層
物理階層
物理階層
ApplicationApplicationor Appletor Applet
ServletServletor JSPor JSP
ローカルローカルモードモード
ローカルローカルモードモード
EJB/EJB/CORBACORBA
EJB/EJB/CORBACORBA
OracleOracle
Business Components for Javaのメリット
� DBアクセスのためのコーディングが不要
� ビジネス・ルールのためのコーディングを単純化
� アプリケーションのコードとメタ・データが分離されているため、カスタマイズが簡単� EJBまたはCORBAオブジェクトとして各種アプリ
ケーション・サーバーに配布可能� テスト用のU/Iを提供
– Business Components Browser
JDeveloperによるWebアプリケーション開発� 各種ウィザードの提供:スケルトンの生成
– HTTPサーブレット・ウィザード
– JSPエレメント・ウィザード
– Web Beanウィザード
– ビジネス・コンポーネントJSPアプリケーション・ウィザード
� Servlet/JSPのテストとデバッグ– JDeveloperのIDE内でのServlet/JSPのテスト実行
– リモート・デバッグ
� Webアプリケーションの配布
� Oracle XDKとの緊密な統合
Developer DEMOby ScreenCam
Developer のデモが入ります。ScreenCam で再生します。3min流れ -アプリケーションは「社員表の一覧/管理」(共通) -C/Sプログラムを実行、Web化、Javaで実行
Designer DEMOby ScreenCam
Desinger のデモが入ります。ScreenCam で再生します。2min流れ -データベース中のテーブル設計を閲覧 -PL/SQLアプリケーションとして生成 -アプリケーションは「社員表の一覧/管理」(共通)
KeyWeb Creator DEMOby ScreenCam
KeyWeb Creator のデモが入ります。ScreenCam で再生します。3min流れ -ウィザードでアプリケーションを作成 -アプリケーションは「社員表の一覧/管理」(共通)
Oracle Portal DEMOby ScreenCam
Oracle Portal のデモが入ります。ScreenCam で再生します。3min流れ -データベース中のテーブルを閲覧 -Webアプリケーションの構築ステップ -アプリケーションは「社員表の一覧/管理」(共通) -作成された画面を他の画面と組み合わせてポータル化 -パーソナライズ画面を表示
JDeveloper DEMOby ScreenCam
JDeveloper のデモが入ります。ScreenCam で再生します。4min流れ -Wizardでプロジェクトを新規作成 -Wizardでビジネスコンポーネントを作成 -ビジネスコンポーネントをテスト -ビジネスコンポーネントを使用したJSPを作成 -Webブラウザを使用して、JSPアプリケーションを実行 -アプリケーションは「社員表の一覧/管理」(共通)
WebCache DEMOby ScreenCam
WebCache のデモが入ります。ScreenCam で再生します。2min流れ -WebCacheの設定画面を表示 -実際のアプリケーションの性能差を表現 -キャッシュ性能測定を実施、性能差を表現 -アプリケーションは「社員表の一覧/管理」(共通)