DataProviderの中身

dataSet.itemsをリモーティングの引数にしてみたら、配列の要素のオブジェクトに勝手に「__id__=IID27419967018」っというプロパティと値が設定されていました。JavaBeans側に無いプロパティはマッピングされないだけなので、問題はありません。

DataGridのdataProviderには_dgInit, _dg, _desiredTypes, _datasetというプロパティがあり、Data TypeをArrayにしていたとしても、dataProviderを直接リモーティングの引数にして、Listにマッピングする事はできないようです。なぜならDataGrid.dataProviderは直接データを保持していないからです。上に述べた_datasetに実際のデータが格納されているコンポーネントへの参照が入っているからです。

ではDataGridの値を一括でサーバへ送信するにはどうすれば良いのでしょうか?DataGridを使う場合は、DataSetかDataHolderのDataProviderを経由しているはずなので、変更されたDataGridの値を一括でサーバへ送信したい場合はDataSet.itemsかDataHolder.itemsを使えば楽チンみたいです。

DataGridのデータをListとして、行データをJavaBeansとするには、DataProvider.getItemAtを使ってRowオブジェクトを取得し、_remoteClassプロパティを追加して、Arrayに代入して、そのArrayをリモーティングの引数にする??

ああ、こんがらがってきました(笑)とりあえずS2OpenAMF+Flashの場合は妙な挙動はしないようです。