この章ではOracle Formsについて説明します。Oracle Formsの開発およびデプロイメント環境の概要を説明し、Oracle Fusion Middlewareの関連するコンポーネントの詳しい情報を記述したリファレンスを提供します。
この章には、次の項が含まれています。
Oracle FormsはOracle Fusion Middlewareのコンポーネントです。Oracle Formsを使用してFormsアプリケーションを開発および配布します。Formsアプリケーションは、効率的かつ密接に連結してOracle Databaseにアクセスするためのユーザー・インタフェースを提供します。JavaとWebのサービスにアプリケーションを統合して、サービス指向アーキテクチャ(SOA)を活用できます。
Oracle Formsは、次の内容で構成されています。
Oracle Forms Developer: Formsアプリケーションの開発とコンパイルに使用します。
Oracle Forms Services: アプリケーションの配布に使用するサーバー・コンポーネントです。
Oracle Forms Developerは、Oracle Databaseにアクセスしてデータを提供できるフォームの開発に使用します。アプリケーションの迅速な開発を実現するウィザードとユーティリティが用意されています。ソース形式(*.fmb)を作成し、実行可能ファイル(*.fmx)にコンパイルします。Formsアプリケーションは、Formsランタイム・プロセスで実行(解釈)されます。
Oracle Forms Developerの詳細は次のドキュメントを参照してください。
Oracle Forms Builderのオンライン・ヘルプ: Oracle Forms Builderで利用できます。Oracle Forms Developerを使用してFormsアプリケーションを開発、コンパイルする方法に関する情報が得られます。
Oracle Forms 6iからOracle Forms 11gへのアップグレード: Oracle Forms Developerの非推奨となった機能と、Formsアプリケーションのアップグレード手順について説明しています。
Oracle Forms Servicesは、Formsアプリケーションを複数層環境に配布するために最適化された包括的なアプリケーション・フレームワークです。Webの使用やアクセスが簡単なことを利用し、Webに単なる静的な情報公開メカニズムを超えた、複雑で動的なアプリケーションをサポートできる環境としての機能を与えます。
Oracle Forms Developerで設計、開発したFormsアプリケーションは、Oracle Fusion Middlewareに配布されます。これらのアプリケーションは中間層で動作します(図1-2を参照)。ユーザー・インタフェースは、クライアントのブラウザで表示するJavaアプレットとしてクライアント層に置かれます。
このガイドでは、構成ファイルと、Formsアプリケーションの配布をカスタマイズするために使用できる環境変数について説明します。また、パフォーマンス、ロギング、および配布の監視についても取り上げます。Oracle Fusion MiddlewareのEnterprise Manager Controlを使用して、構成ファイルと環境変数の管理および配布の監視が可能です。
ユーザーが最初にOracle Formsアプリケーションを起動すると(アプリケーションのURLへのリンクをクリックすることで)、ベースHTMLファイルがFormsサーブレットによって読み取られます。ベースHTMLファイル内の変数(%variablename%)は、formsweb.cfg
ファイルに指定された適切なパラメータ値によって置換され、URLリクエストがある場合はその問合せパラメータの値によって置換されます。
要件に応じて、Oracle Enterprise Manager Fusion Middleware Controlで構成ファイルを簡単に変更できます。Enterprise Managerを含まないOracle Formsインストールでは、構成ファイルを手動で更新することもできます。第1.6項「Oracle Forms Servicesのアーキテクチャ」では、一般的なFormsアプリケーションの配布および実行に関連するプロセスについて説明します。
Oracle Databaseは、RDBMSの最新バージョンです。Oracle Real Application Clustersの無限のスケーラビリティと業界随一の信頼性、スタンバイ・データベース・テクノロジの利点を採り入れた新しい高可用性テクノロジ(Oracle Data Guard)、ビルトインOLAP、データ・マイニング機能、抽出、変換およびロード(ETL)機能など数多くの最新機能が盛り込まれています。
Oracle Databaseの詳細は、http://www.oracle.com/technetwork/indexes/documentation/index.html
を参照してください。
Oracle WebLogic Server 11g リリース1は、稼働コストの低減、パフォーマンスの向上およびOracleアプリケーション群のサポートのための新しい機能を支援するエンタープライズJava EEアプリケーションの構築と配布を目的としたアプリケーション・サーバーです。
作成するのがステージング環境、本番環境またはテスト環境のいずれであっても、最初にWebLogicドメインを作成します。WebLogicドメインには、WebLogic Serverのインスタンスが含まれ、その1つが管理サーバーとして構成されます。管理サーバーは、ドメインの構成データを保持します。管理サーバーにアプリケーションをデプロイできますが、管理対象サーバーを作成して、管理対象サーバーにアプリケーションをデプロイすることをお薦めします。Oracle WebLogic Serverの詳細は、『Oracle Fusion Middleware Oracle WebLogic Serverの紹介』を参照してください。
デプロイ・モードでは、構成の作業中に、Formsの管理対象サーバーが作成されます(WLS_FORMS)。WLS_FORMSの詳細は、第5.1項「Oracle WebLogic管理対象サーバーについて」を参照してください
Oracle Fusion Middlewareは、Webサーバー、アプリケーション・サーバー、コンテンツ管理システムで構成されるほか、ソフトウェア・アプリケーションの開発、配布および管理を全面的にサポートする各種開発者向けツールを備えています。コンポーネントとしてOracle Forms Services、Oracle WebLogic ServerおよびOracle Enterprise Manager Fusion Middleware Controlがあり、ともにインターネット・コンピューティングの利点を最大限に実現するテクノロジを提供します。
Oracle Formsは、Oracle Enterprise Manager Fusion Middleware Controlを使用して管理および監視できます。
Oracle Fusion Middlewareの総合的な概要、コンポーネントのリストおよび概念的な情報は、次のマニュアルを参照してください。
Oracle Fusion Middlewareコンセプト・ガイド
Oracle Fusion Middleware管理者ガイド
インストーラでは、これらの製品をすべて構成できるほか、そのうちのいくつかを選択して構成することもできます。Oracle Formsのインストールの詳細は、次のガイドを参照してください。
Oracle Fusion Middlewareインストレーション・プランニング・ガイド
Oracle Fusion Middleware Oracle Portal, Forms, Reports and Discovererインストレーション・ガイド
Oracle Fusion Middleware Oracle Portal, Forms, Reports and Discovererクイック・インストレーション・ガイド
アップグレードの詳細は、次のドキュメントを参照してください。
Oracle Fusion Middlewareアップグレード・プランニング・ガイド
Oracle Fusion Middleware Oracle Portal, Forms, Reports and Discovererアップグレード・ガイド
Forms 6iからOracle Forms 11gへのアップグレードの詳細は、第13章「Oracle Forms Services 11gへのアップグレード」を参照してください
変更された機能または非推奨となった機能については、『Oracle Forms Oracle Forms 6iからOracle Forms 11gへのアップグレード』を参照してください。
ノート: 「デプロイメント」インストール・オプションを使用してOracle Formsをインストールした場合、次のオプションを使用してRAMを開発専用環境に保存できます。
|
図1-1に、Forms Servicesを構成する3層アーキテクチャを示します。
図の最上部に示されているクライアント層には、アプリケーションを表示するWebブラウザが含まれます。このブラウザのほか、Java Runtime Environment (JRE)とJava Plug-In (JPI)が必要です。詳細は、付録B「Java Plug-inの構成」およびhttp://www.oracle.com/technetwork/java/index-jsp-142903.html#documentation
を参照してください。
図の中央に示されている中間層は、アプリケーション・ロジックとサーバー・ソフトウェアが格納されるアプリケーション・サーバーです。
Oracle Forms Servicesは、複雑なトランザクション型のFormsアプリケーションをイントラネットやインターネットなどのネットワーク上に配布する、中間層のアプリケーション・フレームワークです。開発者は、Forms Developerを使用してFormsアプリケーションを作成し、Forms Servicesを使用して作成したアプリケーションを配布します。また、開発者は従来のクライアント/サーバー型アプリケーションを、3層のアーキテクチャに移行することもできます。3層アーキテクチャへの移行では、アプリケーション・コードの小規模な変更が必要になることもあります。
図1-2に示すとおり、フォームを実行するための3層構成は次の内容で構成されています。
図の最上部に示されているクライアントは、クライアント層に常駐します。
Formsリスナー・サーブレットは、JavaクライアントとFormsランタイム・プロセス間でブローカとしての役割を果たします。これは、Javaクライアント・プロセスから接続リクエストを受け取ると、Javaクライアント・プロセスにかわってFormsランタイム・プロセスを開始します。
図1-3は、クライアントがHTTPリクエストを送信し、Forms ServicesからHTTPレスポンスを受信する仕組みを示しています。Oracle Forms ServicesはFormsリスナー・サーブレットを使用して、Formsランタイム・プロセスの開始と終了、Formsランタイム・プロセスとの通信を行います。この図では、クライアントは左側に示されています。図の中央に示されているHTTPリスナーは、クライアントのネットワーク・エンドポイントとしての役割を果たし、他のサーバー・マシンやポートがファイアウォールで公開されないようにします。
図の右側に示されているFormsランタイム・プロセスは、特定のFormsアプリケーションに含まれているコードを実行します。Formsリスナー・サーブレットは、クライアントごとにFormsランタイム・プロセスの生成を管理し、クライアントとそれに対応するFormsランタイム・プロセス間のネットワーク通信を管理します。
ノート: Formsリスナー・サーブレットは、Oracle Fusion Middlewareのインストール・プロセスで構成されます。 |
Formsランタイム・プロセスは次の2つの役割を果たします。クライアント・ブラウザと通信する場合は、クライアント・ブラウザからのリクエストを処理するサーバーとしての役割を果たし、メタデータをクライアントに送信してユーザー・インタフェースを伝えます。データベース・サーバーと通信する場合は、リクエストされたデータをデータベースに問い合せるクライアントとしての役割を果たします。
アプリケーション・サーバーには、Oracle Formsセッションごとに1つのOracle Formsランタイム・プロセスが存在します。Oracle Formsは実際にはこのプロセスで実行され、アプリケーション・ロジックと処理はこのプロセスにより管理されます。また、これは、データベース接続の管理、データの問合せと更新、フォーム内の任意のPL/SQLの実行、トリガーの実行なども行います。クライアント/サーバー・モードで実行するのに使用されたのと同じフォーム、メニューおよびライブラリ・ファイルを使用します。
Formsランタイム・プロセスには、アプリケーションでJavaを実行するためのJava仮想マシン(JVM)も含まれています。最適化のために、このJVMはFormsアプリケーションでJava Importerが使用される場合に起動します。10gでJVMプーリング機能を使用するのはJava Importerのみです。11gでは、Formsランタイム・プロセスがReportsをコールするときに別のJVMを作成することはなくなりました。かわりに、フォームにJVMコントローラを構成しておくと、そのフォームはReportsをコールするときに共有JVMを使用できます。これにより、メモリー消費を削減できるので、サーバーではより多くのリソースを解放できます。JVMの使用とプーリングの管理の詳細は、「Java仮想マシンの構成と管理」を参照してください