概要

この章ではOracle Formsについて説明します。Oracle Formsの開発およびデプロイメント環境の概要を説明し、Oracle Fusion Middlewareの関連するコンポーネントの詳しい情報を記述したリファレンスを提供します。また、Forms Servicesにおける機能および改善点の参照先も示します。

この章の構成は、次のとおりです。

Oracle Forms

Oracle FormsはOracle Fusion Middlewareのコンポーネントです。Formsアプリケーションを開発およびデプロイするには、Oracle Formsが使用されます。

Formsアプリケーションは、効率的かつ密接に連結してOracle Databaseにアクセスするためのユーザー・インタフェースを提供します。JavaとWebのサービスにアプリケーションを統合して、サービス指向アーキテクチャ(SOA)を活用できます。

Oracle Formsは、次の内容で構成されています。

  • Oracle Forms Developer: Formsアプリケーションの開発とコンパイルに使用します。

  • Oracle Forms Services: アプリケーションの配布に使用するサーバー・コンポーネントです。

Oracle Forms Developer

Oracle Forms Developerは、Oracle Databaseにアクセスしてデータを提供できるフォームの開発に使用します。

アプリケーションの迅速な開発を実現するウィザードとユーティリティが用意されています。ソース形式(*.fmb)を作成し、実行可能ファイル(*.fmx)にコンパイルします。Formsアプリケーションは、Formsランタイム・プロセスで実行(解釈)されます。

Oracle Forms Developerの詳細は、次のドキュメントを参照してください。

  • Oracle Forms Builderのオンライン・ヘルプ: Oracle Forms Builderで利用できます。Oracle Forms Developerを使用してFormsアプリケーションを開発、コンパイルする方法に関する情報が得られます。

  • 「アップグレードの準備」: Oracle Forms Developerの非推奨となった機能と、Formsアプリケーションのアップグレード手順について説明しています。

Oracle Forms Services

Oracle Forms Servicesは、Formsアプリケーションを複数層環境に配布するために最適化された包括的なアプリケーション・フレームワークです。Webの使用やアクセスが簡単なことを利用し、Webに単なる静的な情報公開メカニズムを超えた、複雑で動的なアプリケーションをサポートできる環境としての機能を与えます。

Oracle Forms Developerで設計、開発したFormsアプリケーションは、Oracle Fusion Middlewareにデプロイされます。これらのアプリケーションは、中間層で実行されます(「Oracle Forms Servicesのアーキテクチャ」を参照)。ユーザー・インタフェースは、Javaアプレットとしてクライアント層に置かれます。

このガイドでは、構成ファイルと、Formsアプリケーションのデプロイメントをカスタマイズするために使用できる環境変数について説明します。また、パフォーマンス、ロギング、および配布の監視についても取り上げます。Oracle Fusion Middleware Controlを使用して、構成ファイルと環境変数の管理およびデプロイメントの監視が可能です。

Oracle Forms ServicesでのFormsアプリケーションの起動方法

ユーザーが最初にOracle Formsアプリケーションを起動すると、FormsサーブレットがFormsベースHTMLテンプレート・ファイルの1つを読み取ります。テンプレート・ファイル内の変数(%variablename%)は、Forms Web構成(formsweb.cfg)ファイルに指定された適切なパラメータ値によって置換され、URLリクエストがある場合はその問合せパラメータの値によって置換されます。

要件に応じて、Oracle Fusion Middleware ControlでWeb構成を簡単に変更できます。「Oracle Forms Servicesのアーキテクチャ」では、一般的なFormsアプリケーションの配布および実行に関連するプロセスについて説明します。

Oracle Database

Oracle Databaseは、RDBMSの最新バージョンです。

Oracle Real Application Clustersの無限のスケーラビリティと業界随一の信頼性、スタンバイ・データベース・テクノロジの利点を採り入れた新しい高可用性テクノロジ(Oracle Data Guard)、ビルトインOLAP、データ・マイニング機能、抽出、変換およびロード(ETL)機能など数多くの最新機能が盛り込まれています。

Oracle Databaseの詳細は、https://docs.oracle.com/en/databaseを参照してください。

Oracle WebLogic Server

Fusion Middleware Infrastructureのコンポーネントの1つであるOracle WebLogic Serverは、稼働コストの低減、パフォーマンスの向上およびOracleアプリケーション群のサポートのための新しい機能の支援によってエンタープライズJava EEアプリケーションを構築およびデプロイするためのアプリケーション・サーバーです。

作成するのがステージング環境、本番環境またはテスト環境のいずれであっても、最初にWebLogicドメインを作成します。WebLogicドメインには、WebLogic Serverのインスタンスが含まれ、その1つが管理サーバーとして構成されます。管理サーバーは、ドメインの構成データを保持します。Oracle WebLogic Serverの詳細は、『Oracle WebLogic Serverの理解』「はじめに」を参照してください。

構成中に、Oracle Formsの管理対象サーバー(WLS_FORMS)が作成されます。詳細は、「WebLogic管理対象サーバーおよびHTTPサーバーについて」を参照してください。

Oracle Fusion Middleware

Oracle Fusion Middlewareは、Webサーバー、アプリケーション・サーバー、コンテンツ管理システムで構成されるほか、ソフトウェア・アプリケーションの開発、配布および管理を全面的にサポートする各種開発者向けツールを備えています。

コンポーネントとしてOracle Forms Services、Oracle WebLogic ServerおよびOracle Fusion Middleware Controlがあり、ともにインターネット・コンピューティングの利点を最大限に実現するテクノロジを提供します。

Oracle Formsは、Oracle Fusion Middleware Controlを使用して管理および監視できます。

Oracle Fusion Middlewareの総合的な概要、コンポーネントのリストおよび概念的な情報は、次を参照してください。

Oracle Formsのインストールとアップグレードについて

このトピックでは、Oracle Formsをインストールまたはアップグレードする方法について説明します。

Oracle Formsのインストールを準備するには、インストールの準備に関する項を参照してください。

Oracle Formsのアップグレードを計画するには、Oracle Formsのアップグレードの計画に関する項を参照してください。

Oracle Formsの変更された機能または非推奨となった機能のリストを確認するには、「アップグレードの準備」を参照してください。

Oracle Forms Servicesのアーキテクチャ

Oracle Forms Servicesは、複雑なトランザクションFormsアプリケーションをイントラネットやインターネットなどのネットワークにデプロイするための中間層アプリケーション・フレームワークです。

Forms Servicesアーキテクチャは、3層で構成されています。開発者は、Forms Developerを使用してFormsアプリケーションを作成し、Forms Servicesを使用して作成したアプリケーションを配布します。また、開発者は、以前にクライアント/サーバーにデプロイされたアプリケーションを、3層のアーキテクチャに移動することもできます。3層アーキテクチャへの移行では、アプリケーション・コードの小規模な変更が必要になることもあります。

アーキテクチャの3つの層は、次のとおりです。

  • クライアント層: クライアント層(図-1の上部)には、次の2つの構成のいずれかが含まれます:
    • アプリケーションが表示されるかアプリケーションの起動元であるWebブラウザ、およびJava Plug-In (JPI/JRE)。
    • Formsスタンドアロン・ランチャ(FSAL)およびJava Runtime EnvironmentまたはJava Development Kit (JDK)。
  • 中間層: 中間層(図-1の中央)は、アプリケーション・ロジック、サーバー・ソフトウェアおよびコンパイル済Formsアプリケーション・モジュールが格納されるアプリケーション・サーバーです。

    Formsリスナー・サーブレットおよびFormsランタイム・プロセスも中間層に常駐します。

  • データベース層: データベース層(図-1の下部)は、データベース・サーバー・ソフトウェアが格納されるデータベース・サーバーです。

図-1 フォームを実行する3層構造

図-1の説明が続きます
「図-1 フォームを実行する3層構造」の説明

Formsリスナー・サーブレット

Formsリスナー・サーブレットは、JavaクライアントとFormsランタイム・プロセス間でブローカとしての役割を果たします。

Formsリスナー・サーブレットは、Javaクライアント・プロセスから接続リクエストを受け取ると、Javaクライアント・プロセスにかわってFormsランタイム・プロセスを開始します。

図-2は、クライアントがHTTPリクエストを送信し、Forms ServicesからHTTPレスポンスを受信する仕組みを示しています。Oracle Forms ServicesはFormsリスナー・サーブレットを使用して、Formsランタイム・プロセスの開始と終了、Formsランタイム・プロセスとの通信を行います。この図では、クライアントは左側に示されています。図の中央に示されているHTTPリスナーは、クライアントのネットワーク・エンドポイントとしての役割を果たし、他のサーバー・マシンやポートがファイアウォールで公開されないようにします。

図の右側に示されているFormsランタイム・プロセスは、特定のFormsアプリケーションに含まれているコードを実行します。Formsリスナー・サーブレットは、クライアントごとにFormsランタイム・プロセスの生成を管理し、クライアントとそれに対応するFormsランタイム・プロセス間のネットワーク通信を管理します。

ノート:

Formsリスナー・サーブレットは、Oracle Fusion Middlewareのインストール・プロセスで構成されます。

図-2 Formsリスナー・サーブレットを使用したアーキテクチャ

図-2の説明が続きます
「図-2 Formsリスナー・サーブレットを使用したアーキテクチャ」の説明

Formsランタイム・プロセス

Formsランタイム・プロセスには、サーバーとしてクライアント層と通信するときと、クライアントとしてデータベース・サーバーと通信するときの、2つの役割があります。クライアント層と通信するときは、クライアント層からのリクエストを管理し、メタデータをクライアントに送信してユーザー・インタフェースを記述します。データベース・サーバーと通信するときは、リクエストされたデータをデータベース・サーバーに問い合せます。

アプリケーション・サーバーには、Oracle Formsセッションごとに1つのOracle Formsランタイム・プロセスが存在します。Oracle Formsは実際にはこのプロセスで実行され、アプリケーション・ロジックと処理はこのプロセスにより管理されます。また、データベース接続の管理、データの問合せと更新、フォーム内の任意のPL/SQLの実行、トリガーの実行なども行います。クライアント/サーバー・モードで実行するのに使用されたのと同じフォーム、メニューおよびライブラリ・ファイルを使用します。

また、Formsランタイム・プロセスでは、必要に応じて、Java仮想マシン(JVM)を使用して、アプリケーションにインポートされたカスタムJava、Oracle Reportsへのコール、またはOracle Business Intelligence Publisher (Analytics Publisherとも呼ばれる)へのコールも実行されます。Formsランタイム・プロセスによって消費されるメモリーの量を制限するために、Forms JVMコントローラを構成して有効にできます。JVMコントローラを有効にすると、このJVMで必要なメモリーを複数のJVM間で共有できるため、合計メモリー消費を減らし、サーバー上のより多くのリソースを解放できます。JVMの使用とプーリングを管理する場合は、「Java仮想マシンの構成と管理」を参照してください。