oracle9 application server - oracle tech network jpotn.oracle.co.jp/event/ows/c1.pdf · oracle ias...

66

Upload: others

Post on 23-Apr-2020

28 views

Category:

Documents


0 download

TRANSCRIPT

Oracle9i Application ServerとInternet Developer Suiteによる

システム構築

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 iASによるEnterprise Information Portal

C/S的管理

BookMark 管理

Portalサイト

完全なポータル

これからのPortalの基本

Portal画面のパーソナライズ

� Webブラウザ・インタフェースを使用して自分専用のページを定義

– アクセスの許可された情報・アプリケーションのリストより必要なものをページ上に自由に配置

Oracle Portalによる統合

完全にパーソナライズされたビュー

既存の情報・アプリケーション既存の情報・アプリケーション

社員検索・ワークフロー・顧客管理・社員検索・ワークフロー・顧客管理・タスク管理・経費清算・在庫管理・タスク管理・経費清算・在庫管理・社内サイト・スケジュール・メール・社内サイト・スケジュール・メール・......

ニュース・株価・お天気・サーチ・チャット・オークション・ニュース・株価・お天気・サーチ・チャット・オークション・……

Oracle iAS + Oracle8i

ERPERP・・CRMCRM

インターネット・コンテンツインターネット・コンテンツ

Oracle E-Business SuiteOracle E-Business Suite

モバイル・アクセスの実現~ Any Data to Any Device ~� コンテンツを、様々な携帯電話・携帯情報端末に

対応した形式に自動変換

OraclePortal-to-Go

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)

Oracle DesignerによるHTMLアプリケーション

モジュールの構成

モジュール・コンポーネント1つの基礎表と複数の参照表から構成されるコンポーネント

マスターブロック

ディテールブロック

参照表基礎表の親表データの参照のみ可能

基礎表挿入・更新・削除を行う対象となる表

リレーション結合

モジュール・リンク複数モジュール間の連結

Oracle DesignerによるHTMLアプリケーション

� 生成されるHTML文書の基本構成

� 更新系処理

� エラー制御� ‘6i’の新機能

� セキュリティ

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); } } );

直感的に素早く開発

インターネットアプリケーションの4GL

4GL開発ツールで設計したリッチなUIがそのままブラウザ上で再現されます

デフォルト生成機能

やり直し可能なウィザード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によるWebアプリケーション

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の設定画面を表示 -実際のアプリケーションの性能差を表現 -キャッシュ性能測定を実施、性能差を表現 -アプリケーションは「社員表の一覧/管理」(共通)