FluorineFx を使用して、同じ名前の AS3 クラス (Flex) にマップされた C# クラス 'Digital' で非常に奇妙な動作をしています。
このクラス (C#) には FluorineFx.AMF3.ByteArray フィールドがあり、AS3 の ByteArray プロパティにマップされています。その目的は、データベースに格納されているバイナリ ファイルを送信することです。
「Server.Acknowledge.Failed - 確認メッセージを受け取りませんでした - mx.messaging.messages.AcknowledgeMessage を期待していましたが、null を受け取りました」というエラーが表示されることがあります (常にではありません)。このエラーは、ネットワーク上のクライアントでのみ発生し、開発マシンでは発生しません。
Firebug/FlashFirebug でデバッグすると、この例外がランダムにスローされます。
RangeError: エラー #2006: 指定されたインデックスが範囲外です。ObjectInput/readObject() で mx.collections::ArrayList/readExternal()[E:\dev\hero_private\frameworks\projects\framework\src\mx\collections\ArrayList.as:593] で mx.collections::ArrayCollection /readExternal()[E:\dev\hero_private\frameworks\projects\framework\src\mx\collections\ArrayCollection.as:149]
これは私を夢中にさせています。一般的に、これはマッピングの間違いが原因であることはわかっていますが、そうであれば、いつでもどこでも発生するはずです。
どんな助けでも感謝します。