Ajaxフレームワーク ユーザーズガイド
|
目次
索引

|
3.6.1 データ型変換機能の概要
ここでは、データ型変換機能の概要として、以下の項目を説明します。
以下の図に、データ型変換機能の構成要素を示します。
[図: データ型変換機能の構成要素]

- データ型変換機能
JavaScriptとJavaのデータ型変換を行います。変換には、引数用(上り)と戻り値用(下り)があります。
- 各種コンバータ
1つのJavaScriptオブジェクト/プリミティブを、1つのJavaのオブジェクト/プリミティブに変換するコンポーネントです。Ajaxフレームワークでは、多数のコンバータが用意されており、コンバータごとに変換の方式が異なります。コンバータの詳細は、“コンバータ一覧”を参照してください。
- Java型情報
用意されている各種コンバータから、1つのコンバータを選ぶ際に利用されます。Java型情報の詳細は、“コンバータ選択のロジック”を参照してください。
- コンバータ定義ファイル
コンバータ定義ファイルの記述内容によって、コンバータをカスタマイズすることができます。コンバータ定義ファイルの詳細は、“コンバータ設定の定義(conversion)”を参照してください。


データ型変換機能では、JavaScriptとJavaの間の自然なマッピングの範囲のデータ型変換に限定しています。より複雑な変換は、アプリケーションのJavaScript側またはJava側で行ってください。

以下の図に、データ型変換の例を示します。
[図: データ型変換の例]

以下に、データ型変換機能がサポートするデータ型変換の範囲を説明します。
- 変換対象となるJavaScriptとJavaのオブジェクト(プリミティブ値を含む)は、一対一に変換されます。
- 変換対象オブジェクトの参照関係の同一性は保存されません。すなわち、あるオブジェクトが複数のオブジェクトから参照されている場合、変換後は、オブジェクトはその参照ごとに生成されます。詳細は、“図: オブジェクトの複数回参照の例”を参照してください。
- オブジェクトのツリー構造の階層は、上限が20です。それを超える場合はエラーとなります。循環参照がある場合も同一のエラーとなります。

データ型変換機能では、上記の変換の範囲で、以下のようなカスタマイズが可能です。
- コンバータの選択は、基本的に、Java側の型情報に基づいて行われます。また、ユーザ(開発者)がカスタマイズすることもできます。
- デフォルトの設定により、ユーザ(開発者)は明示的にコンバータを選ばなくても、データ型変換機能を利用できます。
- コンバータの選択方法や、コンバータの細かい動作は、定義ファイルに記述することにより変更できます。
データ型変換機能が通知する例外については、“データ型変換機能に関するメッセージ”を参照してください。
Copyright 2009 FUJITSU LIMITED