@Test public void verifyNestedTranformation() throws Exception { Person person = new Person("Richard", 29); person.setChild(new Person("Dushy", 30)); BeanToNodeTransformer transformer = new BeanToNodeTransformer(); ComplexNode personNode = transformer.transform(person); assertEquals("Person", personNode.getName()); SimpleNode nameNode = (SimpleNode) personNode.getChild("name"); assertEquals("Richard", nameNode.getValue()); SimpleNode ageNode = (SimpleNode) personNode.getChild("age"); assertEquals(29, ageNode.getValue()); ComplexNode child = (ComplexNode) personNode.getChild("child"); assertNotNull(child); SimpleNode name = (SimpleNode) child.getChild("name"); assertEquals("Dushy", name.getValue()); SimpleNode age = (SimpleNode) child.getChild("age"); assertEquals(30, age.getValue()); }