[Seasar-user:15566] S2BeanUtilsでのプリミティブ型への変換失敗

Tsukasa Kawamichi [E-MAIL ADDRESS DELETED]
2008年 8月 29日 (金) 17:52:39 JST


お世話になります。川道と申します。

S2BeanUtilsにおいて、プリミティブ型のプロパティを持つBeanへのコピーで
NullPointerExceptionとなってしまいます。

使用Vers:S2.4.27
エラーとなるコード:
public class Dest {
public int intval;
}

public class Src {
public String intval = "1";
}

:
:
Dest dest = Beans.createAndCopy(Src.class, new Src())
.execute();


でNullPointerExceptionとなります。


ソースを見たところ、
org.seasar.framework.beans.util.AbstractCopyの484行目で
コピー先プロパティの親クラス取得のループで、プリミティブ型の親クラスがnullであるため
このような挙動になっているようです。

ここを
for (Class<?> clazz = targetClass; clazz != Object.class; clazz = clazz
↓
for (Class<?> clazz = targetClass; (clazz != Object.class && clazz != null);
clazz = clazz

のように変更すれば動作するようですが、ご対応いただけますでしょうか?

以上、よろしくお願いいたします。
-------------- next part --------------
HTMLの添付ファイルを保管しました...
URL: <http://ml.seasar.org/archives/seasar-user/attachments/20080829/32743954/attachment-0001.html>


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