プライマリ・コンテンツに移動
Oracle® Fusion Middleware Forms Servicesデプロイメント・ガイド
12c (12.2.1.3.0)
E90224-02
目次へ移動
目次

前
次
次へ

1 Oracle Forms Servicesの概要

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

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

1.1 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: アプリケーションの配布に使用するサーバー・コンポーネントです。

1.1.1 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アプリケーションのアップグレード手順について説明しています。

1.1.2 Oracle Forms Services

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

Oracle Forms Developerで設計、開発したFormsアプリケーションは、Oracle Fusion Middlewareに配布されます。これらのアプリケーションは中間層で動作します(図1-2を参照)。ユーザー・インタフェースは、クライアントのブラウザで表示するJavaアプレットとしてクライアント層に置かれます。

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

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

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

要件に応じて、Oracle Fusion Middleware Controlで構成ファイルを簡単に変更できます。また、Fusion Middleware Controlが含まれないOracle Formsインストール内の構成ファイルを手動で更新することもできます。「Oracle Forms Servicesのアーキテクチャ」では、一般的なFormsアプリケーションの配布および実行に関連するプロセスについて説明します。

1.2 Oracle Database

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

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

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

1.3 Oracle WebLogic Server

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

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

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

1.4 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 Fusion Middlewareの理解』の「Oracle Fusion Middlewareの主要な概念について」。

  • 『Oracle Fusion Middlewareの管理』の「Oracle Fusion Middlewareの管理のスタート・ガイド」。

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

インストーラでは、これらの製品をすべて構成できるほか、そのうちのいくつかを選択して構成することもできます。

Oracle Formsのインストールを準備するには、『Oracle Fusion Middlewareのインストールのプランニング』の「Oracle Fusion Middlewareのインストールの準備」を参照してください。

Oracle Formsのアップグレードを計画するには、『Oracle Fusion Middlewareのアップグレードのプランニング』の「Oracle Fusion Middleware 12cへのアップグレードのプランニング」を参照してください。

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

1.6 Oracle Forms Servicesのアーキテクチャ

Forms Servicesアーキテクチャは、3層で構成されています。

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

  • イメージの上位にあるクライアント層には、次の2つの構成の1つが含まれる場合があります。

    1. アプリケーションが表示されるかアプリケーションの起動元であるWebブラウザ、Java Development Kit (JDK)およびJava Plug-In (JPI)。

    2. Formsスタンドアロン・ランチャ(FSAL)およびJava Runtime EnvironmentまたはJava Development Kit (JDK)。

  • 図の中央に示されている中間層は、アプリケーション・ロジックとサーバー・ソフトウェアが格納されるアプリケーション・サーバーです。

  • 図の最下部に示されているデータベース層は、データベース・サーバー・ソフトウェアが格納されるデータベース・サーバーです。

図1-1 Oracle Forms Servicesのアーキテクチャ

図1-1の説明が続きます
「図1-1 Oracle Forms Servicesのアーキテクチャ」の説明

1.6.1 Oracle Forms Servicesのコンポーネント

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

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

図1-2に示すように、フォームを実行するための3層構造の構成は次のとおりです。

  • 図の最上部に示されているクライアントは、クライアント層に常駐します。

  • 図の中央に示されているFormsリスナー・サーブレットは、中間層に常駐します。

  • Formsランタイム・プロセスも中間層に常駐します。

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

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

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

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

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のインストール・プロセスで構成されます。

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

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

1.6.1.2 Formsランタイム・プロセス

Formsランタイム・プロセスは次の2つの役割を果たします。クライアント・ブラウザと通信する場合は、クライアント・ブラウザからのリクエストを処理するサーバーとしての役割を果たし、メタデータをクライアントに送信してユーザー・インタフェースを伝えます。データベース・サーバーと通信する場合は、リクエストされたデータをデータベースに問い合せるクライアントとしての役割を果たします。

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

Formsランタイム・プロセスには、アプリケーションでJavaを実行するためのJava仮想マシン(JVM)も含まれています。最適化のために、このJVMはFormsアプリケーションでJava Importerが使用される場合に起動します。10gでJVMプーリング機能を使用するのはJava Importerのみです。12cでは、Formsランタイム・プロセスがReportsをコールするときに別のJVMを作成することはなくなりました。かわりに、フォームにJVMコントローラを構成しておくと、そのフォームはReportsをコールするときに共有JVMを使用できます。これにより、メモリー消費を削減できるので、サーバーではより多くのリソースを解放できます。JVMの使用とプーリングを管理する場合は、「Java仮想マシンの構成と管理」を参照してください。