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

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

前 | 次 |

# 6.5 アプリケーション属性の管理

アプリケーション属性はアプリケーション全体の動作を制御するものであり、定義、セキュリティ、グローバリゼーション、ユーザー・インタフェースのカテゴリに分類されます。

トピック:

- アプリケーション属性の編集
- セキュリティ属性の構成
- グローバリゼーション属性の構成
- アプリケーションのユーザー・インタフェースの管理

関連項目:

カスタム・パッケージ・アプリケーションの作成方法(サポートするオブジェクト・ユーティリティを使用したパッケージ・アプリケーションの作成方法の詳細)

## 6.5.1 アプリケーション属性の編集

「アプリケーション定義の編集」ページでアプリケーション属性を編集すると、アプリケーション名の変更、様々なアプリケーション・プロパティおよび動作の変更、アプリケーションの可用性の制御、エラー処理の構成、置換文字列の定義などを行えます。

トピック:

- アプリケーション定義の編集ページへのアクセス
- アプリケーション定義の編集ページ

### 6.5.1.1 アプリケーション定義の編集ページへのアクセス

アプリケーション定義の編集ページにアクセスするには、次のステップを実行します。

1. ワークスペースのホームページで、「アプリケーション・ビルダー」アイコンをクリックします。
2. アプリケーションを選択します。
3. アプリケーション名の右側にある「アプリケーション・プロパティの編集」ボタンをクリックします。
   図GUID-D85B07D7-E8EA-48D1-A245-8B6224AA8899-default.pngの説明

   「アプリケーション定義の編集」ページが表示されます。

4. 該当する属性を編集し、「変更の適用」をクリックします。

### 6.5.1.2 アプリケーション定義の編集ページ

アプリケーション定義の編集ページは、次のリージョンに分かれています。

注意:

必須の値には赤いアスタリスク(*)が付いています。

トピック:

- 名前
- プロパティ
- 可用性
- エラー処理
- グローバル通知
- 置換
- ビルド・オプション

#### 6.5.1.2.1 名前

「名前」属性を使用して、アプリケーションの基本的な特性(アプリケーション名、英数字の別名(オプション)、バージョン番号など)を定義します。表6-3に、「名前」のすべての属性を示します。

表6-3「アプリケーション定義」の「名前」

属性 | 説明
--- | ---
名前 | アプリケーションの説明的な短い名前。この名前によって、アプリケーションを開発環境に存在する他のアプリケーションと区別します。
アプリケーションの別名 | 代替の英数字アプリケーション識別子を割り当てます。アプリケーションIDに、この識別子を使用できます。 たとえば、アプリケーション105に`myapp`という別名を作成するとします。この場合、`f?p`構文を使用して、アプリケーション105を次のいずれかでコールできます。 `f?p=105:1` `f?p=myapp:1` 関連項目: f?p構文を使用したページのリンクについて
バージョン | アプリケーションのバージョン番号を入力します。入力した値がページに表示されます。次に示す書式マスクを使用して、自動的にバージョンを最終更新日に結び付けることもできます。 `YYYY.MM.DD` `MM.DD.YYYY` `DD.MM.YYYY` アプリケーションのバージョンで「YYYY.MM.DD」を使用している場合、アプリケーション・ビルダーは、この書式マスクをすべてのアプリケーション属性の最終更新日に置換します。
アプリケーション・グループ | このアプリケーションに現在関連付けられているアプリケーション・グループを表示します。別のアプリケーション・グループを選択するには、リストから選択します。既存のグループからアプリケーションを削除するには、「未割当て」を選択します。 関連項目: アプリケーション・グループの管理

#### 6.5.1.2.2 プロパティ

「プロパティ」セクションを使用して、ロギング、デバッグ動作、フィードバック、互換性、電子メール送信者アドレスおよびアプリケーション・プロキシ・サーバーを構成します。表6-4に、「名前」のすべての属性を示します。

表6-4「アプリケーション定義」の「プロパティ」

属性 | 説明
--- | ---
ロギング | ユーザー・アクティビティをOracle Application Expressアクティビティ・ログに記録するかどうかを決定します。「はい」を選択すると、すべてのページ・ビューがログに記録されるため、管理者はアプリケーションごとにユーザー・アクティビティを監視できます。 高容量アプリケーションでは、ロギングを無効にすることをお薦めします。 この属性は、Oracle Application Express管理サービスの「アプリケーション・アクティビティのロギング」属性が「アプリケーションの設定を使用(デフォルト)」に設定されている場合のみ変更できます。 関連項目: 『Oracle Application Express管理ガイド』のロギングのアプリケーション・アクティビティの有効化に関する説明。
デバッグ | カレント・アプリケーションのデバッグ・モードを制御します。使用可能なオプションは次のとおりです。 はい: デバッグ・モードでのアプリケーションの実行が有効になります。 いいえ: エンド・ユーザーがデバッグ・モードでアプリケーションを実行できないようにします。 デバッグ・モードでのアプリケーションの実行は、アプリケーションが開発中の場合に役立ちます。本番アプリケーションの場合は、デバッグを無効にし、ユーザーがアプリケーション・ロジックを参照できないようにすることをお薦めします。 このデバッグ設定に関係なく、プログラム的にデバッグを有効にできます。アプリケーションがApplication Express開発環境から実行される場合、デバッグは常に有効化できます。
フィードバックを許可 | このアプリケーションに対するエンド・ユーザーのフィードバックへのサポートを有効にします。「はい」または「いいえ」を選択します。 このオプションを有効にする場合は、フィードバック・ページと、そのページをコールするナビゲーション・バー・アイコンを作成する必要があります。フィードバックを後で無効にすると、ナビゲーション・バー・アイコンは非表示になります。 関連項目: フィードバックの管理
互換性モード | Application Expressランタイム・エンジンの互換性モードを制御します。一部のランタイム動作はリリースのたびに変更されます。この属性を使用して、特定のアプリケーション動作を取得します。アプリケーションで新しい動作を認識するには、アプリケーションの互換性モードを最新バージョンに設定します。
アプリケーションの電子メール送信元アドレス | アプリケーションで送信元アドレスとして使用する電子メール・アドレスを決定します。 電子メール・ダウンロードまたはサブスクリプションから電子メールを送信するときに送信元アドレスとしてい使用する有効な電子メール・アドレスを入力します。値には、有効な電子メールを含むリテラル文字列、または置換構文`APP_EMAIL`を使用してアプリケーションで定義された静的置換参照を指定できます。次に例を示します。
    john.doe@abc.com
    &MY_APP_EMAIL_FROM.
アイテムの置換は、電子メール・ダウンロードでのみ機能し、サブスクリプションでは機能しないため、アプリケーションまたはページレベルでのアイテムの置換の使用はお薦めしません。 「対話モード・レポートの属性」ページで送信元アドレスを指定することもできます。コンポーネント・ビューでのクラシック・レポート属性の編集を参照してください。
プロキシ・サーバー | プロキシ・サーバーを指定します。 たとえば、URLリージョン・ソース・タイプを使用する場合、プロキシ・サーバーが必要になる場合があります。URLリージョン・ソースは、URLの結果(URLにナビゲートすると戻されるページ)をリージョン・ソースとして埋め込みます。ファイアウォールを使用している場合に、URLがアプリケーション・ビルダーに対してファイアウォールの外側にある場合は、プロキシ・サーバーを指定する必要があります。 PL/SQLパッケージ変数`APEX_APPLICATION.G_PROXY_SERVER`を使用すると、PL/SQLからこのフィールドに入力した値を参照できます。

#### 6.5.1.2.3 可用性

可用性属性を使用して、アプリケーションのステータスとビルド・ステータスを定義し、アプリケーションを管理します。たとえば、ステータス「制限されたアクセス」を選択すると、アプリケーションにアクセスして実行できるユーザーを指定できます。詳細は、表6-5を参照してください。

表6-5「アプリケーション定義」の「可用性」

属性 | 説明
--- | ---
ステータス | アプリケーションが使用可能または使用不可であることを指定します。オプションは次のとおりです。 使用可能: アプリケーションは制限なしで使用可能です。 開発者ツールバーで使用可能: アプリケーションを使用できます。開発者に対して、各ページに開発者ツールバーが表示されます。開発者は同じブラウザ・セッションでアプリケーション・ビルダーにログインする必要があります。 開発者のみ使用可能: 開発者権限を持つユーザーがアプリケーションを使用できます。 制限されたアクセス: カンマ区切りのユーザー・リスト限定に指定された開発者がアプリケーションを使用できます。 使用不可: アプリケーションを実行または編集できません。ユーザーがアプリケーションへのアクセスを試みると、「使用できないアプリケーションに対するメッセージ」内のメッセージが表示されます。 使用不可(PL/SQLで表示されるステータス): アプリケーションは実行も編集もできません。 使用不可(URLにリダイレクト) - アプリケーションは実行できません。ユーザーは、「使用できないアプリケーションに対するメッセージ」に入力されたURLにリンクされます。 関連項目: 『Oracle Application Express管理ガイド』の複数のアプリケーションのビルド・ステータスの変更に関する項と管理サービスでのアプリケーションのビルド・ステータスの変更に関する項 「アプリケーション、ページおよびページ・コンポーネントへのアクセスの制御」
ビルド・ステータス | カレント・アプリケーションのビルド・ステータスを指定します。オプションは次のとおりです。 アプリケーションの実行および構築: 開発者とユーザーのどちらもアプリケーションを実行および開発できます。 アプリケーションの実行のみ: ユーザーはアプリケーションの実行のみが可能です。このオプションは、本番インスタンスのアプリケーション用です。 関連項目: Oracle Application Express管理ガイドの「デプロイ時のアプリケーションのビルド・ステータス・セットの変更」
使用できないアプリケーションに対するメッセージ | この属性は、「ステータス」とともに使用します。「ステータス」を「使用不可」、「使用不可(PL/SQLで表示されるステータス)」または「使用不可(URLにリダイレクト)」に設定すると、この属性に入力したテキストが表示されます。「ステータス」を「使用可能」に設定した場合、この属性に入力したテキストは表示されません。
カンマ区切りのユーザー・リスト限定(ステータスが「制限されたアクセス」の場合のみ) | この属性はステータス「制限されたアクセス」とともに使用します。「ステータス」を「制限されたアクセス」に設定すると、この属性に示されているユーザーのみがアプリケーションを実行できます。 この属性を使用するには、次のステップを実行します。 「ステータス」リストから、制限されたステータスを選択します。 表示されたフィールドに、アプリケーションを実行できるユーザーのカンマ区切りのリストを入力します。 「変更の適用」をクリックします。

#### 6.5.1.2.4 エラー処理

表6-6に示す「エラー処理」属性を使用して、アプリケーションがエラーのログを記録する方法を制御または変更します。

ヒント:

ここで指定するエラー処理ファンクションは、同様のページ・レベル属性によって上書きされます。

表6-6 「アプリケーション定義」の「エラー処理」

属性 | 説明
--- | ---
デフォルトのエラー表示位置 | Application Expressまたはプラグインによって実行される基本検証の検証エラー・メッセージを表示する位置を指定します。検証エラー・メッセージは、通知領域(ページ・テンプレートの一部として定義)またはフィールド・ラベル内に表示できます。オプションは次のとおりです。 フィールドおよび通知でインライン表示: エラー・メッセージは、ページ・テンプレートの一部として定義される通知領域に表示されます。 フィールドでインライン表示: エラー・メッセージはフィールド・ラベル内に表示されます。 通知でインライン表示: ページでエラーが発生した場合に`#NOTIFICATION_MESSAGE#`テンプレート置換文字列に表示されます。
エラー処理ファンクション | 既存のエラー・メッセージを変更し、よりわかりやすいメッセージを表示するか、エラーが発生した場合にそれをログに記録するためにコールするPL/SQLエラー・ファンクションの名前を入力します。このファンクションは、データベース内のパッケージ・ファンクションまたはスタンドアロンのファンクションを参照できます。次に例を示します。
    log_apex_error
データベースのPL/SQLパッケージまたはスタンドアロンのファンクションを参照する場合、`#OWNER#`置換文字列を使用して、カレント・アプリケーションの解析対象スキーマを参照します。次に例を示します。
    #OWNER#.log_apex_error
`apex_error`パッケージで説明されている構文を使用してエラー処理ファンクションを実装する必要があります。
    function <name of function> (
        p_error in apex_error.t_error )
        return apex_error.t_error_result
関連項目: 『Oracle Application Express APIリファレンス』の`apex_error`に関する説明 注意: ここで指定するエラー処理ファンクションは、ページ・レベルで指定されるエラー処理により上書きされます。

#### 6.5.1.2.5 グローバル通知

「グローバル通知」属性を使用して、アプリケーション・ユーザーにシステム・ステータスを通知します。たとえば、この属性を使用して、スケジュールされた停止時間をユーザーに通知したり、アプリケーションの可用性に関するその他のメッセージを通知できます。アプリケーションで使用されるページ・テンプレートに`#GLOBAL_NOTIFICATION#`置換文字列が含まれている場合は、ここに入力するテキストがその文字列の場所に表示されます。

グローバル通知を作成するには、次のステップを実行します。

1. ページ・テンプレートに`#GLOBAL_NOTIFICATION#`置換文字列を含めます。

2. アプリケーション定義の編集ページにナビゲートし、「グローバル通知」属性にメッセージを入力します。

3. 「変更の適用」をクリックします。

関連項目:

置換文字列の理解およびページ・テンプレート

#### 6.5.1.2.6 置換

「置換」セクションを使用して、アプリケーションで使用する静的置換文字列を定義します。アプリケーション内の多くの場所に出現する文字列やラベルに静的置換文字列を使用できます。置換文字列を作成するには、「置換文字列」列に文字列名を、「置換値」列に文字列値を入力します。

静的置換文字列を定義すると、このページで定義した「置換値」を変更するだけで、アプリケーション内の複数の場所のテキスト文字列をまとめて変更できます。

関連項目:

置換文字列の理解

#### 6.5.1.2.7 ビルド・オプション

「ビルド・オプション」セクションには、既存のビルド・オプションが表示されます。ほとんどのアプリケーションには、ビルド・オプション属性があります。ビルド・オプションは、`INCLUDE`または`EXCLUDE`という2つの値をとることができます。属性を含めるように指定すると、Application Expressエンジンは、実行時にその属性を考慮します。ただし、属性を除外するように指定すると、Application Expressエンジンは、その属性を存在しないものとして処理します。

オブジェクトを特定のインストールから除外する場合を除き、ビルド・オプションは指定しないでください。

関連項目:

ビルド・オプションを使用した構成の制御

## 6.5.2 セキュリティ属性の構成

「セキュリティ属性の編集」ページを使用して、アプリケーション内のすべてのページのセキュリティを構成します。セキュリティ属性は、認証、認可、セッション管理、セッション・ステート保護、ブラウザ・セキュリティ、データベース・セッションのカテゴリに分類されます。

トピック:

- セキュリティ属性の編集ページへのアクセス
- セキュリティ属性ページ

関連項目:

アプリケーション・セキュリティの管理

### 6.5.2.1 セキュリティ属性の編集ページへのアクセス

セキュリティ属性の編集ページにアクセスするには、次のステップを実行します。

1. ワークスペースのホームページで、「アプリケーション・ビルダー」アイコンをクリックします。
2. アプリケーションを選択します。
3. 「共有コンポーネント」をクリックします。

   共有コンポーネント・ページが表示されます。

4. 「セキュリティ」で、「セキュリティ属性」をクリックします。

   セキュリティ属性の編集ページが表示されます。

5. 該当する属性を編集し、「変更の適用」をクリックします。

ヒント:

「アプリケーション定義の編集」にナビゲートして「セキュリティ」タブをクリックしても、「セキュリティ属性の編集」にアクセスできます。アプリケーション定義の編集ページへのアクセスを参照してください。

### 6.5.2.2 セキュリティ属性ページ

セキュリティ属性の編集ページは、次のセクションに分かれています。

注意:

必須の値には赤いアスタリスク(*)が付いています。

トピック:

- 認証
- 認可
- セッション管理
- セッション・ステート保護
- ブラウザ・セキュリティ
- データベース・セッション

#### 6.5.2.2.1 認証

認証は、ユーザーがアプリケーションにアクセスする前に、そのユーザーの本人確認を行うプロセスです。アプリケーションに対して複数の認証スキームを定義できますが、一度にカレントに設定できるスキームは1つだけです。表6-7に、認証で使用可能な属性を示します。

表6-7 認証属性

属性 | 説明
--- | ---
パブリック・ユーザー | データベース・アクセス記述子(DAD)を介したデータベースへの接続に使用するOracleスキーマ(またはユーザー)を示します。ユーザーの本人確認が行われると、Application Expressエンジンが組込み置換文字列`APP_USER`の値を設定して、各ユーザーを追跡します。 `APP_USER`がこの値と等しいと、Application Expressエンジンはカレント・セッションをパブリック・ユーザー・セッションとみなします。Application Expressエンジンは、次の組込み表示条件をサポートしています。 `USER_IS_PUBLIC_USER` `USER_IS_NOT_PUBLIC_USER` カレント・アプリケーション・ユーザー(`APP_USER`)がこの属性の値と等しい場合、ユーザーはパブリック・ユーザーとしてログインされます。一部のアプリケーションには、パブリック・モード(ログインが不要)およびプライベート・モード(ログインが必要)があります。ユーザーがパブリック・ユーザーかどうかを判断して、条件付きで情報の表示と非表示を切り替えることができます。 たとえば、ユーザーがパブリック・ユーザーの場合はログイン・ボタンを表示し、ユーザーがパブリック・ユーザーでない場合にはログアウト・リンクを表示するように設定できます。この値を参照するには、`APEX_APPLICATION.G_PUBLIC_USER`を使用します。 関連項目: HOME_LINKおよび条件付きのレンダリングおよびプロセスの理解
認証スキーム | アプリケーションに定義されている認証スキームから選択します。認証スキームを作成するには、「認証スキームの定義」をクリックします。 関連項目: 認証の仕組みおよび認証スキームの作成

#### 6.5.2.2.2 認可

アプリケーション認可スキームによって、アプリケーション内のすべてのページへのアクセスが制御されます。アプリケーションに不当にアクセスすると、リクエストしたページに関係なく、エラー・ページが表示されます。表6-8に、「認可」で使用可能な属性を示します。

表6-8 認可属性

属性 | 説明
--- | ---
認可スキーム | アプリケーションの認可スキームを指定します。アプリケーションの認可スキームは、アクセス制御のためにアプリケーションに定義されます。ここで必要な認可スキームをアプリケーション・レベルで設定するには、アプリケーションのすべてのページが定義済の認可チェックに合格する必要があります。
認可スキームの定義 | 「認可スキームの定義」をクリックして、認可スキームを作成します。
パブリック・ページで実行 | アプリケーション・レベルの認可スキームをパブリック・ページ(つまり、認可を必要としないページ)でチェックするかどうかを制御します。オプションは次のとおりです。 はい: 「はい」を選択し、ページがパブリックの場合は、アプリケーション認可がチェックされます。 いいえ: 「いいえ」を選択し、ページがパブリックの場合は、アプリケーション認可が無視されます。 通常、認可はユーザー名に依存するため、アプリケーション・レベルの認可は、(「パブリック・ページで実行」にかかわらず)ログイン・ページでは評価されません。

関連項目:

アプリケーションへの認可スキームの割当て

#### 6.5.2.2.3 セッション管理

「セッション・タイムアウト」属性を使用して、アプリケーションでWebブラウザが開いたまま放置されたコンピュータに対する公開を抑制します。表6-9に、「セッション・タイムアウト」で使用可能な属性を示します。

表6-9 「セッション管理」

属性 | 説明
--- | ---
セッションを再結合 | この属性を使用して、Application ExpressがセッションIDを含まないアプリケーションURLをサポートするかどうかを制御します。「セッションを再結合」が有効で、URLにセッションIDが含まれていない場合、Application ExpressはセッションCookieを使用して既存のセッションを結合することを試みます。 このページ・レベルの値は、より制限的なインスタンス・レベルの設定によってオーバーライドされます。 注意: セッションの再結合を有効にすると、攻撃者が既存のエンド・ユーザー・セッションを乗っ取ることが可能になるため、アプリケーションのセキュリティが侵害される可能性があります。「セッションを再結合」についてを参照してください。 「セッションを再結合」のオプションは次のとおりです。 アプリケーション・デフォルト - アプリケーション・レベルの設定が適用されます。 無効 - URLにセッションIDが含まれていない場合、Application Expressは新しいセッションを作成します。 パブリック・セッションに対して有効 - URLがパブリック・ページのもので、セッションIDが含まれていない場合、Application Expressはそのアプリケーションに対して確立された既存のセッションCookieの利用を試みます。Application Expressは、セッションがまだ認証されていない場合にのみCookieを使用して結合します。 すべてのセッションに対して有効 - URLにセッションIDが含まれておらず、次の条件が満たされる場合、Application Expressはそのアプリケーションに対して確立された既存のセッションCookieの利用を試みます。 セッション・ステート保護がそのアプリケーションに対して有効で、URLに有効なチェックサムが含まれています。パブリック・ブックマークの場合、最も制限的なアイテム・レベルの保護は「制限なし」または「チェックサムが必要 - アプリケーション・レベル」である必要があります。 または、URLにペイロードが含まれていません(リクエスト・パラメータ、クリア・キャッシュまたはデータ値ペア)。 このオプションでは、「フレームへの埋込み」を「同じ起点から許可」または「拒否」に設定する必要があります。これはURLペイロードの条件に関連付けられませんが、セッション・ステート保護されるURLにも適用されます。
ディープ・リンク | アプリケーションのディープ・リンクを有効または無効にします。オプションは次のとおりです。 有効: 特定のページへのURLは、最終的にそのページにリダイレクトされます(場合によってはユーザーのログイン後)。 無効: URLに有効なセッションIDが含まれていない場合、Application Expressは新しいセッションを開始し、アプリケーションのホーム・ページにリダイレクトします。 たとえば、多くの場合、ブラウザは開いたタブのURLを保存し、再起動後にセッションをリストアしようとするため、ディープ・リンクが発生します。この動作は望ましくない場合があります(URLがマルチステップ・ウィザードの途中のページを指す場合など)。「無効化」を選択すると、Application Expressは新しいセッションを開始し、アプリケーションのホームページにリダイレクトします。 関連項目: セキュリティ(ページ・レベルでこの動作を上書きする場合の詳細)
最大セッションの長さ | セッションが存続してこのアプリケーションで使用できる期間(秒単位)を定義します。 セッションの存続期間を制御する正の整数を入力します。 セッションを無期限に存続させる場合は、0を入力します。 ワークスペース・レベルまたはインスタンス・レベルで定義されたセッションの存続期間を使用する場合は、値を空のままにします。 セッション存続期間より、8時間ごとに実行され、12時間より前から存在するセッションを削除するジョブの操作が優先される場合があります。
セッション・タイムアウトURL | 最大セッション存続期間を超えた際にリダイレクトされるオプションのURLを入力します。このURLのターゲット・ページは、Application Expressで実装された場合、パブリック・ページである必要があります。 このページの一般的な用途は、ユーザーにセッションの有効期間を知らせ、ログイン・リンクや他のオプションを表示することです。URLが入力されていない場合、ユーザーには、メッセージ「セッションがタイムアウトしました。」およびアプリケーションのホームページのリンクが表示されます。`#LOGOUT_URL#`を入力すると、Application Expressは、ユーザーがアプリケーションのログアウト・リンクをクリックした場合と同じようにログアウトを実行します。 次の3つの置換アイテムのみがサポートされます。 `&APP_SESSION.` `&SESSION.` `&APP_ID.` このURLは特別な目的を持つため、リンクに`&APP_SESSION.`および`&SESSION.`のいずれも含める必要はありません。
最大セッション・アイドル時間 | セッション・アイドル時間は、最後のページ・リクエストと次のページ・リクエストの間の時間です。オプションは次のとおりです。 このアプリケーションで使用するセッションのアイドル時間を制御するには、正の整数を入力します。 セッション・アイドル時間のチェックが実行されないようにするには、値を0に設定します。 ワークスペース・レベルまたはインスタンス・レベルで定義されたアイドル期間を使用する場合は、値を空のままにします。
セッション・アイドル・タイムアウトURL | 最大セッション・アイドル時間を超えた際にリダイレクトされるオプションのURLを入力します。このURLのターゲット・ページは、Application Expressで実装された場合、パブリック・ページである必要があります。このページの一般的な用途は、ユーザーにセッションの有効期間を知らせ、ログイン・リンクや他のオプションを表示することです。URLが入力されていない場合、ユーザーには、メッセージ「セッションがタイムアウトしました。」およびアプリケーションのホームページのリンクが表示されます。`#LOGOUT_URL#`を入力すると、Application Expressは、ユーザーがアプリケーションのログアウト・リンクをクリックした場合と同じようにログアウトを実行します。 このURLでは次の3つの置換アイテムのみがサポートされます: `&APP_SESSION.` `&SESSION.` `&APP_ID.` このURLは特別な目的を持つため、リンクに`&APP_SESSION.`および`&SESSION`のいずれも含める必要はありません。

関連項目:

セッション・タイムアウトの使用についておよびOracle Application Express管理ガイドの「セッション・タイムアウトの構成」

#### 6.5.2.2.4 セッション・ステート保護

セッション・ステート保護を有効にすると、ハッカーがアプリケーション内のURLを改ざんするのを防ぐことができます。URL改ざんにより、プログラム・ロジック、セッション・ステートの内容および情報プライバシが悪影響を受ける可能性があります。表6-10に、「セッション・ステート保護」で使用可能な属性を示します。

表6-10 「セッション・ステート保護」

属性 | 説明
--- | ---
セッション・ステート保護 | 「セッション・ステート保護」リストから選択して、アプリケーションのセッション・ステート保護を有効化または無効化します。「有効」を選択すると、ページおよびアイテム・レベルで定義されたセッション・ステート保護コントロールがオンになります。詳細は、フィールドレベル・ヘルプを参照してください。
この後に作成されるURLの許可 | ブックマーク済リンクにチェックサムが含まれ、セッション・ステート保護がアプリケーションに対して有効な場合、ブックマーク済リンクをこのアプリケーションのページへのアクセスに使用できるようになった日時がリストされます。 この日付および時間より前に作成されたブックマークは、ブックマーク済リンクにチェックサムが含まれ、セッション・ステート保護がアプリケーションに対して有効な場合、このアプリケーションへのアクセスに使用できません。チェックサムを含まないブックマークまたは不要なチェックサムを含むブックマークは、この属性による影響を受けません。これらの有用性は、他の基準を使用して決定されます。非表示のアプリケーション属性(チェックサム・ソルト)は、計算時と、ページのレンダリング時に生成されたf?p= URLに含まれるチェックサムのその後の検証時に使用されます。チェックサムは、「セッション・ステート保護」がアプリケーションに対して有効な場合に含まれます。このチェックサム・ソルト属性は、「ブックマークの無効化」ボタンをクリックすると、いつでもリセットできます。
ブックマーク・ハッシュ関数 | ブックマーク可能なURLの、アプリケーション・レベルおよびユーザー・レベルのチェックサムを作成するために使用されます。
ブックマークの無効化 | 「ブックマークの無効化」をクリックすると、この非表示のアプリケーション属性(チェックサム・ソルト)のソルト属性をいつでもリセットできます。このボタンをクリックすると、以前に生成されたチェックサムを含むブックマーク済URLは、その後にアプリケーションへのアクセスに使用されるときに失敗します。 ヒント: 「ブックマークの無効化」をクリックして、ブックマーク・ハッシュ関数を変更し、チェックサムを計算する別のアルゴリズムに切り替えることもできます。
セッション・ステート保護の管理 | 「セッション・ステート保護の管理」をクリックして、セッション・ステート保護を構成します。

関連項目:

セッション・ステート保護の理解

#### 6.5.2.2.5 ブラウザ・セキュリティ

表6-11に、「ブラウザ・セキュリティ」で使用可能な属性を示します。

表6-11 「ブラウザ・セキュリティ」

属性 | 説明
--- | ---
キャッシュ | 「キャッシュ」を使用して、アプリケーションのページ・コンテンツのブラウザによるキャッシュを有効化または無効化します。有効化すると、ブラウザはこのアプリケーションのページ・コンテンツを、メモリー内とディスク上の両方のキャッシュに保存します。キャッシュが有効になっている場合に、ブラウザの「戻る」ボタンがクリックされると、通常、ページはサーバーからではなくキャッシュからロードされます。無効にすると、ブラウザはアプリケーションのページ・コンテンツを保存しないように指示され、URLが変更されるたびにサーバーから最新のページ・コンテンツをリクエストします。 機密データが保存されないようにするために、この属性を無効にすることをお薦めします。そうしない場合、ログアウト後にブラウザ履歴で前に戻り、以前のセッションのキャッシュされたコンテンツを表示できる可能性があります。ブラウザのキャッシュを無効にすると、部分ページ・リフレッシュを使用するページ(対話モード・レポートを含むページなど)での問題も回避できます。 この属性が「無効」に設定されている場合、ページ・コンテンツをディスク上またはメモリー内にキャッシュしないようにブラウザに指示するHTTPヘッダー`cache-control: no-store`がApplication Expressにより送信されます。この機能には、HTTPヘッダー・レスポンス変数cache-controlをサポートする最新のブラウザが必要であることに注意してください。
フレームへの埋込み | ブラウザのフレーム内にアプリケーションのページを表示するかどうかを制御します。使用可能なオプションは次のとおりです。 拒否: 実行するサイトに関係なく、ページをフレームに表示できません。 同じ起点から許可: ページ自体と同じ起点のフレームにのみ、ページを表示できます。 許可: ページを任意のフレームで表示できます。 フレーム内のページの表示は、クリックジャック攻撃で不正に使用される場合があります。クリックジャック攻撃では、攻撃者は複数のレイヤーを使用して、ユーザーがトップ・レベル・ページをクリックしようとしたときに、別のページ上のボタンやリンクをクリックさせます。したがって、意図したページに対するクリック(またはキーストローク)が攻撃者によりハイジャックされ、別のページに移動させられます。 詳細は、フィールドレベル・ヘルプを参照してください。
HTMLエスケープ・モード | Oracle Application Expressで特殊文字をエスケープする方法を定義します。オプションは次のとおりです。 基本: `&`、`"`、`<`および`>`をエスケープします 拡張: `&`、`"`、`<`、`>`、`'`、`/`およびASCII以外の文字(データベース・キャラクタ・セットが`AL32UTF8`ではない場合)をエスケープします
HTTPレスポンス・ヘッダー | Oracle Application Expressが各レスポンスで送信する必要があり、別の方法(たとえば、「フレームへの埋込み」属性を使用した`X-Frame-Options`)でサポートしていないアプリケーション固有の追加のHTTPヘッダーを入力します。 次に例を示します。 `X-XSS-Protection: 1; mode=block` `X-Content-Type-Options: nosniff`

ヒント:

「キャッシュ」および「フレームへの埋込み」のいずれにも、HTTPヘッダー・レスポンス変数X-Frame-Optionsをサポートする最新のブラウザが必要です。

#### 6.5.2.2.6 データベース・セッション

表6-12に、「データベース・セッション」で使用可能な属性を示します。

表6-12 「データベース・セッション」

属性 | 説明
--- | ---
解析対象スキーマ | アプリケーション内のすべてのSQLおよびPL/SQLが解析対象となるスキーマを指定します。#OWNER#を使用すると、SQL問合せおよびPL/SQL (リージョンやプロセスなど)でこの値を参照できます。
初期化PL/SQLコード | この属性を使用して、現在の「ページの表示」または「ページの受入れ」リクエストに関連付けられたデータベース・セッションに対してコンテキストを設定するPL/SQLブロックを入力します。ここに入力したブロックは、ページ・リクエスト時の非常に早い段階(`APP_USER`値が確立された直後)で実行されます。`APP_USER`の値(:`APP_USER`または`v`('`APP_USER`')を使用)をブロック内で使用できます。セッション・ステート内の他のアイテムの値も参照できますが、これらのアイテムは現在のページ・リクエストが開始する前にセッション・ステートに確立されている必要があります。例を表示するには、フィールドレベル・ヘルプを参照してください。
PL/SQLコードのクリーンアップ | この属性を使用して、ページ・プロセスの最後に実行するPL/SQLブロックを入力します。これは、VPDコンテキストまたはデータベース・リンクなど、使用されたリソースの解放またはクリーンアップに使用できます。例を表示するには、フィールドレベル・ヘルプを参照してください。
ランタイムAPIの使用状況 | このアプリケーションによる、アプリケーションとワークスペース・データを変更するOracle Application Express APIへの実行中のアクセス方法を制御します。オプションは次のとおりです。 このアプリケーションを変更: アプリケーションはアプリケーション自体を変更できます。 他のアプリケーションを変更: アプリケーションはワークスペース内の他のアプリケーションを変更できます。 ワークスペース・リポジトリを変更: アプリケーションはワークスペース・ユーザーとグループを変更できます。

関連項目:

認可を介したセキュリティの提供およびOracle Label Security管理者ガイド

## 6.5.3 グローバリゼーション属性の構成

「グローバリゼーション属性の編集」で属性を編集して、アプリケーションのグローバリゼーション・オプションを構成します。アプリケーション・ビルダーでは、異なる言語で同時に実行可能なアプリケーションを開発できます。

1つのアプリケーションを、異なる言語をサポートするよう変換できます。「グローバリゼーション属性の編集」ページの属性を使用して、アプリケーションのプライマリ言語や、日付書式、時間書式、タイムスタンプ書式、タイムゾーン書式およびCSVエンコーディングのデフォルトなどのグローバリゼーション・オプションを指定します。

トピック:

- グローバリゼーション属性のページへのアクセス
- グローバリゼーション属性の編集ページ

関連項目:

アプリケーションのグローバリゼーションの管理

### 6.5.3.1 グローバリゼーション属性のページへのアクセス

グローバリゼーション属性の編集ページにアクセスするには、次のステップを実行します。

1. ワークスペースのホームページで、「アプリケーション・ビルダー」アイコンをクリックします。
2. アプリケーションを選択します。

   アプリケーションのホームページが表示されます。

3. 「共有コンポーネント」をクリックします。

   共有コンポーネント・ページが表示されます。

4. 「グローバリゼーション」で、「グローバリゼーション属性」をクリックします。

   グローバリゼーション属性の編集ページが表示されます。

5. 該当する属性を編集し、「変更の適用」をクリックします。

ヒント:

「アプリケーション定義の編集」にナビゲートして「グローバリゼーション」タブをクリックしても、グローバリゼーション属性の編集ページにアクセスできます。アプリケーション定義の編集ページへのアクセスを参照してください。

### 6.5.3.2 グローバリゼーション属性の編集ページ

次の項では、グローバリゼーション属性の編集ページで使用可能な属性について説明します。

注意:

必須の値には赤いアスタリスク(*)が付いています。

トピック:

- アプリケーションのプライマリ言語
- アプリケーション言語の導出元
- 文書方向
- アプリケーション日付書式
- アプリケーションの日時書式
- アプリケーションのタイムスタンプ書式
- アプリケーションのタイムスタンプ・タイムゾーン書式
- 文字の値の比較
- 文字の値の比較動作
- 自動タイムゾーン
- 自動CSVエンコーディング

関連項目:

アプリケーションへのプライマリ言語の指定

#### 6.5.3.2.1 アプリケーションのプライマリ言語

アプリケーションを開発する言語を指定します。この言語が、すべての変換の元となるベース言語になります。たとえば、英語で作成されたアプリケーション100が、フランス語に変換され、アプリケーション101として公開されたとします。英語がアプリケーションのプライマリ言語になります。

アプリケーションに対するすべての変更は、ここで指定したプライマリ言語で行う必要があります。

#### 6.5.3.2.2 アプリケーション言語の導出元

翻訳されたアプリケーション言語がApplication Expressによって導出される方法を指定します。アプリケーションのプライマリ言語は静的にすることも、Webブラウザ言語から導出したり、ユーザー・プリファレンスやアイテムから特定することもできます。

使用可能なオプションの詳細は、フィールドレベル・ヘルプを参照してください。

#### 6.5.3.2.3 文書方向

文書方向を設定します。オプションは次のとおりです。

- 左から右

- 右から左

#### 6.5.3.2.4 アプリケーション日付書式

アプリケーションで使用する日付書式を決定します。

この日付書式を使用すると、`NLS_DATE_FORMAT`データベース・セッションの設定が変更されてから、アプリケーション内のページが表示または送信されます。この値には、有効なOracle日付書式マスクを含むリテラル文字列、または置換構文を使用したアイテム参照を指定できます。値が指定されていない場合は、データベース・セッションからデフォルトの日付書式が実行時に取得されます。次の例を参考にしてください。

    Month DD, YYYY
    &MY_DATE_FORMAT.

#### 6.5.3.2.5 アプリケーションの日時書式

アプリケーションで使用する日時書式を指定します。

この日時書式は、置換参照`&APP_DATE_TIME_FORMAT.`を使用するか、PL/SQLで`v('APP_DATE_TIME_FORMAT')`ファンクションを使用して、アプリケーション内で参照できます。この属性によってNLS設定が変更されることはありません。この値には、有効なOracle日付書式マスクを含むリテラル文字列、または置換構文を使用したアイテム参照を指定できます。この属性値を指定しない場合、`APP_DATE_TIME_FORMAT`への参照はNLSデータベース・セッションの日付書式とNLS時刻書式を返します。次の例を参考にしてください。

    Month DD, RRRR HH24:MI
    &MY_DATE_TIME_FORMAT.

#### 6.5.3.2.6 アプリケーションのタイムスタンプ書式

アプリケーションで使用するタイムスタンプ書式を決定します。LOVからタイムスタンプ書式を選択します。

このタイムスタンプ書式を使用すると、`NLS_TIMESTAMP_FORMAT`データベース・セッションの設定が変更されてから、アプリケーション内のページが表示または送信されます。この値には、有効なOracleタイムスタンプ書式マスクを含むリテラル文字列、または置換構文を使用したアイテム参照を指定できます。値が指定されていない場合は、データベース・セッションからデフォルトのタイムスタンプ書式が実行時に取得されます。次の例を参考にしてください。

    DD-MON-RR HH.MI.SSXFF AM
    &MY_TIMESTAMP_FORMAT.

#### 6.5.3.2.7 アプリケーションのタイムスタンプ・タイムゾーン書式

アプリケーションで使用するタイムゾーン付きのタイムスタンプ書式を決定します。

この日付書式を使用すると、`NLS_TIMESTAMP_TZ_FORMAT`データベース・セッションの設定が変更されてから、アプリケーション内のページが表示または送信されます。この値には、有効なOracleタイムスタンプ書式マスクを含むリテラル文字列、または置換構文を使用したアイテム参照を指定できます。値が指定されていない場合は、データベース・セッションからデフォルトのタイムゾーン付きのタイムスタンプ書式が実行時に取得されます。次の例を参考にしてください。

    DD-MON-RR HH.MI.SSXFF AM TZR
    &MY_TIMESTAMP_TZ_FORMAT.

#### 6.5.3.2.8 文字の値の比較

`ORDER BY`、`LIKE`、`MIN/MAX`など、様々なSQL操作およびSQL句で文字の値を比較する際の照合順序を決定します。

この値を使用すると、クラシック・レポートおよび対話モード・レポート・リージョンのSQL問合せの実行に対する`NLS_SORT`データベース・セッション・パラメータが変更されます。値が指定されていない場合は、データベース・セッションからデフォルト値が実行時に取得されます。次の例を参考にしてください。

    BINARY
    GERMAN
    CANADIAN_M

#### 6.5.3.2.9 文字の値の比較動作

`LIKE`、`MIN/MAX`など、SQL操作の照合動作を決定します。

この値を使用して、クラシック・レポート、対話モード・レポート、リスト・ビューの各リージョン、およびプラグインAPIのSQL問合せの実行の`NLS_COMP`データベース・セッション・パラメータを変更します。オプションは次のとおりです。

- データベース・セッションのNLS設定(デフォルト): NLS_COMP値は、実行時にデータベース・セッションから取得されます。

- バイナリ: `WHERE`句および他のSQL操作での比較はバイナリです。

- 言語形式: `WHERE`句および他のSQL操作での比較は、「文字の値の比較」属性(`NLS_SORT`)で指定した言語ソートを使用します。

#### 6.5.3.2.10 自動タイムゾーン

データベース・セッションのタイムゾーンの設定を制御します。「はい」に設定すると、クライアント・タイムゾーンがクライアントのWebブラウザから取得され、Application Expressセッションの継続時間用に設定されます。

その後のページ・ビューには、ページ・ビューごとに適切なデータベース・セッション・タイムゾーンが設定されます。設定後、この設定は`APEX_UTIL.SET_SESSION_TIME_ZONE`を使用して上書きしたり、`APEX_UTIL.RESET_SESSION_TIME_ZONE`を使用して再設定することができます。

関連項目:

Oracle Application Express APIリファレンス

#### 6.5.3.2.11 自動CSVエンコーディング

自動CSVエンコーディングは、アプリケーションのすべてのカンマ区切り(CSV)レポートの出力エンコーディングを制御します。自動CSVエンコーディングのデフォルト値は「はい」です。自動CSVエンコーディングを「はい」に設定した場合、CSVレポートの出力は、ローカライズされたデスクトップ・アプリケーションと互換性のあるキャラクタ・セットに変換されます。CSVエンコーディングのキャラクタ・セットは、「アプリケーション言語の導出元」の設定によって決まります。

アプリケーション・ビルダーのページのエンコーディングは、Oracle Application Expressへのアクセスに使用されるデータベース・アクセス記述子(DAD)のキャラクタ・セットによって決まります。たとえば、データベース・アクセス記述子のキャラクタ・セットがAL32UTF8である場合、Oracle Application Expressユーザー・インタフェースの全アプリケーションのすべてのページはUTF-8でエンコードされます。

デフォルトでは、レポート・リージョンからのCSV出力は、データベース・アクセス記述子と同じキャラクタ・セットでエンコードされます。ただし、一部のデスクトップ・スプレッドシート・アプリケーションでは、データがクライアント・デスクトップのオペレーティング・システムのキャラクタ・セットでエンコードされる必要があります。マルチバイト・データの場合、レポート・リージョンからのCSV出力をデスクトップのスプレッドシート・アプリケーションで開くと壊れて表示されることがよくあります。これは、レポート・リージョンからのCSV出力のエンコーディングが、デスクトップ・アプリケーションで必要とされるエンコーディングと異なるためです。自動CSVエンコーディングを有効にすると、この問題が解決します。

たとえば、アプリケーションに対するユーザーの言語プリファレンスが`de`である場合、データベース・アクセス記述子のキャラクタ・セット設定にかかわらず、CSVデータは``西ヨーロッパ語(Windows 1252)でエンコードされます。ユーザーの言語プリファレンスが`zh-cn`の場合、CSVデータは中国語(GBK)でエンコードされます。

## 6.5.4 アプリケーションのユーザー・インタフェースの管理

「ユーザー・インタフェース」ページの属性を編集して、アプリケーションのデフォルト特性を決定し、ターゲット環境(デスクトップまたはモバイルなど)用の表示を最適化します。ユーザー・インタフェース・ページの一般的な属性とユーザー・インタフェースの詳細ページの特定の属性を編集することで、ユーザー・インタフェースをカスタマイズできます。

トピック:

- ユーザー・インタフェース属性へのアクセス
- ユーザー・インタフェース・ページ
- アプリケーション・ロゴの定義
- 新しいユーザー・インタフェースの作成
- ユーザー・インタフェースの詳細ページ

### 6.5.4.1 ユーザー・インタフェース属性へのアクセス

ユーザー・インタフェース属性にアクセスするには、次のステップを実行します。

1. ワークスペースのホームページで、「アプリケーション・ビルダー」アイコンをクリックします。
2. アプリケーションを選択します。

   アプリケーションのホームページが表示されます。

3. 「共有コンポーネント」をクリックします。

   共有コンポーネント・ページが表示されます。

4. 「ユーザー・インタフェース」で「ユーザー・インタフェース属性」をクリックします。

   ユーザー・インタフェース属性ページが表示されます。詳細は次を参照してください。

5. 特定のユーザー・インタフェースの属性を編集するには、「ユーザー・インタフェース」リージョンで、以前に定義されたユーザー・インタフェースを選択します。

   ユーザー・インタフェースの詳細ページが表示されます。

6. 該当する属性を編集し、「変更の適用」をクリックします。

ヒント:

「アプリケーション定義の編集」にナビゲートして「ユーザー・インタフェース」タブをクリックしても、「ユーザー・インタフェース」属性にアクセスできます。アプリケーション定義の編集ページへのアクセスを参照してください。

関連項目:

「ユーザー・インタフェース・ページ」と「ユーザー・インタフェースの詳細ページ」

### 6.5.4.2 ユーザー・インタフェース・ページ

ユーザー・インタフェース・ページは、次のセクションに分かれています。

ヒント:

このページの属性の詳細は、フィールドレベル・ヘルプを参照してください。

トピック:

- 一般プロパティ
- ロゴ
- ファビコン
- ユーザー・インタフェースの検出
- ユーザー・インタフェース

関連項目:

ユーザー・インタフェース属性へのアクセス

#### 6.5.4.2.1 一般プロパティ

「一般プロパティ」を使用して、アプリケーション・ユーザー・インタフェースの基本的な特性を定義します。表6-13に、「一般プロパティ」のすべての属性を示します。

表6-13 「ユーザー・インタフェース」の「一般プロパティ」

属性 | 説明
--- | ---
静的ファイルの接頭辞 | `#APP_IMAGES#`置換文字列の使用時に、Webサーバーが静的ファイルを指定する場合に使用する仮想パスを決定します。 データベースのアプリケーション定義とともに格納されたファイルを参照するものを指定しないでください。 パフォーマンス上の理由から、アプリケーション・ファイルをWebサーバーに格納することもできます。任意の有効なURLを使用してそれらを参照します。 次に例を示します。 `/myFiles/` `http://contentDeliveryNetwork.com/myFiles/`
イメージ接頭辞 | アプリケーション・ビルダーによって分散されたイメージ・ディレクトリを指すためにWebサーバーが使用する仮想パスを決定します。インストール時、仮想パスは`/i/`として構成されます。不明な場合は、管理者に連絡してください。 静的テキスト(ページ、リージョン・ヘッダー、リージョン・フッターなど)にイメージを埋め込む場合は、置換文字列`#IMAGE_PREFIX#`を使用してイメージを参照できます。たとえば、イメージ`go.gif`を参照するには、次の構文を使用します。
    <img src="#IMAGE_PREFIX#go.gif">
注意: 入力されたイメージ接頭辞がインスタンス・イメージ接頭辞と同じである場合、アプリケーション・レベル属性は常にnullになります。これにより、異なるイメージ接頭辞を持つ可能性のある様々なインスタンス間で、アプリケーションを簡単に移動できます。 関連項目: IMAGE_PREFIX
メディア・タイプ | インターネット・メディア・タイプを入力します。インターネット・メディア・タイプは、2つの部分で構成される、インターネット上のファイル形式を表す識別子です。メディア・タイプは、少なくともタイプとサブタイプの2つの部分で構成され、オプションで1つ以上のパラメータを指定します。メディア・タイプは、ページ描画の際にHTTPヘッダーのContent-Typeで使用されます。 ページ・レベルのメディア・タイプが、アプリケーション・レベルのメディア・タイプを上書きします。この属性のデフォルト値は`NULL`です。ページ・レベルとアプリケーション・レベルの両方でメディア・タイプの値が`NULL`の場合、メディア・タイプとして`text/html`が使用されます。

#### 6.5.4.2.2 ロゴ

「ロゴ」属性は、アプリケーション・ロゴを定義する際に使用します。アプリケーション・ロゴは、テキスト・ベースにもイメージ・ベースにもできます。この機能を使用するには、ページ・テンプレートに`#LOGO#`置換文字列が含まれている必要があります。

関連項目:

アプリケーション・ロゴの定義

#### 6.5.4.2.3 ファビコン

この属性にファビコンHTMLコードを入力して、ファビコン(またはショートカット・アイコン)を作成します。この機能を使用するには、ページ・テンプレートに`#FAVICONS#`置換文字列が含まれている必要があります。次に例を示します。

    <link rel="shortcut icon" href="/i51/favicon.ico">
    <link rel="icon" sizes="16x16" href="/i51/favicon-16x16.png">
    <link rel="icon" sizes="32x32" href="/i51/favicon-32x32.png">
    <link rel="apple-touch-icon" sizes="180x180" href="/i51/favicon-180x180.png">

#### 6.5.4.2.4 ユーザー・インタフェースの検出

自動検出が失敗した際に、Application Expressが使用可能なユーザー・インタフェースを表示するためにロードする必要のあるスタイルシートのCSSファイルURLを入力します。各URLを新しい行に記述する必要があります。ファイルの縮小バージョンを指定する場合、置換文字列`#MIN#`を使用して`.min` ,を、または`#MIN_DIRECTORY#`を使用して`minified/`を通常ページ・ビューのファイルURLに含めたり、ページをデバッグ・モードで表示する場合は空の文字列を含めることができます。アプリケーションのバージョンをファイルURLに含める場合、置換文字列`#APP_VERSION#`にアクセスすることもできます。

例を表示するには、フィールドレベル・ヘルプを参照してください。

#### 6.5.4.2.5 ユーザー・インタフェース

現在のアプリケーションに定義されているユーザー・インタフェースを表示します。既存のユーザー・インタフェースを編集するには、ユーザー・インタフェース名をクリックします。新しいユーザー・インタフェースを追加するには、「新規ユーザー・インタフェースの追加」をクリックします。

関連項目:

ユーザー・インタフェース属性へのアクセス、新しいユーザー・インタフェースの作成およびユーザー・インタフェースの詳細ページ

### 6.5.4.3 アプリケーション・ロゴの定義

アプリケーション・ロゴを定義するには、次のステップを実行します。

1. ユーザー・インタフェース・ページにアクセスします。

   次に、ロゴ属性を指定します。

2. ロゴがイメージの場合:

   1. ロゴ・タイプ - 「イメージ」を選択します。

   2. ロゴ - ファイル名の拡張子(たとえば、`/i/oracle.gif`)または完全修飾されたURL (イメージを参照している場合)を含む完全なイメージ名を入力します。

   3. ロゴ属性 - ロゴの適切な属性を入力するか、リストから選択します。

3. ロゴがテキストの場合:

   1. 「ロゴ・タイプ」で、「テキスト」を選択します。

   2. ロゴ - 次のような、完全なテキスト文字列を入力します。

      `サンプル・アプリケーション`

   3. ロゴ属性 - ロゴの適切な属性を入力するか、リストから選択します。

4. 「変更の適用」をクリックします。

ヒント:

置換文字列を使用して、静的ファイル・リポジトリにアップロードされたイメージを参照することもできます。詳細は、「静的アプリケーション・ファイルの参照」および「静的ワークスペース・ファイルの参照について」を参照してください。

関連項目:

- ユーザー・インタフェース属性へのアクセス

- 「静的アプリケーション・ファイルの管理」

- 「静的ワークスペース・ファイルの管理」

- カスタム・テーマの作成

- ページ・テンプレート

### 6.5.4.4 新しいユーザー・インタフェースの作成

新しいユーザー・インタフェースを追加するには、次のステップを実行します。

1. ユーザー・インタフェース・ページにナビゲートします。
2. 「ユーザー・インタフェース」リージョンで、「新規ユーザー・インタフェースの追加」をクリックします。
3. 画面に表示されるステップに従います。

   属性の詳細は、フィールドレベル・ヘルプを参照してください。

4. 選択した内容を確認し、「作成」をクリックします。

関連項目:

ユーザー・インタフェース属性へのアクセスおよびユーザー・インタフェースの詳細ページ

### 6.5.4.5 ユーザー・インタフェースの詳細ページ

ユーザー・インタフェースの詳細ページは、次のセクションに分かれています。

トピック:

- 識別
- 属性
- ナビゲーション・メニュー
- ナビゲーション・バー
- JavaScript
- カスケード・スタイルシート
- 連結されたファイル

関連項目:

ユーザー・インタフェース属性へのアクセス

#### 6.5.4.5.1 指定

表6-14 「ユーザー・インタフェースの詳細」の「指定」

属性 | 説明
--- | ---
ユーザー・インタフェース・タイプ | 選択したインタフェース・タイプを表示します。「デスクトップ」ユーザー・インタフェースは、主としてデスクトップで使用するために設計されたアプリケーションに使用されます。「モバイル」ユーザー・インタフェースは、主としてスマートフォンおよびタブレットで使用するために設計されたアプリケーションに使用されます。
表示名 | ユーザー・インタフェースの表示名を指定します。表示名は、テーマの作成ウィザードなどのウィザードに表示されます。
順序 | ユーザー・インタフェースの表示順序を指定します。

#### 6.5.4.5.2 属性

表6-15 「ユーザー・インタフェースの詳細」の「属性」

属性 | 説明
--- | ---
自動検出 | ユーザー・インタフェースを自動的に検出する必要があるかどうかを選択します。自動検出を有効にすると、ユーザーは対応するログイン・ページまたはホームページにリダイレクトされます。
デフォルト | ユーザー・インタフェースを、アプリケーションのデフォルトのインタフェースにするかどうかを選択します。
テーマ・スタイルを選択できるようにエンド・ユーザーを有効化 | 「はい」に設定すると、エンド・ユーザーは、カスタマイズ・ダイアログ内でセッションのテーマ・スタイルを選択できます。「パブリック」とマークされたテーマ・スタイルのみを選択できます。 関連項目: ユーザーによるテーマ・スタイルの選択の可能化
ホームURL | 現在のユーザー・インタフェースに対するアプリケーションのホームページを指定します。
ログインURL | 現在のユーザー・インタフェースに対するアプリケーションのログイン・ページを指定します。
テーマ | 現在ユーザー・インタフェースに関連付けられているテーマを表示します。 関連項目: テーマの切替え
テーマ・スタイル | テーマ・スタイルを選択します。このオプションは、テーマ・スタイルをサポートする新しいテーマに対してのみ表示されます。 関連項目: テーマ・スタイルの使用
グローバル・ページ | 定義されている場合、アプリケーションのグローバル・ページが表示されます。 関連項目: すべてのページにコンポーネントを表示するグローバル・ページの作成

#### 6.5.4.5.3 ナビゲーション・メニュー

「ナビゲーション・メニュー」属性は、新しいテーマとともにのみ表示されます。

表6-16 「ユーザー・インタフェースの詳細」の「ナビゲーション・メニュー」

属性 | 説明
--- | ---
ナビゲーション・メニュー・リスト | アプリケーションのナビゲーション・メニューに利用されるリストを選択します。
位置 | このアプリケーションにナビゲーション・メニューを配置する位置を選択します。 サイド ページ・テンプレートの`#SIDE_GLOBAL_NAVIGATION_LIST#`の位置のナビゲーション・メニューのリスト・テンプレートがレンダリングされます。 トップ ページ・テンプレートの`#TOP_GLOBAL_NAVIGATION_LIST#`の位置のナビゲーション・メニューのリスト・テンプレートがレンダリングされます。 たとえば、「サイド」を選択すると、ページの左側のツリーとしてナビゲーションをレンダリングできます。「トップ」を選択すると、ページのヘッダーのメニュー・バーとしてナビゲーションをレンダリングできます。
リスト・テンプレート | このアプリケーションのナビゲーション・メニューのレンダリングに使用されるリスト・テンプレートを選択します。
テンプレート・オプション | アプリケーションのナビゲーション・メニュー・リストに使用されるリスト・テンプレートのテンプレート・オプションを設定します。

#### 6.5.4.5.4 ナビゲーション・バー

「ナビゲーション・バー」属性は、新しいテーマとともにのみ表示されます。

表6-17 「ユーザー・インタフェースの詳細」の「ナビゲーション・バー」

属性 | 説明
--- | ---
実装 | このアプリケーションのナビゲーション・バーの実装方法を選択します。 クラシック ページ・テンプレートの`#NAVIGATION_BAR#`の位置に、クラシック・ナビゲーション・バーとしてナビゲーション・バーがレンダリングされます。 リスト ページ・テンプレートの`#NAVIGATION_BAR#`の位置に、選択されたリストおよびリスト・テンプレートを使用して、リストとしてナビゲーション・バーがレンダリングされます。
ナビゲーション・バー・リスト | このアプリケーションのナビゲーション・バーのレンダリングに使用されるリスト・テンプレートを選択します。
リスト・テンプレート | このアプリケーションのナビゲーション・メニューのレンダリングに使用されるリスト・テンプレートを選択します。
テンプレート・オプション | アプリケーションのナビゲーション・メニュー・リストに使用されるリスト・テンプレートのテンプレート・オプションを設定します。

#### 6.5.4.5.5 JavaScript

これらの属性を使用して、アプリケーションがJavaScriptを処理する方法を制御または変更します。

表6-18 「ユーザー・インタフェースの詳細」の「JavaScript」

属性 | 説明
--- | ---
コンテンツ配信ネットワーク | Application ExpressでライブラリjQueryおよびjQuery Mobileをロードするために使用が試行されるコンテンツ配信ネットワーク(CDN)を指定します。Application Expressでは、そのCDNからこれらのライブラリをロードできない場合、かわりにWebサーバーからこれらのライブラリがロードされます。 CDNを使用すると、ユーザーがすでに同じCDNを使用する他のWebサイトを訪問して同じライブラリをロードしたことがある場合に、アプリケーションのロード時間を短縮できます。
- ファイルURL | すべてのページにロードするコードのJavaScriptのファイルURLを入力します。各URLを新しい行に記述する必要があります。ファイルの縮小バージョンを指定する場合、置換文字列`#MIN#`を使用して`.min`を、または`#MIN_DIRECTORY#`を使用してminified/を通常ページ・ビューのファイルURLに含めたり、ページをデバッグ・モードで表示する場合は空の文字列を含めることができます。 ここに入力したJavaScriptのファイルURLによって、ページ・テンプレート内の`#APPLICATION_JAVASCRIPT#`置換文字列が置き換えられます。 注意: スクリプトの開始タグや閉じタグを含める必要はありません。URLのみを記述します。 次に例を示します。 標準ファイル参照:
      /myjs/main.js
- 通常ページ・ビューの縮小ファイルmain.min.jsおよびデバッグ・モードのmain.jsをロードする標準ファイル参照。
      /myjs/main#MIN#.js
- Internet Explorerの条件付きファイル
      [if IE]/myjs/ie.js
レガシーJavaScriptを含める | レガシーJavaScriptファンクションがアプリケーション内のすべてのページに含まれているかどうかを指定します。使用しているアプリケーションに、レガシー・ファンクションへの参照が含まれていないことが確実な場合は、これを「いいえ」に設定して、ロードされるJavaScriptファイルの全体のサイズを削減します。 非推奨のjQuery機能が使用されているかどうかを特定するには、ブラウザ・コンソールのログを開いた状態でアプリケーションを実行し、jQuery移行によって表示されるログ・メッセージを検索します。 関連項目: 『Oracle Application Express APIリファレンス』のレガシーJavaScript APIに関する項
jQuery移行を含める | jQuery移行プラグインがアプリケーション内のすべてのページに含まれる必要があるかどうかを指定します。 プラグインはjQueryの非推奨の機能および動作をリストアし、古いJavaScriptコードおよびjQueryプラグインが、Application ExpressによってロードされたjQueryバージョンを使用して引き続き適切に実行されるようにします。 アプリケーションおよび使用しているjQueryプラグインに、非推奨のjQuery機能への参照が含まれていないことが確実な場合は、これを「いいえ」に設定すると、ロードされるJavaScriptファイルの全体のサイズが削減されます。

#### 6.5.4.5.6 カスケード・スタイルシート

「ファイルURL」で、すべてのページにロードするカスケード・スタイルシートのファイルURLを入力します。各URLを新しい行に記述する必要があります。ファイルの縮小バージョンを指定する場合、置換文字列`#MIN#`を使用して`.min` ,を、または`#MIN_DIRECTORY#`を使用して`minified/`を通常ページ・ビューのファイルURLに含めたり、ページをデバッグ・モードで表示する場合は空の文字列を含めることができます。アプリケーションのバージョンをファイルURLに含める場合、置換文字列`#APP_VERSION#`にアクセスすることもできます。

ここに入力したファイルURLによって、ページ・テンプレート内の#APPLICATION_CSS#置換文字列が置き換えられます。

例は、フィールドレベル・ヘルプを参照してください。

#### 6.5.4.5.7 連結されたファイル

連結されたファイルを使用すると、単一のファイルごとに複数のHTTPリクエストを発行するかわりにブラウザで1つのファイルのみをロードするため、ページをロードするパフォーマンスを向上できます。この方法には、開発中に、より小さく、よりモジュール化されたファイルを使用し、Application Express開発環境の外部のアプリケーションを実行するときには、単一の連結されたファイルを使用するオプションがあります。

連結されたファイルを作成するには、「連結されたファイル」をクリックして、画面に表示される手順に従います。詳細および例を確認するには、フィールドレベル・ヘルプを参照してください。