3.7.1 簡易URL構文の理解

簡易URL構文では、Oracle Application Expressのアドレス、アプリケーション、ページを識別するURL構造を作成し、標準のWebパラメータ構文を使用します。

ノート:

この項で説明する簡易URL構文は、バニティURLやカスタム・ドメイン名とは異なります。Application ExpressインスタンスのバニティURL (またはカスタム・ドメイン名)の構成は、通常、Webサーバーまたはロード・バランサ・レベルで行われ、このパブリケーションでは説明しません。

ヒント:

Oracle Application Expressリリース20.1以上を使用して作成したアプリケーションでは、簡易URL構文を使用します。「簡易URL」属性を無効にすることで、f?p構文に戻すことができます。

3.7.1.1 簡易URL構文について

簡易URL構文では、標準のURL階層を使用し、他のWebアプリケーションと同様の方法でパラメータを渡します。

簡易URLの階層および構文

簡易URL構文では、次のディレクトリ階層および構文を含むURLを作成します。

https://hostname:port/ords/path_prefix/r/app_alias/page_alias?parameters

簡易URLの例

https://hostname:port/ords/mycompany/r/hr-app/update-employees?session=13766599855150

内容は次のとおりです。

  • https:は、HyperText Transfer Protocolを表し、アプリケーション・レイヤーで動作します。

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

  • portは、Oracle REST Data Servicesの構成時に割り当てられるポート番号です。

  • ordsは、Oracle REST Data Servicesの構成時に定義されるサービス名です。

  • mycompanyは、RESTfulサービスへのアクセスに使用されるURIパス接頭辞であるpath_prefixです。ワークスペースを作成する場合、この値はデフォルトでワークスペース名になります。URIパス接頭辞をカスタマイズするには、「管理」、「サービスの管理」、「ワークスペース・プリファレンス」、「SQLワークショップ」と進んで「パス接頭辞」属性を編集します。

  • rはルーターのショートカットです。この値は定数であり、変更しないでください。

  • hr-appapp_aliasです。新しいアプリケーションでは、アプリケーションの別名はデフォルトでアプリケーション名になります。アプリケーションの別名は、「アプリケーション定義」で編集できます。アプリケーションの別名はワークスペース内で一意である必要があります。

  • update-employeespage_aliasです。新しいアプリケーションでは、ページの別名はデフォルトでページ名になります。ページの別名はページ・デザイナで編集できます。ページの別名は、アプリケーション内で一意である必要があります。新規ページを作成するときに、ページ名がすでにページの別名として使用されている場合、数値が新しいページの別名に追加されて一意になります。

  • ?session=13766599855150は、セッションIDを識別します。アプリケーションを実行する場合、Application Expressエンジンはユーザーのセッション・ステートに対するキーとして機能するセッション番号を生成します。

URLパラメータについて

/?の後のURLの一部には、parametersをリストできます。

http://hostname:port/ords/path_prefix/r/app_alias/page_alias?parameters (Such as —
        p7_customer_id=377&clear=7&session=1247058356345&cs=3MdkfQa9NLmkyHAbwGPg3U-nmA7XIw5sWjU2rMzSvOy_wP1_z7BBI-Gbh2JgvffARgcYJy8id4VtL3d0l1tYm0w)

サポートされるパラメータは次のとおりです。

  • session

  • request

  • clear

  • debug

  • application/page items

  • printerFriendly

  • trace

  • timezone

  • lang

  • territory

  • cs

  • dialogCs

  • x01

3.7.1.2 簡易URL構文の有効化または無効化

簡易URL構文を有効または無効にして、アプリケーションで簡易URL構文またはf?p構文を使用するかどうかを決定します。

Oracle Application Expressリリース20.1以上を使用して作成したアプリケーションでは、簡易URL構文を使用します。「簡易URL」属性を無効にすることで、f?p構文に戻すことができます。

簡易URL構文を有効にするには、次のステップを実行します。

  1. ワークスペースのホームページで、「アプリケーション・ビルダー」アイコンをクリックします。
  2. アプリケーションを選択します。
    アプリケーションのホームページが表示されます。
  3. アプリケーションのホームページから、定義ページに、次の2通りの方法でアクセスできます。
    • 「アプリケーション・プロパティの編集」ボタンをクリックします。
    • 「共有コンポーネント」からの場合:
      • 「共有コンポーネント」をクリックします。

      • 「アプリケーション・ロジック」で、「アプリケーション定義属性」をクリックします。

    定義ページが表示されます。

  4. 「プロパティ」で、「簡易URL」属性を構成します。
    • オン - 「オン」に設定した場合、アプリケーションでは、URLが「アプリケーションの別名」、「ページの別名」および標準のWebパラメータ構文に基づいたディレクトリ構造で構成される簡易URL構を使用します。
    • オフ - 「オフ」に設定すると、アプリケーションでf?p=構文が使用されます。
  5. 「変更の適用」をクリックして、変更を保存します。

3.7.1.3 簡易URL構文のカスタマイズ

「パス接頭辞」、「アプリケーションの別名」または「ページの別名」を編集して、簡易URLをカスタマイズします。

簡易URL構文では、次のディレクトリ階層および構文を含むURLを作成します。

https://hostname:port/ords/path_prefix/r/app_alias/page_alias?parameters

「簡易URL」の次の部分をカスタマイズできます。

  • パス接頭辞 - path_prefixは、RESTfulサービスへのアクセスに使用するURIパス接頭辞です。ワークスペースを作成する場合、この値はデフォルトでワークスペース名になります。URIパス接頭辞をカスタマイズするには、「ワークスペース管理」で「パス接頭辞」属性を編集します。

  • アプリケーションの別名 - app_aliasは、アプリケーションの別名と呼ばれる代替の英数字アプリケーション識別子です。新しいアプリケーションでは、アプリケーションの別名はデフォルトでアプリケーション名になります。アプリケーションの別名は、「アプリケーション定義」で編集できます。

  • ページの別名 - page_aliasは、ページの別名と呼ばれるページの英数字の別名です。新しいアプリケーションでは、ページの別名はデフォルトでページ名になります。ページの別名はページ・デザイナで編集できます。

簡易URLカスタマイズの例

次のURLを持つアプリケーションがあるとします。

http://hostname:port/ords/example/r/355/2?session=13766599855150

次の変更を加えるとします。

  • path_prefix - examplemycompanyに変更します。

  • app_alias - 355myappに変更します。

  • page_alias - 2myinfoに変更します。

更新されたURLは次のように表示されます。

http://hostname:port/ords/mycompany/r/myapp/myinfo?session=13766599855150 

「パス接頭辞」、「アプリケーションの別名」または「ページの別名」を編集して簡易URLをカスタマイズするには、次のステップを実行します。

  1. Oracle Application Expressにサインインします。
  2. パス接頭辞を変更するには、次のステップを実行します。
    1. 「ワークスペース管理」ページにナビゲートします。「ワークスペース」ホームページ上部で、「管理」メニューをクリックし、「管理」をクリックします。
    2. 「ワークスペース管理」ホームページで、「サービスの管理」をクリックして、「ワークスペース・プリファレンスの設定」をクリックします。
    3. 「SQLワークショップ」までスクロールします。
    4. 「パス接頭辞」で、新しいパス接頭辞を入力します。新しいワークスペースでは、「パス接頭辞」がデフォルトでワークスペース名になります。たとえば、「パス接頭辞」をmycompanyに変更します。

      ヒント:

      「パス接頭辞」は、有効なRESTfulサービス「はい」に設定されている場合にのみ表示されます。

    5. 「変更の適用」をクリックして、変更を保存します。
      サービスの管理ページが表示されます。
    6. 「ワークスペース」ホームページに戻ります。左上隅にあるAPEXロゴ(Oracle APEXホーム)をクリックします。
  3. アプリケーションの別名を変更するには、次のステップを実行します。
    1. ワークスペースのホームページで、「アプリケーション・ビルダー」アイコンをクリックします。
    2. アプリケーションを選択します。
    3. アプリケーションのホームページで、「アプリケーション・プロパティの編集」ボタンをクリックします。
      アプリケーション定義ページが表示されます。
    4. 「名前」で、「アプリケーションの別名」属性を編集します。たとえば、myappを入力します。
    5. 「変更の適用」をクリックして、変更を保存します。
  4. ページの別名を変更するには、次のステップを実行します。
    1. ページ・デザイナでページを表示します。
    2. いずれかの「レンダリング」タブで、ページ名を選択します。
    3. プロパティ・エディタで、「識別」グループを見つけます。
    4. 「識別」の「ページの別名」属性で、このページの英数字の別名を入力します。たとえば、myinfoを入力します。
    5. 変更内容を保存するには、「保存」または「ページの保存と実行」をクリックします。
  5. ページを実行します。クリックするか「ページの保存と実行」を選択します。
    更新されたURLは、次のように表示されます。
    http://hostname:port/ords/mycompany/r/myapp/myinfo?session=13766599855150 

関連項目:

Oracle Application Express管理ガイドワークスペースのRESTfulサービスの有効化およびパス接頭辞の定義