6 以前のリリースで非推奨

次の項では、以前のリリースで非推奨になったがOracle APEXで完全に削除されたわけではなくサポートが終了していない機能を示します。

この項の説明に従って開発者がアプリケーションの変更を開始することをお薦めします。APEXアドバイザを使用して、既存のアプリケーションに非推奨となった属性があるか調べてください。

6.1 クイックSQLで非推奨となった機能

非推奨となった設定

APEX 23.2以降、次のクイックSQL設定は非推奨になりました:
  • データ言語(#language:"DE"): 様々な言語(ドイツ語、韓国語、日本語、スペイン語)に対してサンプル・データが生成されなくなりました。
  • タグ・フレームワーク(#tags:true): タグ・フレームワーク・オブジェクト(表、トリガー、同期プロシージャ)は生成されなくなりました。
  • 削除時(#ondelete:"cascade"): システム全体のondelete設定がサポートされなくなりました。これらの設定には、新しい/cascade列ディレクティブによって対応します。
  • 長いVarchar2 (#longVC:true): VARCHAR2サイズの人為的な縮小または増加はサポートされなくなりました。
  • テナントID (#tenantID:true): サポートされなくなりました。

非推奨となったディレクティブ

APEX 23.2以降、次のクイックSQLディレクティブは非推奨になりました:
  • /select: 各表のデータが生成された後にSQLのSELECT文が生成されなくなりました。

6.2 非推奨になったオブジェクト・ブラウザ機能

APEX 23.1以降、オブジェクト・ブラウザの一部の機能は非推奨になりました:
  • 表の「モデル」タブが削除されました。
  • 「マテリアライズド・ビューの作成」ウィザードが削除されました。マテリアライズド・ビューを作成するには、SQLコマンドまたはSQLスクリプトのCREATE MATERIALIZED VIEW文を使用します。引き続き、オブジェクト・ブラウザでマテリアライズド・ビューを表示することはできます。

6.3 LOV表示値の二重エスケープの防止

APEX 23.1以降、APEXによってLOV表示値の二重エスケープが防止されるようになりました。

APEXではデフォルトで、必要に応じて自動的に値リスト(LOV)の表示値がHTMLエスケープされます。レガシー・アプリケーションとの下位互換性を確保するために、APEXでは、表示値をエスケープするためのユーティリティ関数がLOV問合せに含まれているかどうかを確認します。含まれている場合、APEXは、選択リスト、ポップアップLOV、シャトル、表示専用アイテムなどのコンポーネントで値を表示するときに、値の二重エスケープを回避します。

オラクルでは、重複するインライン・エスケープ・コールをLOVから削除することをお薦めします。将来のバージョンのAPEXでは、この防止メカニズムが削除され、一部の表示値が二重エスケープされて表示される可能性があります。

使用しているLOVが影響を受けるかどうかを確認するには、次の問合せを実行します。
select *
  from apex_application_lovs
 where lov_type = 'Dynamic'
   and (   upper(list_of_values_query) like '%HTF.ESCAPE_SC%'
        or upper(list_of_values_query) like '%APEX_ESCAPE.HTML%'
        or upper(list_of_values_query) like '%WWV_FLOW_ESCAPE.HTML%' );
select *
  from apex_application_page_items
 where lov_named_lov is null
   and (   upper(lov_definition) like '%HTF.ESCAPE_SC%'
       or upper(lov_definition) like '%APEX_ESCAPE.HTML%'
       or upper(lov_definition) like '%WWV_FLOW_ESCAPE.HTML%' );

問合せで行が返されない場合は、アクションは必要ありません。それ以外の場合は、LOV定義またはページ・アイテム(あるいはその両方)を確認して手動エスケープを削除し、アプリケーションをテストして、削除後も値が意図したとおりに表示されることを確認します。

6.4 形式HTML (安全でない)による表示専用アイテムの非推奨

APEX 23.1以降、形式HTMLでは、クライアントのHTMLコンテンツはサニタイズされてから表示されます。これにより、HTMLベースのリッチ・テキスト・エディタのコンテンツを含む、ユーザーが提供したHTMLを簡単に表示できるようになります。

既存のアプリケーションとの下位互換性を維持するために、形式HTMLオプションを使用している現在の表示専用ページ・アイテムすべてが、現在の動作を維持するために「HTML(安全でない)」に移行されます。ただし、このオプションは今後非推奨となり、スクリプト・タグやjavascript:式、onclick属性などの"安全でない" HTMLコンテンツは除去されるため、これらのコンテンツを表示することはできなくなります。

安全でないHTMLコンテンツを表示することはお薦めしませんが、表示することはできます。

6.5 非推奨になったファンクションおよびプロシージャ

APEX_UTILからAPEX_APPLICATION_ADMINへの既存のAPIの移行の一環として、一部のコメントが変更されました。APEX 23.1以降、次のファンクションおよびプロシージャは非推奨になりました:
  • set_build_option_status
  • get_build_option_status (2回、オーバーロード)
  • set_application_status
  • get_application_status
  • set_global_notification
  • get_global_notification
  • set_app_build_status

6.6 非推奨となったAPEXアイテム・マークアップ

APEXの将来のリリースには、マークアップの変更やカスタム要素(Webコンポーネント)の使用が必要となる様々なアイテムのアクセシビリティ、操作性および機能に関して修正と改善が含まれる可能性があります。これらの変更によって、アイテムの動作がより動的になる可能性があります。また、これらの変更は、既存のアプリケーション内のアイテムやフォームへの影響を最小限に抑えて実施されます。

APEX 22.2以降、apex.itemネームスペースおよびアイテム・インタフェースは、アイテムをカスタマイズしたり、プログラムで操作するためにサポートされている唯一のAPIです。APEXでは、ドキュメント化されていないアイテム・マークアップまたはCSSクラスに依存するカスタマイズは、今後のリリースで想定どおりに機能しない可能性があるため、お薦めしていません。

各ネイティブAPEXアイテムで使用されるHTMLマークアップに関する想定は、将来は当てはまらなくなる可能性があります。特定のマークアップを想定した拡張属性(CSSクラス)、カスタム属性、JavaScriptコードおよびCSSルールによってアイテムをカスタマイズした場合は、それが壊れる可能性があります。

たとえば、テキスト領域の「詳細」:「CSSクラス」属性にクラスimportant-textを追加することで、テキスト領域アイテムの文字カウンタを太字にしてから、次のようなカスタムCSSルールを追加するとします。
.important-text.apex-item-textarea + .apex-item-textarea-counter { 
    font-weight: bold;
}
これは現在は動作しますが、textarea要素の直後にある、ドキュメント化されていないクラス名およびカウンタ要素に依存しているため、将来は動作しない可能性があります。「カスタム属性」でのイベント・ハンドラの追加もベスト・プラクティスではありません。

将来のリリースでは、新しいカスタム要素のマークアップ、クラスおよびCSS変数がドキュメント化されて、カスタマイズでのサポート対象がより広くなります。

6.7 非推奨になったjQuery日付ピッカー

APEX 22.2以降、jQuery日付ピッカーは非推奨となり、新しいページまたはアプリケーションには使用できなくなりました。古いjQuery日付ピッカーのJavaScript APIはサポートされていません。

古い日付ピッカーをすべて新しい日付ピッカーに置き換えることをお薦めします。

6.8 以前に非推奨となったAPI

APEX 22.1以降、APEX_IR.GET_REPORT APIは非推奨になりました。かわりに、APEX_REGION.OPEN_QUERY_CONTEXTを使用して対話モード・レポートのデータを取得してください。

6.9 非推奨となったレガシーWebサービス参照

APEX 22.1以降、SOAPスタイルのWebサービス参照、およびRESTスタイルのWebサービス参照のレガシー・サポートは非推奨になりました。

6.10 jQuery UIの非推奨

APEX 20.1以降、jQuery UIは非推奨になりました。サードパーティ製のAPEXプラグインとカスタムのJavaScriptコードは、jQuery UIの参照がなくなるように更新することをお薦めします。jQuery UIを使用するネイティブのAPEXコンポーネントは引き続き動作しますが、将来のリリースでサポートを終了する予定です。

Oracleには、APEXに必要なモジュールのみを含むJQuery UI 1.13.2のカスタム・バンドルが付属しています。Oracleには、個々のウィジェットまたはjQuery UI CSSファイルは付属しなくなりました。