[Seasar-user:5786] [S2Dxo] DTOからネストしたJavaBeansへの代入ができない
小林正和
[E-MAIL ADDRESS DELETED]
2007年 1月 19日 (金) 20:37:09 JST
masapon1967と申します。
Seasar2.4で開発を行っています。
エンティティ - DTO間の変換にDXOを使用しています。
DTOからネストしたJavaBeansへの代入をConversionRuleアノテーションで行っていますが、NullPointerExceptionが発生します。
書き方が悪いのだとは思いますが、どうすれば代入が可能になるのでしょうか。
package example.entity;
class Parent
{
private int id;
//以下、idのgetter, setter
}
package example.entity;
class Child
{
private Parent parent;
//以下、parentのgetter, setter
}
package example.dto;
class ChildDto
{
private int id;
//以下、idのgetter, setter
}
package example.dxo
interface ChildDxo {
@ConversionRule("parent.id : id")
Child convert(ChildDto childDto);
}
class ChildDxoTest extends S2TestCase {
private ChildDxo childDxo; // setUp()でapp.diconをインクルード
public final void testConvertChildDto(){
ChildDto childDto = new ChildDto();
childDto.setId(10);
Child child = childDxo.convert(childDto);
assertEquals(10, child.getParent().getId()); //
<ここでNullPointerExceptionが発生
}
}
ちなみに、ネストしたJavaBeansからDTOへの代入はできています。
プロジェクト自体はDolteng 0.16.1でTeeda + S2Daoで作成しました。
jdk1.5.0_10
--
------------------------------------------------------------------------
Masakazu Kobayashi ([E-MAIL ADDRESS DELETED])
Seasar-user メーリングリストの案内