[Seasar-user:20104] Re: S2FLEXでESSR0044が発生

渡辺茂昭 [E-MAIL ADDRESS DELETED]
2010年 8月 27日 (金) 08:26:33 JST


 渡辺茂昭です。

 原因がわかったようです。どうも複数のモジュールで同一のクラスをリモート
で使用する場合に問題があるようですね。具体的にはDTO-Aに対してMODULE-Aと
MODULE-Bで使用している場合、先に使用したほうの所有と思ってしまうようです
ね。したがって、最初MODULE-Aで使用して、その後MODULE-Bで使用する場合は明
示的にflash.net.registerClassAliasを実行してあげて強制的に再度登録しなけ
ればいけないようです。
 http://forums.adobe.com/message/2203720
 
 お騒がせしました。
 
> 渡辺茂昭です。
>
> はい、それぞれに対応するjava側のDTOがありますので、定義しています。
> 
>>ありかわです。
>>
>>下記のように各DTOごとに[RemoteClass(alias="で定義していますか?
>>
>>[RemoteClass(alias="
>>public DTO-A
>>
>>[RemoteClass(alias="
>>public DTO-B
>>
>>[RemoteClass(alias="
>>public DTO-C
>>
>>2010年8月25日15:59 渡辺茂昭 <[E-MAIL ADDRESS DELETED]>:
>>>  渡辺茂昭です。
>>>
>>> 検討ありがとうございます。
>>>
>>> このAPPはメインMがModuleAとModuleBを独立に呼んでいます。AはDTOのDTO-A
>>> を使用しています。また、BはDTO-Bを使用しています。DTO-AとDTO-Bは共通の
>>> DTO-Cから派生したものです。
>>> AliasではこのようなDTOの継承関係は許可されているのでしょうか?
>>>
>>>>ありかわです。
>>>>
>>>>私の経験上クラス名が消えたことはないです。
>>>>
>>>>ただ、私はFlexのModule機能を仕事で一度も使ったことはありません。
>>>>なので、Moduleの機能とAliaseに関連性がある可能性があると考えます。
>>>>
>>>>
>>>>以上です。
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>2010年8月25日12:00 渡辺茂昭 <[E-MAIL ADDRESS DELETED]>:
>>>>> 渡辺茂昭です。
>>>>>
>>>>> もちろん、aliasは記述しています。
>>>>> FLEX側でDTOのクラス名が消えてしまうことがあるのでしょうか?
>>>>>
>>>>>>ありかわです。
>>>>>>
>>>>>>Flexからクラス名が送られていないので発生するかと思います。
>>>>>>[RemoteClass(alias="{java側のクラス名}")]
>>>>>>を送りたいクラスに定義してみてください。
>>>>>>
>>>>>>2010年8月24日19:30 Koichi Kobayashi <[E-MAIL ADDRESS DELETED]>:
>>>>>>> 小林 (koichik) です.
>>>>>>>
>>>>>>> Date:    Tue, 24 Aug 2010 19:12:47 +0900
>>>>>>> From:    渡辺茂昭 <[E-MAIL ADDRESS DELETED]>
>>>>>>> To:      [E-MAIL ADDRESS DELETED]
>>>>>>> Subject: [Seasar-user:20094] Re: S2FLEXでESSR0044が発生
>>>>>>>
>>>>>>>> org.seasar.framework.exception.ClassNotFoundRuntimeException: 
>>>>>>>> [ESSR0044]
>>>>>>>> クラスが見つかりませんでした。詳細はjava.lang.ClassNotFoundException:
>>>>>>>
>>>>>>> 本来なら ':' の後に見つからなかったクラスの
>>>>>>> 名前が表示されるはずなのですが,それがないと
>>>>>>> いうことは,クラス名に空文字列が渡されて
>>>>>>> いるのかもしれません.
>>>>>>>
>>>>>>>>       at org.seasar.flex2.core.format.amf3.io.reader.impl.
>>>>>>>> Amf3ObjectReaderImpl.readInlineClassObjectData(Amf3ObjectReaderImpl.
>>>>>>>> java:63)
>>>>>>>
>>>>>>> ここでクラス名を空文字列で forName(String) を
>>>>>>> 呼び出すケースがないか確認してみてください>ありかわさん
>>>>>>>
>>>>>>>
>>>>>>> --
>>>>>>> <component name="koichik">
>>>>>>>    <property name="fullName">"Koichi Kobayashi"</property>
>>>>>>>    <property name="email">"[E-MAIL ADDRESS DELETED]"</property>
>>>>>>>    <property name="blog">"http://d.hatena.ne.jp/koichik"</property>
>>>>>>> </component>
>>>>>>>
>>>>>>> _______________________________________________
>>>>>>> Seasar-user mailing list
>>>>>>> [E-MAIL ADDRESS DELETED]
>>>>>>> https://ml.seasar.org/mailman/listinfo/seasar-user
>>>>>>>
>>>>>>_______________________________________________
>>>>>>Seasar-user mailing list
>>>>>>[E-MAIL ADDRESS DELETED]
>>>>>>https://ml.seasar.org/mailman/listinfo/seasar-user
>>>>> _______________________________________________
>>>>> Seasar-user mailing list
>>>>> [E-MAIL ADDRESS DELETED]
>>>>> https://ml.seasar.org/mailman/listinfo/seasar-user
>>>>>
>>>>_______________________________________________
>>>>Seasar-user mailing list
>>>>[E-MAIL ADDRESS DELETED]
>>>>https://ml.seasar.org/mailman/listinfo/seasar-user
>>> _______________________________________________
>>> Seasar-user mailing list
>>> [E-MAIL ADDRESS DELETED]
>>> https://ml.seasar.org/mailman/listinfo/seasar-user
>>>
>>_______________________________________________
>>Seasar-user mailing list
>>[E-MAIL ADDRESS DELETED]
>>https://ml.seasar.org/mailman/listinfo/seasar-user
>_______________________________________________
>Seasar-user mailing list
>[E-MAIL ADDRESS DELETED]
>https://ml.seasar.org/mailman/listinfo/seasar-user


Seasar-user メーリングリストの案内