1

A と B の 2 つの AS3 クラスがあります。クラス A には、クラス B の複数のインスタンスを保持する ArrayCollection が含まれています。

ColdFusion では、同じ名前の変数を同じ順序で並べた CFC と、各変数の cfproperty タグを使用しています。

AS3 クラスは両方とも、RemoteClass メタデータを使用して、対応する CFC に関連付けます。

問題は、A.cfc が CF から戻ってきて A.as インスタンスに適切にデータを入力する一方で、ネストされた B.as インスタンスにデータを入力できないことです。代わりに、次のエラーが表示されます。

TypeError: Error #1034: Type Coercion failed: cannot convert []@2f4465f1 to mx.collections.ArrayCollection.

ネストされた B インスタンスのコレクションを除いて、A インスタンスが正常に機能するのはなぜですか?

4

1 に答える 1

2

問題は、オブジェクトが ColdFusion から配列として返され、Flex がそれを ArrayCollection に変換したくないことでした。Flex は ColdFusion クエリを ArrayCollection に変換しますが、ColdFusion 配列は明らかに Flex では (自動的に) 配列にしかなりません。

Flex の ArrayCollection を Array に変更したところ、すべて正常に動作しました。

于 2009-04-06T18:48:24.970 に答える