[Seasar-user:2644] BeanDescのフィールド情報の取得に関して
加藤太朗
kato
2005年 10月 2日 (日) 20:58:17 JST
お世話になります。加藤です。
あるエンティティを継承していて気づいたのですが、
対象としているエンティティで定義されている
フィールドが、継承元のエンティティでも
定義されていると、有効なのは継承元となってしまうようです。
例えば、以下のエンティティ定義があった場合に…
class GoodsOrder extends ViewGoodsOrder {
public static final String TABLE = "GOODS_ORDER"
}
class ViewGoodsOrder {
public static final String TABLE = "VIEW_GOODS_ORDER"
}
GoodsOrderのTABLEフィールドが、"GOODS_ORDER"では
なく、"VIEW_GOODS_ORDER" になってしまいます。
BeanDescImplのsetupFieldの
リフレクションでフィールド情報配列は、継承元は末尾近くに配置
されているようですので、末尾からループしてMapに積むか、
containsチェックして先勝ちでputするかといった対策が考えられます。
対応を検討いただければと思います。
以上
--------------------------------------------------------->>
Gluegent,Inc. T.Kato
http://package.gluegent.com/~kato/signature.xml
---->> generate products and services with high added value
Seasar-user メーリングリストの案内