Hi Rachel,

it looks like your XML didn't make it through to the mailing list.

Regards
Werner

Rachel Wilson wrote:
> [XML]
>  
> I need to unmarshall a list of simple objects. I'd like iterate
through them without having to create a wrapper java class merely to
hold the list of objects in which I'm interested.
> 
> Very similar to this poster:
http://www.mail-archive.com/[email protected]/msg02830.html
> 
> And working almost exactly like this example:
http://www.castor.org/how-to-map-a-list-at-root.html
> 
> However after the unmarshalling step when I try and loop through what
> 
I would expect to be PublicationImage objects in an ArrayList but
instead I'm getting org.exolab.castor.types.AnyNode objects and
therefore fails with a ClassCastException.
> 
> I've tried all sorts of variations using location attributes in the
mapping file or trying to map-to different nodes but it always falls
over at the same step for the same reason. Here is a simplified version
of what I have at the moment...
>  
>  
> Here is the XML I'd like to unmarshall:
>  
>     
>        
>        
>     
>  
> Here is my class:
> 
>     public class PublicationImage
>     {
>         private String articleId;
>  
>         public String getArticleId()
>         {
>             return articleId;
>         }
>  
>         public void setArticleId(String articleId)
>         {
>             this.articleId = articleId;
>         }    
>     }
> 
> here is my mapping file (castor-mapping-pubs.xml):
>  
>     
>     
>       
>         
>         
>             
>         
>       
>     
> 
> And here is the unmarshalling java
>  
>     Unmarshaller unmarshaller = new Unmarshaller(ArrayList.class);
>  
>     Mapping map = new Mapping();
>     map.loadMapping(getClass().getResource( "/castor-mapping-pubs.xml" ));
>     unmarshaller.setMapping(map);
>  
>     List pubs = (ArrayList) unmarshaller.unmarshal(fileReaderForMyXML);
>  
>     Iterator pubsIt = pubs.iterator();
>     while (pubsIt.hasNext())
>     {
>         // this step is failing with a ClassCastException   
>         PublistsOutputImage pub = (PublistsOutputImage) pubsIt.next();
>     }
>  
> I'm using version 1.3 of the jars
>  
> I cannot change the XML structure that i'm unmarshalling because it is a 
> response from a third party API.
>  
> I hope you can point me at my no doubt silly mistake
>  
> Rachel
> 
>  
> _________________________________________________________________
> Windows Live Messenger: Happy 10-Year Anniversary—get free winks and 
> emoticons.
> http://clk.atdmt.com/UKM/go/157562755/direct/01/
> ---------------------------------------------------------------------
> To unsubscribe from this list, please visit:
> 
>     http://xircles.codehaus.org/manage_email
> 
> 

---------------------------------------------------------------------
To unsubscribe from this list, please visit:

    http://xircles.codehaus.org/manage_email


Reply via email to