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

前
次
次へ

3 Oracle Formsアプリケーションの配布の基本

Forms ServicesがOracle Fusion Middlewareで実行されていて、Formsアプリケーションをデプロイするために一定の手順を実行する必要がある場合、一連のイベントが発生します。この章では、基本的な構成ファイルについても確認します。インストールの完了後、この章に記載されている情報を使用して、初期構成の変更や必要に応じた変更を行うことができます。

この節の内容は以下のとおりです。

3.1 Oracle Forms Servicesのアクション

この項では、Formsサーブレットが初期のHTMLページの生成に役立つことを前提に、Oracle Fusion MiddlewareでForms Servicesが実行される手順と、構成ファイルが使用される仕組みについて説明します。

即時利用可能なForms URLを引数なしで実行すると、Formsのバージョン番号情報が表示されたデフォルトのテスト・フォームが表示されます。この情報が表示されない方が望ましい場合、管理者は、使用環境内の(デフォルトの)構成セクションを変更するだけで、別のフォームが指定されるようにできます(または、フォームが一切指定されないようにします。この場合、ユーザーがバージョン番号が含まれるフォームを表示すかわりにそのURLを試みたときに、エラー・メッセージが表示されます)。ここでは、Weblogic Managed Serverがexample.comと呼ばれるコンピュータのポート9001で実行されていると想定します。また、Oracle Fusion Middlewareのインストール・プロセス時に作成した標準構成には、一切変更を行っていないことを前提にします。

ユーザーがOracle Forms Servicesアプリケーションを実行すると、次の一連のイベントが発生します。

  1. ユーザーはWebブラウザを起動し、次のようなURLを指定します。

    http://example.com:9001/forms/frmservlet?config=myapp&form=hrapp

    この例では、実行されるトップ・レベルのフォーム・モジュールはhrappで、使用する構成セクションはmyappです。

  2. Oracle HTTP Serverリスナーはリクエストを受信します。これは、URL内のパス/formsを検索し、WebLogicハンドラ・マッピングに基づいて正しいOracle WebLogic管理対象サーバーにリクエストを転送します。このマッピングは、forms.confで定義されます。

    注意:

    WebLogic Serverの前面におけるOracle HTTP Server (OHS)の使用はオプションです。この実行を選択するには、インストール後にforms.confを構成する必要があります。ファイルに含まれる例を適切な設定の例として使用できます。設定を保存したら、ファイルを、他の.confファイルが含まれるOHS構成ファイル・ディレクトリに移動する必要があります(「Oracle Forms Servicesを使用したOracle HTTP Serverの有効化」を参照)。

  3. Oracle WebLogic管理対象サーバーは、/formsをコンテキスト・ルートとするOracle Forms Servicesアプリケーションにこのリクエストをマップします。次に、application.xmlファイルで指定したfrmservletのマッピングを使用して、そのリクエストをFormsサーブレットにマップします。

  4. Oracle WebLogic管理対象サーバーで実行しているFormsサーブレットが、このリクエストを処理します。このサーブレットが実行する処理は次のとおりです。

    • $DOMAIN_HOME/config/fmwconfig/servers/WLS_FORMS/applications/formsapp_12.2.1/configにあるこのサーブレットの構成ファイル(デフォルトではformsweb.cfg)を開きます。

    • formsweb.cfgファイルで使用する構成セクションを決定します。この例では、URLには問合せパラメータconfig=myappが含まれているため、[myapp]セクションが使用されます。

    • 使用するベースHTMLまたはbasejnlpファイルを決定します。このときの判断基準は、(a)リクエストを発行しているブラウザ(User-Agent)、(b)ブラウザを実行しているプラットフォーム、(c) formsweb.cfgファイルの各種パラメータの設定です。

    • ベースHTMLファイルを読み取り、次のように変数を置換した後、コンテンツをHTML (またはJNLP)ページとしてユーザーのWebブラウザに送り返します。

      Formsサーブレットは変数(%myParam%など)を検出すると、一致するURL問合せパラメータ(&myParam=xxxなど)を検索し、そのパラメータが見つからないときはformsweb.cfgファイル内で一致するパラメータを検索します。一致するパラメータが見つかると、変数(%myParam%)はそのパラメータの値で置換されます。

      この例では、ベースHTMLファイルにはテキスト%form%が記述されています。このテキストが値hrappに置き換わります。

  5. FormsサーブレットがどのベースHTMLファイルを選択したかに応じて、Webブラウザに送り返されるHTMLページには、Formsアプレット(シン・クライアント)を起動するapplet、object、embedまたはjnlpタグが含まれます。Formsクライアントは、リクエスト・タイプに応じて、Oracle Javaプラグイン、Web StartまたはスタンドアロンJava実行可能ファイルによって提供されるJVM環境内で動作します。

  6. Formsアプレットを起動するには、そのJavaコードを最初にロードしておく必要があります。アプレットの場所は、アプレットのコードベースとアーカイブ・パラメータで指定されます。

    /forms/javaweblogic.xmlファイルにある仮想パスの定義により、Webサーバーからアプレット・コードをロードできます。

    注意: Formsアプレット・コードがネットワークを介してロードされるのは、ユーザーがOracle Forms Servicesアプリケーションを最初に実行したとき、または、新しいバージョンのOracle Forms ServicesがWebサーバーにインストールされたときのみです。それ以外の場合は、ローカル・ディスクにあるJavaキャッシュからロードされます。

  7. Oracle Forms Servicesアプレットが実行されると、URL http://example.com:9001/forms/lservletにあるFormsリスナー・サーブレットに接続してFormsセッションを起動します。

  8. Oracle HTTP Serverリスナーはリクエストを受信します。このFormsリスナー・サーブレット用のweb.xmlファイルにあるサーブレット・マッピングにパス/forms/lservletが一致することから、このリクエストをOracle WebLogic管理対象サーバーに転送します。

  9. Formsリスナー・サーブレット(lservlet)は、FormsセッションのFormsランタイム・プロセス(frmweb.exeまたはfrmweb)を起動します。

  10. FormsアプレットとFormsランタイム・プロセス間の通信は、Formsセッションが終了するまでリスナー・サーブレットを介して継続します。

  11. URLの属性値(実行するフォーム名など)がFormsランタイム・プロセスに渡されます。ベースHTMLファイルのserverArgs値にある%form%はhrappに置き換わります。そのため、このランタイム・プロセスはファイルhrapp.fmxのフォームを実行します。

    このファイルは、環境ファイル(デフォルトではdefault.env)で定義されたFORMS_PATH環境設定に指定されているディレクトリのいずれかに格納されている必要があります。このディレクトリをformsweb.cfgで指定することもできます(例: form=c:\<path>\myform)。

  12. Formsセッションは、次のいずれかが起きた場合に終了します。

    • トップ・レベルのフォームが終了した場合(exit_form組込み関数をコールするPL/SQLトリガー・コードなどにより)。この場合、保存していない変更があれば、ユーザーはその変更を保存するように指示されます。exit_form(no_validate)を指定している場合は、この指示が表示されずにフォームが終了します。

    • ユーザーがWebブラウザを終了した場合。この場合、保存されていない更新は失われます。

3.2 構成ファイル

この項では、Formsアプリケーションの構成に使用する基本ファイルについて説明します。

内容は次のとおりです。

構成の詳細は、「Forms Servicesの構成と管理」を参照してください。

3.2.1 Oracle Forms構成ファイル

Oracle Forms構成ファイルを使用すると、Formsのパラメータを指定できます。これらのファイルは、Oracle Fusion Middleware Controlで管理できます。

これらの構成ファイルには次のものが含まれます。

注意:

Forms構成ファイルとその格納場所のリストは、表C-1を参照してください。

3.2.1.1 default.env

場所: $DOMAIN_HOME/config/fmwconfig/servers/<MANAGED_SERVER>/applications/<appname>_<appversion>/config

通常、この場所は$DOMAIN_HOME/config/fmwconfig/servers/WLS_FORMS/applications/formsapp_12.2.1/configです。

このファイルにはFormsランタイムの環境設定が含まれています。UNIXおよびLinuxの場合、default.envにはPATHLD_LIBRARY_PATHが記述されています。

default.envの詳細は、「環境変数の管理」を参照してください。

3.2.1.2 formsweb.cfg

場所: $DOMAIN_HOME/config/fmwconfig/servers/<MANAGED_SERVER>/applications/<appname>_<appversion>/config

通常、この場所は$DOMAIN_HOME/config/fmwconfig/servers/WLS_FORMS/applications/formsapp_12.2.1/configです。

このForms構成ファイルには、次の内容が含まれています。

  • Formsランタイムのコマンドライン・パラメータの値、使用する環境ファイルの名前(envFile設定)。

  • インストール時に設定するサーブレット構成パラメータのほとんどの設定。変更が必要な場合は、これらのパラメータをカスタマイズできます。

base.htmファイル内の変数(%variablename%)は、formsweb.cfgファイルに指定された適切なパラメータ値によって置換されます。URLリクエストがある場合は、その問合せパラメータの値によって置換されます。

formsweb.cfgの詳細は、「Fusion Middleware Controlによるパラメータの構成」を参照してください。

3.2.1.3 ftrace.cfg

場所: $DOMAIN_HOME//config/fmwconfig/components/FORMS/instances/<FORMS Instance Name>/server/ftrace.cfg

このファイルは、Forms Traceを構成します。Forms Traceは、以前のリリースのFormsで使用されていたForms Runtime Diagnostics (FRD)によって提供されていた機能に代わるものです。Forms Traceは、フォームでの実行パス(たとえば、ユーザーがフォームの使用時に行った手順など)をトレースします。

ftrace.cfgの詳細は、「トレースと診断」を参照してください。

3.2.2 Forms Java EEアプリケーションのデプロイメント・ディスクリプタ

Forms Services Java EEアプリケーションEAR (Enterprise Archive)ファイルformsapp.earは、Oracle Formsの構成時にWLS_FORMS (Oracle WebLogic管理対象サーバー)に配布されます。

これにより、$DOMAIN_HOME/servers/WLS_FORMS/tmp/_WL_user/formsapp_12.2.1/<random_string1>/APP-INFディレクトリの下に次のようなディレクトリ構造が作成されます。

./APP-INF
./APP-INF/lib
./APP-INF/lib/frmconfig.jar
./APP-INF/lib/frmconfigmbeans.jar
./META-INF
./META-INF/application.xml
./META-INF/jazn-data.xml
./META-INF/jps-config.xml
./META-INF/mbeans.xml
./META-INF/weblogic-application.xml

$DOMAIN_HOME/servers/WLS_FORMS/tmp/_WL_user/formsapp_12.2.1/<random_string2>/war/WEB-INFディレクトリの下には、次のようなディレクトリ構造が作成されます。

./WEB-INF
./WEB-INF/lib
./WEB-INF/lib/frmsrv.jar
./WEB-INF/web.xml
./WEB-INF/weblogic.xml

注意:

$DOMAIN_HOME/servers/WLS_FORMS/tmp/_WL_user/formsapp_12.2.1のサブディレクトリは、Oracle WebLogic Serverのnostageデプロイメント・プロセスで作成されます。これらのディレクトリにはランダムな文字列の名前が割り当てられます。たとえば、e18uoiやwb1h9eなどのディレクトリ名になります。

デプロイメント・ディスクリプタ:

  • application.xmlweblogic-application.xmlでは、EARファイルの構造が定義されます。

  • web.xmlでは、FormsサーブレットとFormsリスナー・サーブレット用に、別名frmservletlservletが定義されます。

  • weblogic.xmlでは、コンテキスト・パラメータとユーザー定義の仮想ディレクトリ・マッピングを定義します。

3.2.3 Oracle HTTP Listenerの構成ファイル

Oracle Forms Services用のOracle HTTP Listenerを構成するには、特定の構成ファイルを使用する必要があります。

場所: $DOMAIN_HOME/config/fmwconfig/components/OHS/<OHS INSTANCE NAME>/moduleconf

forms.confは、Oracle Forms Services用のOracle HTTPリスナーの構成ファイルです。これには、Forms Services関連のディレクティブ(Forms WebLogic管理対象サーバーのハンドラ・マッピングなど)が含まれます。

Oracle Formsとともに使用するためにOracle HTTP Serverを構成するには、次を参照してください。

3.2.4 標準フォントとアイコン・ファイル

Registry.datは、Forms Servicesで使用されるデフォルトのフォント、フォント・マッピング、アイコンおよびカスタム色スキーム情報を含んでいるファイルです。

場所: $DOMAIN_HOME/config/fmwconfig/servers/WLS_FORMS/applications/formsapp_12.2.1/config/oracle/forms/registry/Registry.dat

Registry.datの詳細は、「Forms Servicesで使用するフォント、アイコンおよびイメージの配置」を参照してください。

3.2.5 ベースHTML (テンプレート)ファイル

場所: $DOMAIN_HOME/config/fmwconfig/components/FORMS/instances/<Forms Instance Name>/server

Oracle Formsアプリケーションを起動するために使用されるHTMLページを生成する場合、次のいずれかがFormsサーブレットによってテンプレートとして使用されます。

  1. base.htm

  2. basejpi.htm

  3. basesaa.txt

  4. base.jnlp

  5. basejpi_jnlp.htm

構成の変更は、これらのファイルを編集するのではなく、Oracle Fusion Middleware Controlを使用してformsweb.cfgファイルで行うことをお薦めします。ベースHTMLファイルを変更するには、ユーザー自身のバージョンを作成し、設定を適切に変更してformsweb.cfgファイルからそのユーザー・バージョンのファイルを参照します。

3.2.6 WebUtilの構成ファイルおよびテンプレートHTMLファイル

実行時にWebUtilを構成するには、特定のファイルを使用する必要があります。

設計時に使用するWebUtilの詳細は、Oracle Forms Developerのオンライン・ヘルプを参照してください。WebUtil構成ファイルは次のとおりです。

3.2.6.1 デフォルトのwebutil.cfg

場所: $DOMAIN_HOME/config/fmwconfig/components/FORMS/instances/<Forms Instance Name>/server

このファイルには、次のようなWebUtilの構成設定がすべて示されます。

  • ロギング・オプション

  • インストール・オプション

  • ファイルのアップロードおよびダウンロードのオプション

  • ロギング・エラーやログ・メッセージに対するサーバー・サイドのロギング・オプション

3.2.6.2 デフォルトのwebutilbase.htm

場所: $DOMAIN_HOME/config/fmwconfig/components/FORMS/instances/<Forms Instance Name>/server

これは、汎用APPLETタグを使用してWebUtil対応フォームを実行するためのデフォルトのベースHTMLファイルです。

3.2.6.3 デフォルトのwebutiljpi.htm

場所: $DOMAIN_HOME/config/fmwconfig/components/FORMS/instances/<Forms Instance Name>/server

これは、Javaプラグインを使用してWebUtil対応フォームを実行するためのデフォルトのベースHTMLファイルです。このファイルは、たとえば、UNIX上でFirefoxを使用してWebUtil対応フォームを実行する場合に使用できます。

3.2.6.4 デフォルトのwebutil.jnlp

これは、Java Web Startまたは埋込みJNLPを使用してWebUtil対応フォームを実行するためのデフォルトのbasejnlpファイルです。

場所: $DOMAIN_HOME/config/fmwconfig/components/FORMS/instances/<Forms Instance Name>/server

3.2.6.5 デフォルトのwebutilsaa.txt

これは、Formsスタンドアロン・ランチャ(FSAL)を使用してWebUtil対応フォームを実行するためのデフォルトのbasesaaファイルです。

場所: $DOMAIN_HOME/config/fmwconfig/components/FORMS/instances/<Forms Instance Name>/server

3.2.7 構成テンプレートおよびキー・バインディング・ファイルの管理

Forms Enterprise Manager Fusion Middleware Controlの「拡張構成」ページは、フリー・テキスト・エディタを使用して構成テンプレートおよびキー・バインディング・ファイルを追加、編集および削除する場合に使用します。

Forms Enterprise Manager Fusion Middleware Controlの「ホーム」ページで、「拡張構成」をクリックして「拡張構成」ページを開きます。

「拡張構成」ページには、「カテゴリの選択」リスト・ボックスと「ファイルの選択」リスト・ボックスが表示されます。「カテゴリの選択」リスト・ボックスでカテゴリを選択すると、すべての関連ファイルが「ファイルの選択」リスト・ボックスに表示されます。

この項の内容は、次のとおりです。

3.2.7.1 構成テンプレート・ファイルの追加、編集および削除

「拡張構成」ページで構成テンプレート・ファイルの追加、既存の構成テンプレート・ファイルの変更または削除を行うには、次の手順を実行します。

ファイルを作成するには、次の手順を実行します。

  1. 「類似作成」ボタンをクリックしてダイアログ・ボックスを開きます。

    「カテゴリ」フィールドと「ソース・ファイル名」フィールドは、「ファイルの選択」リスト・ボックスで選択したファイルに基づいて事前に選択されています。ファイルが選択されていない場合は、特定のカテゴリを選択する必要があります。

  2. 「新規ファイル名」フィールドに名前を入力します。

  3. 「作成」ボタンをクリックして、新しいファイルを作成します。

    注意:

    同じファイル名のファイルが存在する場合、エラー・メッセージが表示されます。

ファイルを編集するには、次の手順を実行します。

  1. 「ファイルの選択」リスト・ボックスでファイルを選択し、「編集」ボックスにその内容を表示します。

    注意:

    「編集」ボックスでは、フリー・テキスト・エディタが使用されます。
  2. 「編集」ボックスで、ファイルの内容を更新して「適用」をクリックします。

    または

    「回復」,をクリックすると、変更が破棄されます。

注意:

ファイルの内容の読取りおよび保存は、mBean操作を使用して行われます。

ファイルを削除するには、次のステップを実行します。

  1. 「カテゴリの選択」リスト・ボックスでカテゴリを選択します。

  2. 「ファイルの選択」リスト・ボックスでファイルを選択します。

  3. 「削除」ボタンをクリックして、特定のファイルを削除します。

注意:

選択したファイルがユーザー作成ファイルの場合は、「削除の確認」ダイアログ・ボックスが表示されます。選択したファイルが同梱ファイルの場合は、次のようなエラー・メッセージが表示されます: 標準ファイルは削除できません。ユーザー作成ファイルのみ削除できます。

図3-1 エラー・メッセージが表示されているファイルの削除


図3-1の説明が続きます
「図3-1 エラー・メッセージが表示されているファイルの削除」

3.2.7.2 キー・バインディング・ファイルの編集

キー・バインディング・ファイルを編集するには、「拡張構成」ページで次の手順を実行する必要があります。

キー・バインディング・ファイルを編集するには、次の手順を実行します。

  1. 「キー・バインディング・ファイルの選択」ボタンをクリックしてダイアログ・ボックスを開きます。

    「言語の選択」フィールドは、「ファイルの選択」リスト・ボックスで選択したキー・バインディング・ファイルに基づいて事前に選択されています。ファイルが選択されていない場合は、「言語の選択」フィールドで特定の言語を選択する必要があります。特定の言語に関連するファイルが表示されます。

  2. 「ファイルの選択」リスト・ボックスでファイルのチェック・ボックスを選択または選択解除します。

    標準ファイルおよび非標準ファイルが「ファイルの選択」リスト・ボックスに表示されます。4つの標準ファイルとMBeanがすでに存在するファイルは、チェック・ボックスが選択された状態で表示されます。非標準ファイルは、チェック・ボックスの選択が解除された状態で表示されます。

    • 別の言語を選択して、「ファイルの選択」リスト・ボックスに移入されたファイル・リストをリフレッシュします。

  3. 新たに選択した項目についてMBeanを作成し、新たに選択を解除した項目についてMBeanを削除するには、「保存」ボタンをクリックします。選択内容が変らないファイルについて、MBeanは削除または追加されません。

    • 複数の言語の場合、選択プロセスを繰り返すことができます。

    新たに選択した項目についてMBeanを作成し、新たに選択を解除した項目についてMBeanを削除してダイアログ・ボックスを閉じるには、「保存して閉じる」ボタンをクリックします。

    コミットの確認ダイアログ・ボックスに、メッセージ「キー・バインディング・ファイルの変更がコミットされました。」が表示されます。

    「取消」ボタンをクリックして、変更内容を破棄して「キー・バインディング・ファイルの選択」ダイアログ・ボックスを閉じることもできます。

図3-2 キー・バインディング・ファイルの変更のコミット確認メッセージ


図3-2の説明が続きます
「図3-2 キー・バインディング・ファイルの変更のコミット確認メッセージ」の説明

3.3 アプリケーションの配布

Forms Developerでアプリケーションを作成したら、そのアプリケーションをWeb上に配布できます。Oracle Forms Servicesは、指定されたURLによってOracle Fusion Middlewareのアプリケーションにアクセスします。

次に、そのURLでHTTP Listenerにアクセスし、そこでListener Servletと通信します。リスナー・サーブレットは、Forms ServicesのセッションごとにFormsランタイム・プロセス(Windowsではfrmweb.exe、UNIXとLinuxではfrmweb)を起動します。

Forms Servicesが実行される仕組みの詳細は、「Oracle Forms Servicesのアクション」を参照してください。

内容は次のとおりです。

3.3.1 アプリケーションのデプロイ

Oracle Fusion Middleware構成ウィザードによって設定されるデフォルトのパラメータを使用して基本フォームをデプロイする手順:

  1. Oracle Forms Developerでアプリケーションを作成し、関連するソース・ファイル(.fmb、.mmb、.pll、.olb)がホストされるアプリケーション・サーバー上の目的の場所にこれらのファイルを保存またはコピーします。

    ソース・ファイルは、Forms Developer以外ではオープンできない設計時ファイルです。実行可能ファイル(.fmx、mmx、plx)は、(Forms Compilerを使用して)ソース・ファイルをコンパイルしたときに作成されるランタイム・ファイルで、Webデプロイメントに使用します。

    Forms Developerの詳細は、Forms Developerの「ヘルプ」メニューを参照してください。

  2. Forms Compiler (Forms Developerのコンポーネント)を使用して、ソース・ファイルから実行可能ファイルを生成します。コンパイラおよびその場所は、次を参照してください。
    • UNIXプラットフォームの場合: FORMS_INSTANCE/bin/frmcmp.sh

    • Microsoft Windowsの場合: ORALCE_HOME\bin\frmcmp.exe

    起動時にコンパイラに引数が渡されない場合、グラフィカル・ユーザー・インタフェースの起動が試みられます。Forms Compilerの使用の詳細は、Forms Developer (Forms Builder)ヘルプを参照してください。または、–helpオプションを使用してオプションの引数を表示します。例: frmcmp -help

    使用例: frmcmp.sh module=myForm.fmb module_type=form compile_all=yes userid=scott/tiger@orcl

  3. 目的のアプリケーション・モジュールにOracle Forms Servicesからアクセスできるようにformsweb.cfgを変更します。このファイルは、Fusion Middleware Controlの「Web構成」ページで編集します(「Forms Servicesの構成」を参照)。

    表3-1は、form=hrapp.fmxというフォーム・モジュールを持つアプリケーションmy_applicationの構成を示しています。

    表3-1 構成セクションのパラメータ値の例

    構成セクション名 Formsモジュール名の値

    my_application

    hrapp.fmx

    構成が完了すると、ブラウザのURLに「...?config=my_application」(formsweb.cfg「Web構成」セクションの名前)と入力することにより、Web上でOracle Forms Servicesモジュールhrapp.fmxへアクセス可能になります。

    注意:

    この構成セクションの名前に使用できる文字は、空白以外の英数字のみです。

  4. .fmxファイルの場所は、必ずFORMS_PATH環境変数で指定します。

    たとえばWindowsでは、.fmxファイルがd:\my_files\applicationsにある場合は、FORMS_PATHd:\my_files\applicationsと記述します。Windowsの場合、複数の場所を指定するには各ディレクトリ名をセミコロンで区切ります。UNIXとLinuxの場合はコロン(:)で区切ります。その環境ファイルの「環境構成」ページで、この情報を指定します。

  5. 環境ファイルを変更するには、Fusion Middleware Controlの「環境構成」ページで環境ファイルを選択し、アプリケーションの必要に応じて環境変数を追加または編集します。たとえば、次の表に示す環境変数を追加できます。

    表3-2 環境変数の値の例

    環境変数の名前 環境変数の値

    NLS_LANG

    NLS_LANG=GERMAN_GERMANY.WE8ISO8859P15

    環境ファイルでこれらの環境変数を指定した場合は、「Web構成」ページを使用して、formsweb.cfgの該当する構成セクションでこの環境ファイルを指定します。

  6. 次のように、URLで記述したアプリケーションの名前を入力します。

    http://example.com:9001/forms/frmservlet?

    exampleはコンピュータのホスト名で、9001はWebLogic Manager Serverによって使用されるポートです

    構成セクションを作成した後、config=に続いてその構成セクション名を記述します。この例では、hrapp.fmxにアクセスするためのURLは次のようになります。

    http://example.com:9001/forms/frmservlet?config=my_application

3.3.2 パラメータの指定

Oracle Forms Servicesアプリケーションにパラメータ値を事前定義するには、2つの方法があります。次の方法でパラメータを定義できます。

  • Fusion Middleware Controlの「Web構成」ページのデフォルト・セクションで、アプリケーション設定を編集します。デフォルトの構成セクションには、Oracle Forms Servicesで使用するデフォルト値が表示されます。

  • 名前を付けたアプリケーションの構成セクションで、他のシステム・パラメータとユーザー・パラメータの値を管理(追加、編集、コピー、削除)します(「Fusion Middleware Controlでの構成セクションの作成」を参照)。たとえば、myApp用に作成した構成セクションで、次の表に示すパラメータおよびその値を追加または変更できます。

    表3-3 構成セクションの例: myAppのパラメータ値

    パラメータ名 パラメータ値

    baseHTML

    mybase.htm

    baseHTMLjpi

    mybasejpi.htm

    form

    hrapp.fmx

    userid

    scott/tiger@orcl

注意:

「Web構成」の名前付き構成セクションで指定したパラメータは、デフォルト・セクションの設定をオーバーライドします。

注意:

システム・パラメータは、ユーザー・パラメータとは異なりURLにおいてオーバーライドできません。

3.3.3 Fusion Middleware Controlでの構成セクションの作成

「アプリケーションのデプロイ」のステップ2で作成した構成セクションで、Oracle Forms Servicesアプリケーションのパラメータを指定できます。「Web構成」ページのデフォルト・セクションで使用可能なアプリケーションおよびシステム・パラメータを任意で指定できます。

たとえば、lookAndFeelパラメータをoracleの値に設定し、「適用」をクリックすると、アプリケーションのルック・アンド・フィールをOracleのルック・アンド・フィールに設定できます。

また、名前付き構成セクションのデフォルトのパラメータ値をオーバーライドすることもできます。たとえば、アプリケーションへの接続情報をscott/tiger@orclとして事前定義するには、useridのパラメータ値を設定する必要があります。これには、名前を付けた構成セクションでuseridのパラメータ値をscott/tiger@orclに変更します。

編集可能な他のパラメータは、「Forms構成パラメータ」を参照してください。

3.3.3.1 Oracle Forms Servicesアプリケーションへのアクセスに使用するURLの編集

Oracle Forms ServicesアプリケーションにアクセスするURLにパラメータを直接入力できます。前述の例の場合、構成ファイルにformパラメータを指定するかわりに、URLに次のように入力することもできます。

http://example.com:9001/forms/frmservlet?config=my_application&form=hrapp

アンパサンド(&)を使用すれば、フォームと名前を付けた構成パラメータの組合せをコールすることができます。前述の例では、my_applicationで指定したパラメータ設定を使用して、フォームhrappをコールしています。

注意:

URLで指定したパラメータは、構成セクションで設定したパラメータをオーバーライドします(「アプリケーションのURLセキュリティの管理」を参照)。

3.3.4 ランフォーム・パラメータにおける特殊文字の指定

ランフォーム・パラメータに渡される値に特殊文字が含まれている場合は、特定の考慮事項が適用されます。この項では、こうした考慮事項について説明し、今回のリリースのデフォルト動作と前リリースのデフォルト動作を比較します。

ランフォーム・パラメータは、テンプレートHTMLファイルのserverArgsアプレット・パラメータで指定されるパラメータです。テンプレートHTMLファイルのserverArgsパラメータで指定された値は、変数の置換後に、コマンドライン・パラメータ文字列と呼ばれることもあります。これは、空白で区切られた一連のname=valueのペアで構成されます。この名前には、英数字またはアンダースコアのみが使用可能です。name=valueペアの値の部分には、任意の文字列を使用できます。

3.3.4.1 現行リリースのデフォルト動作

ランフォーム・パラメータの値は、次に示す3つの場所のいずれかで指定できます。

  1. テンプレートHTMLファイル(base.htmなど)のserverArgsパラメータの値。

  2. (1)の変数参照を(直接または再帰的に)置換する、構成ファイル(formsweb.cfgなど)で指定された変数の値。通常、これらの値は、Fusion Middleware Controlを使用して管理します。「Forms Servicesの構成」を参照してください。

  3. (1)または(2)の変数参照を直接置換する、URLの属性値。

(3)では、URL構文規則(ブラウザおよびアプリケーション・サーバーで実行される)により、URLエスケープ・シーケンスとして特定の文字を入力する必要があります(計3文字のうち、%に続く2桁の16進数字は文字のASCII値を表します)。

この要件には、%文字自体が含まれます(%25として入力する必要があります)。さらに、現在Oracle Forms Servicesでは、ブラウザおよびアプリケーション・サーバーでエスケープなしに引用符を入力できる場合でも、引用符('"')は%22として入力する必要があります。

URL構文規則では、(URLエスケープ・シーケンス%20の代替として)空白を+として入力することも許可されています。ただし、otherparams構成パラメータの値では、+は特別に扱われ、ランフォーム・パラメータの値に埋め込まれた空白を示すのとは対象的に、name=valueペアを分割します。

たとえば、ランフォーム・アプリケーションにユーザー・パラメータparam1param2が指定されており、これらのパラメータに「a b」および「c d」を割り当てる場合は、次の文字列をURLに取り込みます。

&otherparams=param1=a%20b+param2=c%20d

(1)および(2)のように、テンプレートHTMLファイルまたは構成ファイルでランフォーム・パラメータを指定する場合、Formsでは状況によってURLエスケープ・シーケンスが必要とされる場合やURLエスケープ・シーケンスの使用が許可される場合、また許可されない場合があります。

ランフォーム・パラメータの値の外部では、URLエスケープ・シーケンスは使用できません。たとえば、name=valueペアの=は、常にそのまま=として指定する必要があります。隣接する2つのname=valueペアを区切る空白は、常にそのまま" "(シングル・スペース文字)として指定する必要があります。

ランフォーム・パラメータの値の内部では、空白(' ')をURLエスケープ・シーケンス(%20)として指定する必要があります。HTMLデリミタ文字(構成ファイルで指定)もURLエスケープ・シーケンスとして指定する必要があります。また、(1)のようにランフォーム・パラメータがテンプレートHTMLファイルで指定されている場合は、引用符('"')をURLエスケープ・シーケンス(%22)として指定する必要があります。

その他の7ビットASCII文字も、URLエスケープ・シーケンスとして指定する場合があります。ただし、この指定は必須ではありません(次に示すとおり、%では必要な場合があります)。%文字には、特定の追加制限が適用されます。これには次のものがあります。

  • HTMLデリミタが% (デフォルト)である場合、ランフォーム・パラメータの値内の%の出現をエスケープする(%25として指定する)必要があります。(HTMLデリミタ文字のエスケープの必要性については、前述のとおりです)。さらに、7ビットのASCII値を表す2桁の16進数字(最初の文字が0から7の2桁の16進数字)で変数名を開始することはできません。

  • HTMLデリミタが%でなければ、その直後に8進数字と16進数字が続く場合、%の出現はエスケープする必要があります。%の他の出現もエスケープすることをお薦めしますが、これは必須ではありません。

(前リリースで作成した既存のテンプレートHTMLファイルまたは構成ファイルを所有し、そのファイルで%以外のHTMLデリミタが使用され、ランフォーム・パラメータの値に%が含まれている場合は、この推奨事項を無視することもできます)。

3.3.4.2 前リリースの動作

リリース9.0.4以降の動作は、テンプレートHTMLファイルと構成ファイルのランフォーム・パラメータの値では引用符をエスケープ(%22)する必要がある点を除いて、現行リリースと同じです。

9.0.4より前のリリースでは、テンプレートHTMLファイルや構成ファイルで指定したランフォーム・パラメータの値にはURLエスケープ・シーケンスを使用できませんでした(前述の(1)と(2)の場合)。3つのすべての場合において、特定の特殊文字、特に空白、引用符、アポストロフィを指定することは困難または不可能でした。さらに、パラメータ値には、値をランフォームに渡す前に特定の変換が適用されました。特に顕著なのは値がアポストロフィで開始および終了する場合で、通常これらのアポストロフィは削除されました。ただし、こうした変換は明確に定義されたものではなく、Web環境とクライアント/サーバー環境の間には差異がありました。

3.3.4.3 現行リリースでの前リリースの動作取得

使用しているアプリケーションが前リリースの動作に依存している場合は、構成ファイルでescapeparams変数の値をFalseに設定するだけで、現行リリースで前リリースの動作を取得できます(この作業はFusion Middleware Controlで実行します)。

以前の動作の取得を選択したアプリケーションに限定する場合は、異なる構成セクションのescapeparams変数に異なる値を指定できます。以前の動作を必要とするアプリケーションでは、escapeparams変数をFalseに設定した構成セクションを指定します。新しい動作を必要とする(または許容する)アプリケーションでは、escapeparams変数をTrueに設定した構成セクションを指定します。

3.3.4.4 テンプレートHTMLファイルの考慮事項

独自のテンプレートHTMLファイルを作成する場合は、次の点に留意してください。

escapeparams変数(%がHTMLデリミタ文字の場合は文字列%escapeparams%)への参照がserverArgsアプレット・パラメータ値の最初の部分に表示され、空白が続くように設定することをお薦めします。(例については、付属のbase.htmファイルを参照)。

escapeparams変数への参照が、テンプレートHTMLファイルの他の部分に表示されないよう注意してください。serverArgsアプレット・パラメータの値を引用符ではなくアポストロフィで囲む場合は、テンプレートHTMLファイル内のランフォーム・パラメータの値の内部でアポストロフィをエスケープする(%27)必要があります。引用符にはエスケープ・シーケンスは不要です。

serverArgsアプレット・パラメータ値の先頭からescapeparams変数への参照を省略することが可能です。これにより、構成ファイルでescapeparams変数に指定した値に関係なく、以前のリリースの動作が得られます。

3.3.4.5 静的HTMLページの考慮事項

静的HTMLを使用してランフォーム・エンジンを呼び出し、最新リリースの動作を取得する場合は、特定の手順に従う必要があります。

基本的な規則として、静的HTMLがForms Servletで生成されたHTMLのように見える必要があります。具体的には、serverArgsアプレット・パラメータの値を文字列escapeparams=trueで開始する必要があります(大/小文字の区別なし)。

さらに、serverArgsアプレット・パラメータ値の各name=valueペアの値部分で、次の表に示すURLエスケープ・シーケンスによって特定の文字を指定する必要があります。

表3-4 静的HTMLページのURLエスケープ・シーケンス

エスケープが必要な文字 URLエスケープ・シーケンス

改行' \n '

%0a

空白' '

%20

引用符' " '

%22

パーセント' % '

%25

アポストロフィ' ' '

%27

左カッコ' ( '

%28

右カッコ' ) '

%29

name=valueペアの値部分に使用されている他の7ビットASCII文字をエスケープすることもできます。

静的HTMLでのserverArgsアプレット・パラメータの書式の例を次に示します。この例は、my formという名前のフォームに関するものです。ここでは、値foo'barがユーザー定義パラメータmyparamに渡されます。

<PARAM NAME="serverArgs" VALUE="escapeparams=true module=my%20form userid=scott/tiger@mydb myparam=foo%27bar">

3.3.5 リスナー・サーブレット管理ページへのアクセス

次のURLにアクセスすると、リスナー・サーブレットのテスト・ページを表示できます。

http://<hostname>:<port>/forms/frmservlet/admin

表示される情報は、初期化パラメータTestModeの値に依存します。このパラメータは$DOMAIN_HOME/servers/WLS_FORMS/tmp/_WL_user/formsapp_12.2.1/<random_string>/war/WEB-INF /web.xmlファイルで設定します。次に例を示します。

<init-param>
<!-- Display sensitive options on the /admin page -->
    <param-name>TestMode</param-name>
    <param-value>true</param-value>
</init-param>

3.4 クライアントの構成に関する注意事項

要件に応じて、使用可能なクライアントの構成を使用できます。

次のクライアントの構成が使用可能です。

  • HTMLに埋め込まれたアプレット

    • デフォルトの構成

    • SSO、SSOログアウトおよびJavaスクリプト統合に対する完全なサポート

    • Javaプラグインおよびブラウザが必要

  • HTMLに埋め込まれたJNLP

    • SSO、SSOログアウトおよびJavaスクリプト統合に対する完全なサポート

    • Javaプラグインおよびブラウザが必要

    • Base64によってクライアント側のhtmlソースでJNLPコードをエンコード

  • Java Web Start

    • SSOをサポート(ブラウザを使用して使用する場合)

    • SSOログアウトまたはJavaスクリプト統合に対するサポートなし

    • JDKまたはJavaプラグイン(JRE)のインストールが必要

    • ネイティブの外観でアプリケーションを表示

  • スタンドアロン(Formsスタンドアロン・ランチャ)

    • SSO、SSOログアウトまたはJavaスクリプト統合に対するサポートなし

    • JDKまたはJavaプラグイン(JRE)のインストールが必要

    • ブラウザは不要

    • ネイティブの外観でアプリケーションを表示

    • ページ例の参照可能な場所: http://server:9001/forms/html/fsal.htm

    注意:

    これらの各構成の使用方法の例は、Forms Web構成formsweb.cfgを参照してください。

3.4.1 クライアント・ブラウザのサポート

次のリンクでは、クライアント・ブラウザ、Javaバージョンおよびサポートされている最新のプラットフォームの詳細を参照できます。また、Oracle Java Plug-inを使用してOracle Formsアプリケーションを表示することもできます。

3.4.2 構成パラメータとベースHTMLファイルをクライアント・ブラウザに連結する方法

ブラウザからOracle Formsアプリケーションをリクエスト(たとえば、アプリケーションのURLへのリンクをクリック)すると、Formsサーブレットにより、次の処理が行われます。

  1. 使用しているブラウザを検出します。

  2. 次の表を使用して、適切なベースHTMLファイルを選択します。

    表3-5 ベースHTMLファイルの説明

    検出されたブラウザ 使用されるベースHTMLファイル

    Internet Explorer

    basejpi.htm

    Mozilla FireFox

    basejpi.htm

    その他すべてのブラウザとMacintoshクライアント

    base.htm

  3. ベースHTMLファイル内の変数(%variablename%)が、Formsのservlet.initArgsファイルやformsweb.cfgファイルに指定された適切なパラメータ値や、URLリクエストがある場合はその問合せパラメータの値で置換されます。

  4. HTMLファイルをユーザーのブラウザに送信します。