ヘッダーをスキップ

Oracle Databaseプラットフォーム共通日本語README
10g リリース2(10.2)
B19227-09
  目次
目次
 

戻る
戻る
次へ
次へ
 

Oracle Globalization Development Kit 10g README

原典情報: $ORACLE_HOME/nls/gdk/README.txt



目次

このリリースの新機能

インストール

アップグレード

このリリースの既知の問題/制限事項


このリリースの新機能

Language and Character Set Detection(LCSD)の拡張

Language and Character Set Detectionユーティリティが拡張され、次の機能がサポートされるようになりました。

入力ストリームの複製機能

1つのInputStreamソースに対して2つの独立したストリーム操作が必要な場合(たとえば、1つのストリームは言語とキャラクタ・セットを検出し、もう1つのストリームは実際の目的を実行する場合)、DualInputStreamBuilderクラスを使用できます。このクラスは、1つのInputStreamソースに対して2つのInputStreamラッパー・オブジェクトを生成します。

ストリーミングAPI

LCSDストリームとreaderクラスは、検出結果に基づいて入力ストリームで追加操作を実行する場合に使用できます。

入力データ検証

UTF-8バイト・シーケンスには、アプリケーションのセキュリティを損なう可能性がある無効なデータが含まれている場合があります。UTF8ValidationFilterクラスを使用すると、JDK変換が実行される前に無効なUTF-8シーケンスを検出できます。無効なUTF-8バイト・シーケンスが検出されると、フィルタによって例外が発生するか、または置換文字に置き換えられます。

HTMLコンテンツのLanguage and Character Set Detection

より正確に検出処理を実行するために、HTML入力をサポートしてHTMLタグを廃棄するためのGDKの2つの拡張クラス(LCSDetectionHTMLInputStreamLCSDetectionHTMLReader)が用意されています。HTML入力ファイルの場合、入力に対して正確な検出が実行され、ユーザーは検出結果を検証できます。LCSDはHTML 4.01仕様をサポートしています。

新規のGDKパッケージ化

GDK Javaライブラリは、クラスをロードする際のパフォーマンスを改善するために、9つのjarファイルに分割されています。通常、すべてのjarファイルは同じディレクトリ下にインストールされ、orai18n.jarのみをCLASSPATHに含める必要があります。そうでない場合は、9つすべてのjarファイルをCLASSPATHに含める必要があります。

インストール

GDK for Javaは9つのjarファイルで構成され、Oracleデータベースに同梱されています。
   orai18n.jar
   orai18n-mapping.jar
   orai18n-utility.jar
   orai18n-collation.jar
   orai18n-translation.jar
   orai18n-net.jar
   orai18n-servlet.jar
   orai18n-tools.jar
   orai18n-lcsd.jar

GDKを使用するアプリケーションのホストがデータベースと同じマシンでない場合、アプリケーションを実行するには、GDKファイルがアプリケーション・サーバーにコピーされてCLASSPATHに含まれる必要があります。Javaアプリケーション内でGDKを実行可能にするために、Oracleデータベースをアプリケーション・サーバーにインストールする必要はありません。GDKは、すべてのプラットフォームで実行できるPure Javaライブラリです。Oracleクライアント・パラメータNLS_LANGおよびORACLE_HOMEは必要ありません。

GDKアプリケーションは、サード・パーティのJ2EE準拠アプリケーション・サーバーに配置することも可能です。J2EE用のGDKフレームワークはXMLパーサーと依存関係があるため、Oracle以外の環境にアプリケーションを配置するとき、oracle/xml/parser/v2/のクラスに対してNoClassDefFoundErrorが発生した場合は、GDKと同じリリースのOracle XML Parser(xmlparserv2.jar)を配置用ディレクトリにインストールする必要があります。このファイルは、Oracle XML Developers Kit(XDK)for Javaの一部としてOTNからダウンロードできます。既存のOracle環境に配置する場合、つまり、OracleデータベースとOracle Application Serverの両方にXMLパーサーがすでに含まれている場合、この手順は不要です。

アップグレード

GDK 10.1から10.2にアップグレードする場合、特別な手順は必要ありません。すべてのjarファイルが同じディレクトリにコピーされる場合、アプリケーションのCLASSPATHを変更する必要はありません。

このリリースの既知の問題/制限事項

次のリストに、既知の問題または制限事項を示します。

BUG#4085200(OC4Jクラスのロードに関する問題)

GDKアプリケーションをバインドするとorg/apache/regexp/RESyntaxExceptionNoClassDefFoundErrorがスローされ、OraResourceBundle.getBundle()を使用してアプリケーション・メッセージ・バンドルをロードするとMissingResourceExceptionがスローされます。これはOC4J 10.1.2でのみ発生し、9.0.4では発生しません。解決するには、アプリケーションの配置時に次の手順を実行します。

  1. アプリケーションを配置します。

    $ java -jar admin.jar ormi://localhost/ admin <admin passwd> -deploy \
    -file <path>/gdkdemo.ear -deploymentName gdkdemo

  2. 次の行のコメントを解除します。

    $J2EE_HOME/application-deployments/gdkdemo/gdkdemo/orion-web.xml

    <web-app-class-loader search-local-classes-first="true"
    include-war-manifest-class-path="true" />

  3. アプリケーションをバインドします。

    $ java -jar admin.jar ormi://localhost/ admin <admin passwd> \
    -bindWebApp gdkdemo gdkdemo http-web-site /gdkdemo

BUG#4115579(ユーザー・ロケールのキャッシュ)

これは、GDKショップ・デモの不具合です。 デモのドロップダウン・メニューを使用してユーザーを切り替えた場合、ブラウザの「戻る」ボタンを使用すると、セッションでキャッシュされた前のユーザーのDBLocaleSourceオブジェクトがかわりに使用されます。このようなキャッシュが正常に機能するのは、ユーザーの変更時に(ログアウトによって)セッションが無効になった場合のみです。 デモのこの不具合は修正されました。ロケール・ソース別のデフォルトのキャッシュ・ポリシーは次のとおりです。

oracle.i18n.servlet.localesource.DBLocaleSource

このロケール・ソースは、デフォルトでセッション・オブジェクトにキャッシュされます。このキャッシュはユーザーIDに基づいていないため、1つのセッション(ユーザーのログインからログアウトまで)につきユーザーが1名のアプリケーションに適しています。ほとんどの場合はこれに該当します。

oracle.i18n.servlet.localesource.UserInput

このロケール・ソースは、デフォルトでキャッシュされません。要求ごとに処理されて、現行ユーザーの入力ロケールが取得されます。

oracle.i18n.servlet.localesource.HttpAcceptLanguage

このロケール・ソースは、デフォルトでキャッシュされません。要求ごとに処理されて、現行のロケール設定が取得されます。

oracle.i18n.servlet.localesource.ApplicationDefault

このロケール・ソースは、ApplicationContextにキャッシュされます。ロケール・ソースが変更(つまり、構成ファイルが変更)された場合は、サーバーを再起動する必要があります。