Tengo un bean que contiene varios atributos que son Set:
...
private Set<Tercero> tercerosIndirectos = new HashSet<Tercero>(0);
private Set<Tercero> tercerosDirectos = new HashSet<Tercero>(0);
...
Al generar el xml desde el bean me genera bien los nodos..
...
<terceros-indirectos>
<datos-personales>
<dni>dni de otro familiar</dni>
<apellido1>apellido 1 otro familiar</apellido1>
<nombre>nombre otro familiar</nombre>
<apellido2>apellido 2 otro familiar</apellido2>
</datos-personales>
<direccion>
<codigo-postal>codigo postal de otro familiar</codigo-postal>
<direccion>direccion completa de otro familiar</direccion>
<provincia>
<provincia-ds>provincia otro familiar</provincia-ds>
</provincia>
</direccion>
</terceros-indirectos>
...
pero a leer del xml y meterlo en el bean con el:
Usuario usuario=(Usuario)Unmarshaller.unmarshal(Usuario.cl ass, reader);
Me da el siguiente error...
org.exolab.castor.xml.MarshalException: Unable to instantiate java.util.Set; {File: [not available]; line: 15; column: 24}
at org.exolab.castor.xml.Unmarshaller.convertSAXExcep tionToMarshalException(Unmarshaller.java:794)
at org.exolab.castor.xml.Unmarshaller.unmarshal(Unmar shaller.java:760)
at org.exolab.castor.xml.Unmarshaller.unmarshal(Unmar shaller.java:626)
at org.exolab.castor.xml.Unmarshaller.unmarshal(Unmar shaller.java:840)
at com.ibtim.beneficios.importadorXML.prueba.CrearXml DesdeEntidad.crearBeanUsuarioDesdeXML(CrearXmlDesd eEntidad.java:52)
at com.ibtim.beneficios.importadorXML.prueba.CrearXml DesdeEntidad.main(CrearXmlDesdeEntidad.java:41)
Caused by: java.lang.InstantiationException: java.util.Set
at org.exolab.castor.xml.UnmarshalHandler.createInsta nce(UnmarshalHandler.java:2583)
at org.exolab.castor.xml.UnmarshalHandler.startElemen t(UnmarshalHandler.java:2347)
at org.exolab.castor.xml.UnmarshalHandler.startElemen t(UnmarshalHandler.java:1435)
at org.apache.xerces.parsers.AbstractSAXParser.startE lement(Unknown Source)
at org.apache.xerces.impl.XMLDocumentFragmentScannerI mpl.scanStartElement(Unknown Source)
at org.apache.xerces.impl.XMLDocumentFragmentScannerI mpl$FragmentContentDispatcher.dispatch(Unknown Source)
at org.apache.xerces.impl.XMLDocumentFragmentScannerI mpl.scanDocument(Unknown Source)
at org.apache.xerces.parsers.XML11Configuration.parse (Unknown Source)
at org.apache.xerces.parsers.XML11Configuration.parse (Unknown Source)
at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
at org.apache.xerces.parsers.AbstractSAXParser.parse( Unknown Source)
at org.exolab.castor.xml.Unmarshaller.unmarshal(Unmar shaller.java:748)
... 4 more
Caused by: java.lang.InstantiationException: java.util.Set
at org.exolab.castor.xml.UnmarshalHandler.createInsta nce(UnmarshalHandler.java:2583)
at org.exolab.castor.xml.UnmarshalHandler.startElemen t(UnmarshalHandler.java:2347)
at org.exolab.castor.xml.UnmarshalHandler.startElemen t(UnmarshalHandler.java:1435)
at org.apache.xerces.parsers.AbstractSAXParser.startE lement(Unknown Source)
at org.apache.xerces.impl.XMLDocumentFragmentScannerI mpl.scanStartElement(Unknown Source)
at org.apache.xerces.impl.XMLDocumentFragmentScannerI mpl$FragmentContentDispatcher.dispatch(Unknown Source)
at org.apache.xerces.impl.XMLDocumentFragmentScannerI mpl.scanDocument(Unknown Source)
at org.apache.xerces.parsers.XML11Configuration.parse (Unknown Source)
at org.apache.xerces.parsers.XML11Configuration.parse (Unknown Source)
at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
at org.apache.xerces.parsers.AbstractSAXParser.parse( Unknown Source)
at org.exolab.castor.xml.Unmarshaller.unmarshal(Unmar shaller.java:748)
at org.exolab.castor.xml.Unmarshaller.unmarshal(Unmar shaller.java:626)
at org.exolab.castor.xml.Unmarshaller.unmarshal(Unmar shaller.java:840)
at com.ibtim.beneficios.importadorXML.prueba.CrearXml DesdeEntidad.crearBeanUsuarioDesdeXML(CrearXmlDesd eEntidad.java:52)
at com.ibtim.beneficios.importadorXML.prueba.CrearXml DesdeEntidad.main(CrearXmlDesdeEntidad.java:41)
Caused by: java.lang.InstantiationException: java.util.Set
at org.exolab.castor.xml.UnmarshalHandler.createInsta nce(UnmarshalHandler.java:2583)
at org.exolab.castor.xml.UnmarshalHandler.startElemen t(UnmarshalHandler.java:2347)
at org.exolab.castor.xml.UnmarshalHandler.startElemen t(UnmarshalHandler.java:1435)
at org.apache.xerces.parsers.AbstractSAXParser.startE lement(Unknown Source)
at org.apache.xerces.impl.XMLDocumentFragmentScannerI mpl.scanStartElement(Unknown Source)
at org.apache.xerces.impl.XMLDocumentFragmentScannerI mpl$FragmentContentDispatcher.dispatch(Unknown Source)
at org.apache.xerces.impl.XMLDocumentFragmentScannerI mpl.scanDocument(Unknown Source)
at org.apache.xerces.parsers.XML11Configuration.parse (Unknown Source)
at org.apache.xerces.parsers.XML11Configuration.parse (Unknown Source)
at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
at org.apache.xerces.parsers.AbstractSAXParser.parse( Unknown Source)
at org.exolab.castor.xml.Unmarshaller.unmarshal(Unmar shaller.java:748)
at org.exolab.castor.xml.Unmarshaller.unmarshal(Unmar shaller.java:626)
at org.exolab.castor.xml.Unmarshaller.unmarshal(Unmar shaller.java:840)
at com.ibtim.beneficios.importadorXML.prueba.CrearXml DesdeEntidad.crearBeanUsuarioDesdeXML(CrearXmlDesd eEntidad.java:52)
at com.ibtim.beneficios.importadorXML.prueba.CrearXml DesdeEntidad.main(CrearXmlDesdeEntidad.java:41)
¿Alguien me puede ayudar?
No se si necesitare crear un mapping...pero no se como hacerlo...
Gracias.