Je maintiens un code Java complexe et le démoulage de Castor (v1.2) est très lent à cause de quelques objets Java "manquants". Vous voyez, le XML contient plus de champs que ce dont j'ai besoin, mais Castor essaie à plusieurs reprises d'instancier les objets Java, ce qui provoque de nombreuses erreurs ClassNotFound.Comment obtenir que Castor ignore certains champs XML?
Castor Mapping fichier:
<mapping>
<class name="com.example.imaging.product.Product">
<map-to xml="product"/>
<field name="productId" type="long">
<bind-xml name="id" node="attribute"/>
</field>
</class>
<class name="com.example.imaging.product.RegionConfiguration">
<map-to xml="mediaConfiguration"/>
<field name="name" type="string">
<bind-xml name="name" node="attribute"/>
</field>
<field name="design" type="int">
<bind-xml name="designId" node="attribute"/>
</field>
</class>
</mapping>
XML Source:
<?xml version="1.0"?>
<product id="1234">
<productImage colorId="1"/>
<mediaConfiguration name="Front" designId="98765" />
<color id="1" name="Red" default="true"/>
</product>
Mon problème est que le champ ne color
pas d'équivalent Java et je ne veux pas démarshalées. J'ai essayé de définir org.exolab.castor.xml.strictelements=false
dans le fichier castor.properties mais cela ne l'empêche pas de parcourir le chemin de classe et de lancer des erreurs ClassNotFound.
Comment faire en sorte que Castor ignore les éléments XML inutiles?
utilisez-vous le ressort pour faire le travail? –