RO86
RO86

Reputation: 11

Mapping xml using Smooks

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

Answers (1)

Alfabravo
Alfabravo

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

Related Questions