I run into an error when unmarshalling: Expected "owner" end tag, found
"customcollectionone" start tag.

I suspect I'm missing something. Let me elaborate. 

Suppose I have four classes:
-Owner
-GenericCustomCollection extends ArrayList
-SpecificCustomCollectionOne extends GenericCustomCollection
-SpecificCustomCollectionTwo extends GenericCustomCollection

Now, Owner has an attribute of type GenericCustomCollection (called
'collectionattr'. During run-time, the type of the collection may need
to switch, hence either one of the non-abstract 'specific' collection
types is assigned to the abstract 'generic' collection. 

My binding looks like this: 

<mapping class="java.util.ArrayList" name="arraylist"/>
<mapping class="GenericCustomCollection"
        extends="java.util.ArrayList" abstract="true"/>
<mapping class="SpecificCustomCollectionOne"
        extends="GenericCustomCollection" 
        name="collectiontypeone">
        <collection usage="required">
                <structure map-as="SomeType"/>
        </collection>
</mapping>
<mapping class="SpecificCustomCollectionTwo"
        extends="GenericCustomCollection" 
        name="collectiontypetwo">
        <collection usage="required">
                <structure map-as="SomeOtherType"/>
        </collection>
</mapping>

<mapping class="Owner" name="owner">                    
        <structure field="collectionattr" usage="required"/>
</mapping>

Marshalling works fine:
<owner> <collectiontypeone> <sometype/> </collectiontypeone> </owner>

However, I get the error message above when unmarshalling. What should
I change in my binding? Or do I need a factory or something? Or doesn't
that have to do with the problem?

Hope you can help,

Johan Walters

(btw I changed classnames for clarity)





 
____________________________________________________________________________________
Never Miss an Email
Stay connected with Yahoo! Mail on your mobile.  Get started!
http://mobile.yahoo.com/services?promote=mail

-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys - and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________
jibx-users mailing list
jibx-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/jibx-users

Reply via email to