プライマリ・コンテンツに移動

Oracle® Application Expressアプリケーション・ビルダー・ユーザーズ・ガイド リリース5.1 E83810-03 |
| 目次 | 索引

前 | 次 |

# 2.7 URL構文の理解

この項では、Application Expressアプリケーション・ページのURL、f?p構文を使用してページをリンクする方法、およびページの別名またはボタンのURLを使用してページをコールする方法について説明します。

トピック:

- アプリケーション・ページURLについて
- f?p構文を使用したページのリンクについて
- アプリケーションの別名
- ページの別名
- アプリケーションおよびページの別名を使用したページのコール
- ボタンのURLからのページのコール

## 2.7.1 アプリケーション・ページURLについて

ページごとに表示されるURLは、Oracle Application Expressの場所を指定します。また、Oracle Application Expressのアドレス、アプリケーションID、ページ番号およびセッションIDを指定します。次に例を示します。

    http://apex.somewhere.com/pls/apex/f?p=4350:1:220883407765693447

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

- `http:`は、スキームです。

- `apex.somewhere.com`は、サーバーのドメイン名です。ポート番号またはIPアドレスを含めることもできます。

- `pls`は、`mod_plsql`カートリッジを使用するためのインジケータです(該当する場合)

- `apex`は、データベース・アクセス記述子(DAD)名です。DADにはHTTP Serverからデータベース・サーバーへの接続方法が記述されているため、HTTPリクエストを実行できます。デフォルト値は`apex`です。

- `f?p=`は、リクエストを正しいエンジン・プロセスにルーティングするためにOracle Application Expressによって使用される接頭辞です。

- `4350`は、コールされるアプリケーションのIDです。アプリケーションIDは、各アプリケーションを識別する一意の番号です。

- `1`は、アプリケーション内のページの番号です。

- `220883407765693447`は、セッション番号です。アプリケーションを実行する場合、Application Expressエンジンはユーザーのセッション・ステートに対するキーとして機能するセッション番号を生成します。

関連項目:

セッション・ステートの管理の理解およびデータベース・アプリケーションURLの公開について

## 2.7.2 f?p構文を使用したページのリンクについて

アプリケーションのページ間にリンクを作成するには、次の`f?p`構文を使用します。

    f?p=App:Page:Session:Request:Debug:ClearCache:itemNames:itemValues:PrinterFriendly

表2-2に、`f?p`構文の使用時に指定できる引数を示します。

表2-2 f?p構文の引数

構文 | 説明
--- | ---
`App` | アプリケーションIDまたは英数字のアプリケーションの別名を指定します。
`Page` | ページ番号または英数字のページの別名を指定します。
`Session` | セッションIDを指定します。セッションIDを参照して、セッション番号を渡すことで同じセッション・ステートを保持している他のページへのハイパーテキスト・リンクを作成できます。セッションIDを参照するには、次の構文を使用します。 短縮置換文字列: `&SESSION` PL/SQL: `V('SESSION')` バインド変数: `:APP_SESSION`
`Request` | `REQUEST`の値を設定します。各アプリケーション・ボタンは、`REQUEST`の値にこのボタンの名前を設定します(これによって、ユーザーがアプリケーション・ボタンをクリックしたときに受入れプロセスはボタンの名前を参照できるようになります)。`REQUEST`を参照するには、次の構文を使用します。 置換文字列: `&REQUEST` PL/SQL: `V('REQUEST')` バインド変数: `:REQUEST`
`Debug` | アプリーション処理の詳細を表示します。DEBUGフラグの有効値は、次のとおりです。 YES `LEVEL` `n` NO このフラグを`YES`に設定すると、アプリケーション・プロセスの詳細を表示できます。このフラグを`LEVEL` `n` (`n`の範囲は1から9)に設定すると、表示するデバッグの詳細レベルを制御できます。値YESは、`LEVEL4`と同等です。 DEBUGフラグを参照するには、次の構文を使用します。 短縮置換文字列: `&DEBUG` PL/SQL: `V('DEBUG'`) バインド変数: `:DEBUG` 関連項目: アプリケーションのデバッグ
`ClearCache` | キャッシュをクリアします。これによりアイテムの値がNULLに設定されます。 キャッシュされたアイテムを単一のページでクリアするには、数値ページ番号を指定します。キャッシュされたアイテムを複数のページでクリアするには、ページ番号のカンマ区切りのリストを使用します。ページのキャッシュをクリアすると、ページのステートフル・プロセスもリセットされます。個別の値またはカンマ区切りの値には、リセットするコレクション名を追加することや、リクエストされたページにおけるリージョンのページ区切りをリセットするためにキーワード`RP`を追加することができます。キーワード`APP`は、すべてのページのキャッシュおよびカレント・アプリケーションにおけるすべてのアプリケーション・レベルのアイテムをクリアし、現行のユーザーのソート・プリファレンスを削除します。キーワード`SESSION`は`APP`キーワードと同じ結果になりますが、カレント・セッションで使用されたすべてのアプリケーションに関連付けられたアイテムをクリアします。 関連項目: セッション・ステートのクリア
`itemNames` | URLでセッション・ステートを設定するために使用される、カンマで区切られたアイテム名のリストです。
`itemValues` | URLでセッション・ステートを設定するために使用されるアイテム値のリストです。アイテム値にカンマを渡すには、文字をバックスラッシュで囲んでください。次に例を示します。
    \123,45\
`backslash comma` (`\,`)以外のすべての文字列は、バックスラッシュで囲むことができます。
`PrinterFriendly` | ページを「印刷用」モードでレンダリングするかどうかを決定します。PrinterFriendlyが「はい」に設定されている場合は、ページが「印刷用」モードでレンダリングされます。PrinterFriendlyの値は、リージョンなどの要素をページから削除して印刷される出力を最適化するための条件のレンダリングに使用されます。 印刷用プリファレンスを参照するには、次の構文を使用します。
    V('PRINTER_FRIENDLY')
参照すると、印刷用テンプレートを使用してページが表示されます。Application Expressエンジンは、HTMLフォーム・フィールド内のすべてのテキストをテキストとして表示します。印刷用テンプレートには、`#FORM_OPEN#`タグまたは`#FORM_CLOSE#`タグは必要ありません。目的は、表をほとんど使用しないで、印刷に適した書式で情報を表示できるようにすることです。

`f?p`構文の動作を理解しておくことが重要です。アプリケーション・ビルダーには、これらの参照を自動的に作成する多くのウィザードが含まれています。ただし、自分で構文を作成する必要がある場合もあります。次の項では、`f?p`構文を使用してページをリンクする具体的な場合について説明します。

## 2.7.3 アプリケーションの別名

アプリケーションの別名は、開発者がアプリケーションIDのかわりに使用できる、一意の英数字の代替アプリケーション識別子です。アプリケーションの別名は、アプリケーション定義を編集して定義します。

関連項目:

アプリケーション属性の管理およびアプリケーションおよびページの別名を使用したページのコール

## 2.7.4 ページの別名

ページの別名は、ページ番号の代替となる一意の英数字です。開発者は、ページ番号IDのかわりにページの別名を使用できます。ページの別名は、ページ属性を編集して定義します。

関連項目:

ページ・デザイナでのページ属性の管理、レガシー・コンポーネント・ビューでのページ属性へのアクセスおよびアプリケーションおよびページの別名を使用したページのコール

## 2.7.5 アプリケーションおよびページの別名を使用したページのコール

アプリケーションおよびページの別名は、有効なOracle識別子で構成する必要があります。空白を含めることはできず、また大/小文字は区別されません。次の例では、アプリケーション内から、アプリケーションおよびページの別名を使用してページをコールします。アプリケーション`myapp`のページ`home`が実行され、現行のセッションIDが使用されます。

    f?p=myapp:home:&APP_SESSION.

アプリケーションの別名は、ワークスペース内で一意である必要があります。異なるワークスペースのアプリケーションに同じアプリケーション別名がある場合は、`&c`引数を使用してワークスペース名を指定します。次に例を示します。

    f?p=common_alias:home:&APP_SESSION.&c=WORKSPACE_A

関連項目:

アプリケーションの別名およびページの別名

## 2.7.6 ボタンのURLからのページのコール

ボタンの作成時に、ユーザーがそのボタンをクリックするとリダイレクトされるURLを指定できます。この例では、アプリケーション6000のページ6001が実行され、現行のセッションIDが使用されます。

    f?p=6000:6001:&APP_SESSION.

これは、ボタンを使用するための唯一の方法です。この方法は、ページの送信を省略し、そのページ上のハイパーリンクとして機能します。ボタンをクリックしてページを送信することもできます。その方法では、ボタンをクリックすると、処理するページが送信され、フォームが送信された後、セッション・ステートが保存されます。

関連項目:

ボタンの作成およびAPP_SESSION