Reputation: 11
I have the following XML, to be mapped to the mentioned class:
<xml>
<list>
<a>1</a>
<a>2</a>
<a>3</a>
</listt>
<list>
<b>1</b>
<b>2</b>
<b>3</b>
</listt>
</xml>
class xml {
List<A> aList;
List<b> bList;
}
How to map this using smooks as what I have did gives me a null "aList" , I think it can't distinguish between first and second List
:
<jb:bean beanId="xml" class="xml" createOnElement="xml">
<jb:wiring property="aList" beanIdRef="aList" />
<jb:wiring property="bList" beanIdRef="bList"/>
</jb:bean>
<jb:bean beanId="aList" class="java.util.ArrayList" createOnElement="list">
<jb:wiring beanIdRef="a" beanType="A/>
</jb:bean>
<jb:bean beanId="bList" class="java.util.ArrayList" createOnElement="list">
<jb:wiring beanIdRef="b" beanType="B/>
</jb:bean>
<jb:bean beanId="a" class="A" createOnElement="a">
...
</jb:bean>
<jb:bean beanId="b" class="B" createOnElement="b">
...
</jb:bean>
Any ideas? Thanks A LOT
Upvotes: 1
Views: 616
Reputation: 7579
Create only one list and wire to it both A and B listss mapping a and b values, in the end you'll have them all in your List anyway.
Upvotes: 1