Hi all,
 I have the following mapping.  Whenever a concrete share is rendered, the
fields on the abstract mapping are ignored.  As a result, I only get about
20% of the fields I need.  Since an abstract mapping can't have a tag name,
I'm assuming I must reference the parent somehow.  Any help would be greatly
appreciated in getting this resolved.  I have also included my output to
illustrate the issue.


<mapping class="com.purdueefcu.statements.processor.bean.Statement"
       name="Statement">
       <value name="startDate" field="startDate" />
       <value name="endDate" field="endDate" />
       <value name="accountNumber" field="accountNumber" />
       <value name="name" field="name" />
       <structure field="emailInfo" />
       <collection field="shares">

       </collection>
   </mapping>

   <!--Abstract share mapping.  All child shares should extend this mapping
since it maps 70%+ of the attributes-->
   <mapping class="com.purdueefcu.statements.processor.bean.Share"
       abstract="true">
       <value name="suffix" field="suffix" />
       <value name="description" field="description" />
       <value name="beginningBalance" field="beginningBalance" />
       <value name="totalDeposits" field="totalDeposits" />
       <value name="totalWithdrawals" field="totalWithdrawals" />
       <value name="endingBalance" field="endingBalance" />
       <!--TODO Once we're done with initial prototyping remove flexible =
true to make sure we've mapped all our sub classes
           The error with marshalling an unmapped class usually appears as
a ClassCastException-->
       <collection field="transactions"></collection>
   </mapping>

   <!--Savings mapping, should extend Share bindings-->
   <mapping class="com.purdueefcu.statements.processor.bean.Savings"
       name="Savings" extends="
com.purdueefcu.statements.processor.bean.Share">
       <value name="apy" field="apy" />
       <value name="apye" field="apye" />
       <value name="dividendsEarned" field="dividendsEarned" />
       <value name="ytdDividends" field="ytdDividends" />
   </mapping>

   <mapping class="com.purdueefcu.statements.processor.bean.Checking"
       name="Checking" extends="
com.purdueefcu.statements.processor.bean.Share">
       <value name="maintServiceCharge" field="maintServiceCharge" />
       <value name="serviceCharges" field="serviceCharges" />
       <value name="draftsCleared" field="draftsCleared" />
   </mapping>

Output

<Statement>
  <startDate>2007-06-18T19:59:11.039Z</startDate>
  <endDate>2007-06-18T19:59:11.039Z</endDate>
  <accountNumber>12345</accountNumber>
  <name>John Q Member</name>
  <EmailInfo>
     <address>[EMAIL PROTECTED]</address>
     <subject>Test subject</subject>
     <message>testmessage</message>
     <from>[EMAIL PROTECTED]</from>
  </EmailInfo>
  <Savings>
     <apy>0.03</apy>
     <apye>0.03</apye>
     <dividendsEarned>2.50</dividendsEarned>
     <ytdDividends>2.50</ytdDividends>
  </Savings>
  <Checking>
     <maintServiceCharge>0.00</maintServiceCharge>
     <serviceCharges>10.00</serviceCharges>
     <draftsCleared>10</draftsCleared>
  </Checking>
</Statement>
-------------------------------------------------------------------------
This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take
control of your XML. No limits. Just data. Click to get it now.
http://sourceforge.net/powerbar/db2/
_______________________________________________
jibx-users mailing list
jibx-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/jibx-users

Reply via email to