3 3 複数言語に対応した開発

LANSA WAM

3.3 複数言語に対応した開発

WAMでは、1つのRDMLXやWAMのプログラムをベースに複数の言語を実行できるWebアプリケーション開発をサポートしています。WebroutineおよびウェブレットのXSLスタイルシートは、言語に依存しています。

言語ごとに別の特定のスタイルシートを保存・配布することができます。例えば、英語と中国語のプレゼンテーション・ページとウェブレットを別々に作成するといったことが可能です。

複数言語のWAM開発や保守作業の方法はアプリケーションでコントロールします。

全ての言語で同じ体裁(メニュー、各Webroutineのページ・レイアウトが同じなど)のWebアプリケーションにしたい場合、最も簡単な複数言語のアプリケーションの導入方法は、ウェブレットのプロパティでキャプションのテキスト値に言語変数(*MTXT)を設定することです。こうすることで、各Webroutineとレイアウトに対し1セットのXSLソースが存在することになり、アプリケーションの管理と配布が単純化されます。

言語ごとに各Webroutineで異なるインターフェイスが必要なWebアプリケーションの場合、必要に応じてWebroutineとレイアウトXSLを各言語用に作成しなければなりません。ただし、この方法は管理するオブジェクトがより多くなるので、理想的な方法ではありません。

実行時に言語固有のページが存在しない場合、区画の省略値ページがプレゼンテーション出力として使用されます。つまり、言語ごとに別のページを用意することも可能ですが、1つのページで複数の言語に対応することもできます。

フィールドのキャプションやリストの見出しは言語に依存しており、対象となる言語で表示されます。言語変数がサポートされており、Webroutine XSLでその変数を参照できるようになっています。ウェブレットのキャプション定義では、言語特有のリテラルのテキストを定義するのではなく、言語変数を定義することができます。こうすると、ウェブレットはWAMが実行される言語環境に基づいたテキストを表示します。

 

重要:
1.WAMもしくはウェブレットの保存時、Webroutineで参照される複数言語対応テキスト変数の値が解決されます。
2.WAMまたはウェブレットを配布する際、ソースのシステムからの値は配布パッケージに取り込まれます。

 

実行時には、URLのlangパラメータに指定されている言語キーワードの受け渡しによって言語が要求されます。例えば、以下のURLは、英語のページを要求しています。

http://localhost/cgi-bin/lansaweb?srve=LEWAM01_SearchQuery+part=DEM+lang=ENG

 

詳細については、『複数言語アプリケーション設計ガイド』を参照してください。