説明

ロケール設定プログラム

【課題】 利用者にロケール情報を選択させずに、且つブラウザから送信されるHTTPリクエストのロケール情報を用いずに、利用者のロケールを設定する。
【解決手段】 実施形態のロケール用フィルタ手段は、入力された文字列を受けると、アプリケーションプログラムの実行の前に、ロケールをメモリに設定する処理を割り込ませるように、当該文字列を送出する。実施形態の文字コード変換手段は、前記送出された文字列に含まれる各文字を文字コードに変換する。実施形態のロケール判定手段は、前記各文字が変換された文字コードと、ロケール毎文字コード定義手段に定義された文字コード範囲とを比較することにより、当該変換された文字コードを含む文字コード範囲に対応するロケールを判定する。実施形態のロケール設定手段は、前記判定されたロケールを前記メモリに設定する処理を実行する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明の実施形態は、ロケール設定プログラムに関する。
【背景技術】
【0002】
Webアプリケーションは、多くの場合、様々なロケール(国、言語)で利用可能とするように、国際化に対応することが求められている。国際化に対応したWebアプリケーションは、利用者の所属するロケールに合わせて、表示する文章の言語を切り替える処理や、利用者が入力した情報をロケール毎に用意されたチェックルールに基づいてチェックする処理等というように、利用者のロケール毎の処理が実装される。ここで、チェックする処理は、例えば、日本ロケールの場合には日付のフォーマットがYYYY/MM/DDであるかをチェックする処理であり、米国ロケールの場合には日付のフォーマットがMM/DD/YYYYであるかをチェックする処理等が該当する。
【0003】
このようなロケール毎の処理を実現するには、Webアプリケーションが利用者のロケールを取得する必要がある。ロケールを取得する処理としては、ブラウザに設定されたロケールをHTTP(HyperText Transfer Protocol)リクエストから取得する手法と、利用者に明示的にロケールを選択させて取得する手法とが一般的に知られている。
【先行技術文献】
【非特許文献】
【0004】
【非特許文献1】“Struts Validator Guide”、The Apache Software Foundation 発行、インターネット<URL: http://struts.apache.org/1.3.10/faqs/validator.html>.
【発明の概要】
【発明が解決しようとする課題】
【0005】
以上説明したように、Webアプリケーションがロケールを取得する処理としては、2つの一般的な手法が知られている。
【0006】
1つ目は、ブラウザから送信されるHTTPリクエストの「Accept-Language HTTPヘッダーを参照して、ブラウザに設定されたロケールを取得し、これを利用者のロケールとする手法である。本手法を利用する技術には、オープンソースソフトウェアのWebアプリケーションであるStrutsに搭載されているメッセージリソース機能がある。
【0007】
メッセージリソース機能によれば、ブラウザに設定されたロケール毎に、Webアプリケーションの画面の文字列が切替表示される。このため、利用者の所属するロケールとブラウザのロケールが異なる場合(例、日本に来たアメリカ人が、日本のPC(personal computer)を使ってWebアプリケーションにアクセスする場合)、利用者のロケールに対応した処理を実行できない不都合がある。
【0008】
このような不都合を解消する手法として、利用者に明示的にロケールを選択させる手法があり、これが2つ目の手法である。IBM(登録商標)、富士通(登録商標)等の企業のWebサイトでは、トップページに配置されたロケール情報(ロケール選択ボタン)のいずれかを利用者が選択すると、選択されたロケール情報に応じた言語の文章が画面に表示される。但し、2つ目の手法では、ロケール情報を選択する、という余計な操作を利用者が行なう必要がある。
【0009】
本発明が解決しようとする課題は、利用者にロケール情報を選択させずに、且つブラウザから送信されるHTTPリクエストのロケール情報を用いずに、利用者のロケールを設定し得るロケール設定プログラムを提供することである。
【課題を解決するための手段】
【0010】
実施形態のロケール設定プログラムは、入力された文字列に応じたロケールが設定されるメモリと、前記ロケールに応じた処理が記述されたアプリケーションプログラムを実行するプロセッサとを備えたサーバ装置に用いられる。実施形態のロケール設定プログラムは、前記文字列に応じたロケールを前記メモリに設定する処理を前記プロセッサに実行させる。
【0011】
実施形態のロケール設定プログラムは、前記サーバ装置を、ロケール毎文字コード定義手段、ロケール用フィルタ手段、文字コード変換手段、ロケール判定手段、ロケール設定手段、として機能させるためのプログラムである。
【0012】
前記ロケール毎文字コード定義手段は、予めロケール毎に文字コード範囲が定義されている。
【0013】
前記ロケール用フィルタ手段は、前記入力された文字列を受けると、前記アプリケーションプログラムの実行の前に、前記ロケールを前記メモリに設定する処理を割り込ませるように、当該文字列を送出する。
【0014】
前記文字コード変換手段は、前記送出された文字列に含まれる各文字を文字コードに変換する。
【0015】
前記ロケール判定手段は、前記各文字が変換された文字コードと、前記ロケール毎文字コード定義手段に定義された文字コード範囲とを比較することにより、当該変換された文字コードを含む文字コード範囲に対応するロケールを判定する。
【0016】
前記ロケール設定手段は、前記判定されたロケールを前記メモリに設定する処理を実行する。
【図面の簡単な説明】
【0017】
【図1】第1の実施形態に係るクライアントサーバシステムの構成を示す模式図である。
【図2】同実施形態におけるロケール毎文字コード定義部を説明するための模式図である。
【図3】同実施形態における動作を説明するためのシーケンス図である。
【図4】同実施形態における動作を説明するためのフローチャートである。
【図5】同実施形態における動作を説明するためのシーケンス図である。
【図6】第2の実施形態に係るクライアントサーバシステムの構成を示す模式図である。
【図7】同実施形態における動作を説明するためのシーケンス図である。
【発明を実施するための形態】
【0018】
以下、各実施形態について図面を用いて説明する。なお、以下の各装置は、装置毎に、ハードウェア構成、又はハードウェア資源とソフトウェアとの組合せ構成のいずれでも実施可能となっている。組合せ構成のソフトウェアとしては、予めネットワーク又は記憶媒体から対応する装置のコンピュータにインストールされ、対応する装置の機能を実現させるためのプログラムが用いられる。
【0019】
<第1の実施形態>
図1は第1の実施形態に係るロケール設定プログラムが適用されたロケール設定部を備えたサーバ装置及びクライアント装置からなるクライアントサーバシステムの構成を示す模式図であり、図2はロケール毎文字コード定義部を説明するための模式図である。このクライアントサーバシステムは、図1に示すように、サーバ装置100及びクライアント装置200を備えている。
【0020】
ここで、サーバ装置100は、入力された文字列に応じたロケールが設定されるメモリ(図示せず)と、ロケールに応じた処理が記述されたアプリケーションプログラムを実行するプロセッサ(図示せず)とを備えている。また、サーバ装置100は、文字列に応じたロケールをメモリに設定する処理をプロセッサに実行させるロケール設定プログラムを用いている。また、サーバ装置100は、アプリケーションサーバプログラムを用いている。
【0021】
具体的には、サーバ装置100は、アプリケーションサーバプログラムに基づくアプリケーションサーバ部101と、ロケール設定プログラムに基づくロケール設定部102と、Webアプリケーションプログラム(アプリケーションプログラム)に基づくサーバアプリケーション部103とを備えている。
【0022】
アプリケーションサーバ部101は、一般的なアプリケーションサーバプログラムを実行するプロセッサ(図示せず)の一機能からなり、ブラウザ部201から送信されたリクエストを受信し、サーバアプリケーション部103を実行する機能をもっている。アプリケーションサーバ部101を構成するアプリケーションサーバプログラムとしては、例えば、WebSphere(登録商標)、WebLogic(登録商標)等のプログラムが使用可能となっている。
【0023】
ロケール設定部102は、ロケール設定プログラムを実行するプロセッサの一機能からなり、利用者のロケールを自動的に判定してロケールを内部に設定する機能と、設定されたロケールをサーバアプリケーション部103が参照するための機能とをもっている。なお、本明細書中、ロケールの設定に関する「設定」の用語は、「保存」、「書込」又は「判定保存」等の用語に読み替えてもよい。
【0024】
ロケール設定部102は、ロケール用フィルタ部102a、ロケール判定部102b、文字コード変換部102c、ロケール毎文字コード定義部102d及びロケール保存部102eを備えている。
【0025】
ロケール用フィルタ部102aは、利用者によりブラウザ部201に入力された文字列をアプリケーションサーバ部101を介して文字列を受けると、アプリケーションプログラムの実行の前に、当該文字列に応じたロケールをロケール保存部102e(メモリ)に設定する処理を割り込ませるように、当該文字列をロケール判定部102bに送出する機能をもっている。
【0026】
ロケール判定部102bは、ロケール用フィルタ部102aから送出された文字列を文字コード変換部102cに送出することにより、文字コード変換部102cから当該文字列に含まれる各文字が変換された文字コードを受ける機能と、当該各文字が変換された文字コードと、ロケール毎文字コード定義部102dに定義された文字コード範囲とを比較することにより、当該変換された文字コードを含む文字コード範囲に対応するロケールを判定するロケール判定機能と、当該判定されたロケールをロケール保存部102bに設定する処理を実行するロケール設定機能とをもっている。また、ロケール判定部102bのロケール判定機能においては、変換された全ての文字コードを含む文字コード範囲に対応するロケールを判定する。例えば、半角アルファベットと全角カタカナが混在した文字列の場合、半角アルファベットが日本と英語のロケールに対応し、全角カタカナが日本のロケールに対応する結果、全ての文字コードを含む文字コード範囲に対応するロケールは、日本のロケールとなる。
【0027】
文字コード変換部102cは、ロケール判定部102bから送出された文字列に含まれる各文字を文字コードに変換するものであり、変換した文字コードをロケール判定部102bへ返す機能をもっている。例えば東芝(登録商標)に関する入力が行われ、“東芝”の文字列が送出された場合、文字コード変換部102cは、Unicodeの“6771 829D”をロケール判定部102bに返す。
【0028】
ロケール毎文字コード定義部102dは、図2に示すように、予め各ロケール(日本、中国、アメリカ等)毎に文字コード範囲が定義されており、ロケール判定部102bからロケールを含む文字コード取得要求を受けると、そのロケールに対応した文字コード範囲を返す機能をもっている。例えば、日本を表すロケールを含む文字コード取得要求を受けた場合、日本語で利用される全角・半角数字、ひらがな、全角・半角アルファベット等の文字コード範囲を返す。なお、ロケール毎文字コード定義部102dは、予め各ロケール(日本、中国、アメリカ等)毎に文字コード範囲が定義されていればよいので、ロケールを受けると文字コード範囲を返す機能を省略してもよい。この機能を省略した場合、ロケール毎文字コード定義部102dは、例えば、予め各ロケール毎に文字コード範囲が定義されたデータテーブルとして実現すればよい。
【0029】
ロケール保存部102eは、利用者の所属するロケールがロケール判定部102bから設定されて当該ロケールを保存するメモリである。ロケール保存部102eに保存されたロケールは、ロケール設定部102を使用するサーバアプリケーション部103から参照可能となっている。
【0030】
サーバアプリケーション部103は、ロケールに応じた処理が記述されたWebアプリケーションプログラムを実行するプロセッサの一機能からなり、ロケール設定部102が設定した利用者のロケールを取得する機能と、取得したロケールに応じて、ロケール毎に用意した処理やブラウザに表示するメッセージを切替可能に実行する機能とをもっている。
【0031】
一方、クライアント装置200は、ブラウザ部201を備えている。
【0032】
ブラウザ部201は、一般的なWebブラウザのプログラムを実行するプロセッサ(図示せず)の一機能からなり、利用者の操作に応じて、アプリケーションサーバ部101を介してサーバアプリケーション部103を実行させる機能をもっている。また、ブラウザ部201は、利用者により入力された情報(氏名、生年月日等)を格納したHTTPリクエストをアプリケーションサーバ部101へ送信する機能と、アプリケーションサーバ部101から受けたレスポンスを表示する機能とをもっている。
【0033】
次に、以上のように構成されたクライアントサーバシステムの動作を図3乃至図5を用いて説明する。
【0034】
ブラウザ部201は、利用者の入力操作に応じて、表示画面への文字列の入力を受け付ける(ST1)。
【0035】
ブラウザ部201は、利用者のクリック操作に応じて、表示画面上の送信ボタン等のクリック操作を受け付ける(ST2)。
【0036】
ブラウザ部201は、ステップST1で入力を受け付けた文字列を格納したリクエストをアプリケーションサーバ部101に送信する(ST3)。
【0037】
アプリケーションサーバ部101は、リクエストを受信すると、サーバアプリケーション部103を実行する前に、リクエストから抽出した文字列を含む実行要求をロケール用フィルタ部102aに送出する(ST4)。
【0038】
ロケール用フィルタ部102aは、実行要求を受けると、サーバアプリケーション部103が実行される前に、ロケール設定処理(ステップST5〜ST19)を割り込ませる。
【0039】
ロケール設定処理では、ロケール用フィルタ部102aは、この実行要求から抽出した文字列を含むロケール判定要求をロケール判定部102bに送出して、当該文字列に対するロケール判定処理(図4に示すST6〜ST18)を要求する(ST5)。
【0040】
ロケール判定部102bは、初期化操作を実行し、図示しないメモリ内の第1メモリ領域listには全ロケールのリスト(“日本語”、“英語”、“中国語”、…)を設定し、図示しないメモリ内の第2メモリ領域strには入力された文字列を設定する(ST6)。
【0041】
ロケール判定部102bは、第2メモリ領域strに設定された文字毎に、ステップST7〜ST18の大ループ処理を繰り返し実行する(ST7)。
【0042】
ロケール判定部102bは、第1メモリ領域listが空か否かを判定する(ST8)。第1メモリ領域listには、ロケール判定結果となるロケールのリストが入っている。第1メモリ領域listが空になった場合、処理を終了し、「該当するロケール無し」とする。
【0043】
ロケール判定部102bは、文字コード変換部102cを用い、文字列内のi番目の文字を文字コードに変換し、当該文字コードを、図示しないメモリ内の第3メモリ領域codeに設定する(ST9)。
【0044】
ロケール判定部102bは、第1メモリ領域listに設定されたロケール毎に、ステップST10〜ST14の小ループ処理を繰り返し実行する(ST10)。
【0045】
ロケール判定部102bは、各ロケールで利用される文字の文字コード範囲をロケール毎文字コード定義部102dから取得し、当該文字コード範囲を、図示しないメモリ内の第4メモリ領域rangeに設定する(ST11)。
【0046】
例えば、第1メモリ領域list内のj番目のロケール(list[j])が日本語を示すとき、日本語の文字コード範囲としては、日本語の文章で利用される{全角数字、半角数字、ひらがな、全角カタカナ、半角カタカナ、全角アルファベット、半角アルファベット、…}といった、以下に示す如き、文字コード範囲が取得される。
【0047】
range={FF10〜FF19(全角数字) and FF61〜FF9F(半角数字) and 3040〜309F(ひらがな) and …}
ロケール判定部102bは、第3メモリ領域code内の文字コードが、第4メモリ領域range内の文字コード範囲に含まれるかを判定する(ST12)。
【0048】
ステップST12の判定の結果、含まれない場合(ST12;N)には、ロケール判定部102bは、ステップST14に移行する。
【0049】
また、ステップST12の判定の結果、含まれる場合(ST12;Y)には、ロケール判定部102bは、該当の1文字を文字コード範囲に含むロケールをループ処理で全て第5メモリ領域newListに格納する(ST13)。
【0050】
ロケール判定部102bは、第1メモリ領域listに設定された全てのロケールについて小ループ処理を実行した場合には小ループ処理を終了するが(ST14)、それ以外の場合にはステップST10に戻って小ループ処理を継続する。
【0051】
小ループ処理を終了した場合、ロケール判定部102bは、該当の1文字を含むロケールのリストを第1メモリ領域listに上書きする(ST15)。これにより、ロケール判定部102bは、この第1メモリ領域list内のロケールで次の大ループ処理を繰り返し実行してロケール候補を絞り込む。
【0052】
ロケール判定部102bは、第2メモリ領域strに設定された全ての文字について大ループ処理を実行した場合には大ループ処理を終了するが(ST16)、それ以外の場合にはステップST7に戻って大ループ処理を継続する。
【0053】
ロケール判定部102bは、ステップST16にて大ループ処理が終了したとき、第1メモリ領域listに格納されたロケールをロケール用フィルタ部102aに送出する(ST17)。このとき、送出されるロケールは、変換された全ての文字コードを含む文字コード範囲に対応するロケールを判定した結果、第1メモリ領域listに格納されているロケールである。また、第1メモリ領域listには、複数のロケールが格納されている場合もある。例えば、入力された文字列が“東京”の場合には、大ループ処理の終了時点で第1メモリ領域listには、“日本”を表すロケールと“韓国”を表すロケールが格納されている場合がある。この場合、複数のロケールを送出してもよく、予めロケール毎に設定した重み付けが最も高いロケールを送出するようにしてもよい。
【0054】
ロケール用フィルタ部102aは、ロケール判定部102bから送出されたロケールをロケール保存部102eに設定し(ST18)、実行完了をアプリケーションサーバ部101に通知する。なお、ロケール保存部102eに保存されたロケールはサーバアプリケーション部103から参照可能である。
【0055】
アプリケーションサーバ部101は、ロケール用フィルタ部102aの実行後、ステップST3で受信したリクエストをサーバアプリケーション部103に送出し(ST20)、サーバアプリケーション部103を実行する。
【0056】
サーバアプリケーション部103は、このリクエストを受けると、ロケール保存部102eからロケールを取得し(ST21)、取得したロケールに応じた処理を実行し、ロケールに応じた処理結果をアプリケーションサーバ部101に送出する(ST22)。
【0057】
アプリケーションサーバ部101は、ロケールに応じた処理結果を含むレスポンスをブラウザ部201に送信する(ST23)。
【0058】
ブラウザ部201は、ロケールに応じた処理結果を含むレスポンスに基づいて、ロケールに応じた次画面を表示する(ST24)。
【0059】
上述したように本実施形態によれば、入力された文字列を受けると、サーバアプリケーション部103の実行の前に、ロケールをロケール保存部102eに設定する処理を割り込ませるように、当該文字列を送出し、当該送出された文字列に含まれる各文字を文字コードに変換し、当該各文字が変換された文字コードと、ロケール毎文字コード定義部102dに定義された文字コード範囲とを比較することにより、当該変換された文字コードを含む文字コード範囲に対応するロケールを判定し、当該判定されたロケールをロケール保存部102eに設定する処理を実行する構成により、利用者にロケール情報を選択させずに、且つブラウザ部201から送信されるHTTPリクエストのロケール情報を用いずに、利用者のロケールを設定することができる。
【0060】
<第2の実施形態>
図6は第2の実施形態に係るロケール設定プログラムが適用されたロケール設定部を備えたサーバ装置及びクライアント装置からなるクライアントサーバシステムの構成を示す模式図であり、図1と同一部分については同一符号を付してその詳しい説明を省略し、ここでは異なる部分について主に述べる。
【0061】
本実施形態は、第1の実施形態におけるサーバアプリケーション部103の具体例であり、Webアプリケーションの入力チェックでエラーが発生した場合、利用者のロケールに応じた言語でエラーメッセージを表示する形態となっている。
【0062】
例えば、Webアプリケーションで名前を入力する画面があり、3文字以内という入力チェックルールがあるとする。ここで、利用者が“東芝太郎”と入力した場合、前述したロケール設定部102により設定された日本を表すロケールに応じて“名前は3文字以内で入力してください”と日本語のエラーメッセージを表示する。また、利用者が“Taro Toshiba”と入力した場合、前述したロケール設定部102により設定された英語圏を表すロケールに応じて“Please input your name within 8 characters”と英語のエラーメッセージを表示する。
【0063】
具体的には、サーバアプリケーション部103は、入力チェック実行部103a、入力チェックルール定義部103b及びエラーメッセージ定義部103cを備えている。
【0064】
入力チェック実行部103aは、利用者がブラウザを使って入力した文字列に対し、チェックルールに基づいて入力チェックを実行する機能をもっている。具体的には、ロケール保存部102eから利用者のロケールを取得し、ロケールに応じた入力チェックルールを入力チェックルール定義部103bから取得してチェックを実行する。チェックルールを満たさない場合はエラーメッセージ定義部103cからロケールに応じたエラーメッセージを取得し、エラーメッセージを含む処理結果をアプリケーションサーバ部101に送出する。
【0065】
入力チェックルール定義部103bは、ロケール毎の入力チェックルールが定義されており、ロケールを含むチェックルール取得要求を入力チェック実行部103aから受けると、チェックルール取得要求内のロケールに対応する入力チェックルールを入力チェック実行部103aに送出する機能をもっている。
【0066】
エラーメッセージ定義部103cは、ロケール毎の入力チェックのエラーメッセージが定義されており、ロケールを含むエラーメッセージ取得要求を入力チェック実行部103aから受けると、エラーメッセージ取得要求内のロケールに対応するエラーメッセージを入力チェック実行部103aに送出する機能をもっている。
【0067】
次に、以上のように構成されたクライアントサーバシステムの動作を図7を用いて説明する。
【0068】
ステップST1〜ST19までは、第1の実施形態と同様に実行される。これにより、ロケール保存部102eはロケールが設定された状態にあり、ロケール用フィルタ部102cは、実行完了をアプリケーションサーバ部101に通知した状態にある。
【0069】
アプリケーションサーバ部101は、ロケール用フィルタ部102aの実行後、ステップST3で受信した、文字列を格納したリクエストをサーバアプリケーション部103に送出し(ST30)、サーバアプリケーション部103を実行する。
【0070】
サーバアプリケーション部103は、このリクエストから文字列を抽出し、当該文字列を含む入力チェック要求を入力チェック部103aに送出し(ST31)、入力チェック実行部103aを実行する。
【0071】
入力チェック実行部103aは、入力チェック要求を受けると、ロケール保存部102eからロケールを取得し(ST32)、取得したロケールに応じた入力チェックルールを入力チェックルール定義部103bから取得して、入力チェック要求内の文字列のチェックを実行する(ST33)。
【0072】
ステップST33によるチェックの実行結果が正当の場合(入力チェックルールを満たす場合)には、正当を示すチェック結果をサーバアプリケーション部103に送出する。以下、前述したステップST21〜ST24の処理が実行される。
【0073】
一方、ステップST33によるチェックの実行結果がエラーを示す場合(入力チェックルールを満たさない場合)には、入力チェック実行部103aは、ロケールに応じたエラーメッセージをエラーメッセージ定義部103cから取得し(ST34)、ロケールに応じたエラーメッセージを含む処理結果をサーバアプリケーション部103を介してアプリケーションサーバ部101に送出する(ST35,ST36)。
【0074】
アプリケーションサーバ部101は、このロケールに応じたエラーメッセージを含む処理結果を含むレスポンスをブラウザ部201に送信する(ST37)。
【0075】
ブラウザ部201は、ロケールに応じたエラーメッセージを含む処理結果を含むレスポンスに基づいて、ロケールに応じたエラーメッセージを表示する(ST38)。
【0076】
上述したように本実施形態によれば、第1の実施形態と同様にしてロケールが設定されたロケール保存部102eからロケールを取得し、ロケールに応じた入力チェックルールに基づいて、入力の文字列に対するチェックを実行し、エラーを示す場合には、ロケールに応じたエラーメッセージをエラーメッセージ定義部103cから取得し、ロケールに応じたエラーメッセージを含む処理結果を送出する構成により、第1の実施形態の効果に加え、ロケールに応じたエラーメッセージを表示することができる。
【0077】
以上説明した少なくとも一つの実施形態によれば、入力された文字列を文字コードに変換し、当該文字コードと、ロケール毎文字コード定義部102cに定義された文字コード範囲とを比較することにより、当該文字コードを含む文字コード範囲に対応するロケールを判定し、当該ロケールをロケール保存部102eに設定する処理を実行する構成により、利用者にロケール情報を選択させずに、且つブラウザから送信されるHTTPリクエストのロケール情報を用いずに、利用者のロケールを設定することができる。
【0078】
なお、上記の各実施形態に記載した手法は、コンピュータに実行させることのできるプログラムとして、磁気ディスク(フロッピー(登録商標)ディスク、ハードディスクなど)、光ディスク(CD−ROM、DVDなど)、光磁気ディスク(MO)、半導体メモリなどの記憶媒体に格納して頒布することもできる。
【0079】
また、この記憶媒体としては、プログラムを記憶でき、かつコンピュータが読み取り可能な記憶媒体であれば、その記憶形式は何れの形態であっても良い。
【0080】
また、記憶媒体からコンピュータにインストールされたプログラムの指示に基づきコンピュータ上で稼働しているOS(オペレーティングシステム)や、データベース管理ソフト、ネットワークソフト等のMW(ミドルウェア)等が上記実施形態を実現するための各処理の一部を実行しても良い。
【0081】
さらに、各実施形態における記憶媒体は、コンピュータと独立した媒体に限らず、LANやインターネット等により伝送されたプログラムをダウンロードして記憶または一時記憶した記憶媒体も含まれる。
【0082】
また、記憶媒体は1つに限らず、複数の媒体から上記の各実施形態における処理が実行される場合も本発明における記憶媒体に含まれ、媒体構成は何れの構成であっても良い。
【0083】
なお、各実施形態におけるコンピュータは、記憶媒体に記憶されたプログラムに基づき、上記の各実施形態における各処理を実行するものであって、パソコン等の1つからなる装置、複数の装置がネットワーク接続されたシステム等の何れの構成であっても良い。
【0084】
また、各実施形態におけるコンピュータとは、パソコンに限らず、情報処理機器に含まれる演算処理装置、マイコン等も含み、プログラムによって本発明の機能を実現することが可能な機器、装置を総称している。
【0085】
なお、本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【0086】
100…サーバ装置、101…アプリケーションサーバ部、102…ロケール設定部、102a…ロケール用フィルタ部、102b…ロケール判定部、102c…文字コード変換部、102d…ロケール毎文字コード定義部、102e…ロケール保存部、103…サーバアプリケーション部、103a…入力チェック実行部、103b…入力チェックルール定義部、103c…エラーメッセージ定義部、200…クライアント装置、201…ブラウザ部。

【特許請求の範囲】
【請求項1】
入力された文字列に応じたロケールが設定されるメモリと、前記ロケールに応じた処理が記述されたアプリケーションプログラムを実行するプロセッサとを備えたサーバ装置に用いられ、前記文字列に応じたロケールを前記メモリに設定する処理を前記プロセッサに実行させるロケール設定プログラムであって、
前記サーバ装置を、
予めロケール毎に文字コード範囲が定義されたロケール毎文字コード定義手段、
前記入力された文字列を受けると、前記アプリケーションプログラムの実行の前に、前記ロケールを前記メモリに設定する処理を割り込ませるように、当該文字列を送出するロケール用フィルタ手段、
前記送出された文字列に含まれる各文字を文字コードに変換する文字コード変換手段、
前記各文字が変換された文字コードと、前記ロケール毎文字コード定義手段に定義された文字コード範囲とを比較することにより、当該変換された文字コードを含む文字コード範囲に対応するロケールを判定するロケール判定手段、
前記判定されたロケールを前記メモリに設定する処理を実行するロケール設定手段、
として機能させるためのロケール設定プログラム。
【請求項2】
請求項1に記載のロケール設定プログラムにおいて、
前記ロケール判定手段は、前記変換された全ての文字コードを含む文字コード範囲に対応するロケールを判定することを特徴とするロケール設定プログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate


【公開番号】特開2012−221231(P2012−221231A)
【公開日】平成24年11月12日(2012.11.12)
【国際特許分類】
【出願番号】特願2011−86521(P2011−86521)
【出願日】平成23年4月8日(2011.4.8)
【出願人】(000003078)株式会社東芝 (54,554)
【出願人】(301063496)東芝ソリューション株式会社 (1,478)
【Fターム(参考)】