Problème dozer et héritage

Problème dozer et héritage - Java - Programmation

Marsh Posté le 04-06-2009 à 10:01:22    

Bonjour,
 
voici ma config : RSA V6, dozer 4.3 (choix imposés)
Voici mon mapping :  

Code :
  1. <mapping map-null="false">
  2.   <class-a>fr.tm.ima.ref.dto.catalogue.CadreFonctionnelSolution</class-a>
  3.   <class-b>fr.tm.ima.ref.sc.catalogue.bo.CadreFonctionnelSolutionBO</class-b>
  4.   <field>
  5.     <a>cadreFonctionnelDemande.idCadreFonctionnelDemande</a>
  6.     <b>cadreFonctionnelDemande</b>
  7.   </field>
  8.   <field-exclude>
  9.     <a>cadreFonctionnelDemande</a>
  10.     <b>cadreFonctionnelDemande</b>
  11.   </field-exclude>
  12.   <field>
  13.     <a>solution.idSolution</a>
  14.     <b>solution</b>
  15.   </field>
  16.   <field-exclude>
  17.     <a>solution</a>
  18.     <b>solution</b>
  19.   </field-exclude>
  20. </mapping>


et

Code :
  1. <mapping map-null="false">
  2.   <class-a>fr.tm.ima.ref.dto.catalogue.CadreFonctionnelSolutionMEO</class-a>
  3.   <class-b>fr.tm.ima.ref.sc.catalogue.bo.CadreFonctionnelSolutionMEOBO</class-b>
  4.   <field>
  5.     <a>cadreFonctionnelGarantieDefaut.idCadreFonctionnelGarantie</a>
  6.     <b>idCadreFonctionnelGarantieDefaut</b>
  7.   </field>
  8. </mapping>


 
CadreFonctionnelSolution est la classe mère de CadreFonctionnelSolutionMEO  
CadreFonctionnelSolutionBO est la classe mère de CadreFonctionnelSolutionMEOBO
 
J'ai une exclusion solution<->soliution pour éviter le mapping Un/Un par défaut (je ne peux pas utiliser wildcard=false car j'en ai besoin piur le reste du mapping Un/Un)
 
Et voici mon erreur : -
2009-06-03 13:50:03 ERROR net.sf.dozer.util.mapping.MappingProcessor :
Field mapping error -->
MapId: null
Type: null
Source parent class:
fr.tm.ima.ref.sc.catalogue.bo.CadreFonctionnelSolutionMEOBO
Source field name: solution
Source field type: class java.lang.Long
Source field value: 90
Dest parent class:
fr.tm.ima.ref.dto.catalogue.CadreFonctionnelSolutionMEO
Dest field name: solution
Dest field type: fr.tm.ima.ref.dto.catalogue.Solution
java.lang.IllegalArgumentException
  at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
  at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:79)
  at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
  at java.lang.reflect.Method.invoke(Method.java:618)
  at net.sf.dozer.util.mapping.util.ReflectionUtils.invoke(ReflectionUtils.java:256)
  at net.sf.dozer.util.mapping.propertydescriptor.GetterSetterPropertyDescriptor.invokeWriteMethod(GetterSetterPropertyDescriptor.java:228)
  at net.sf.dozer.util.mapping.propertydescriptor.GetterSetterPropertyDescriptor .setPropertyValue(GetterSetterPropertyDescriptor.java:89)
  at net.sf.dozer.util.mapping.fieldmap.FieldMap.writeDestValue(FieldMap.java:90)
  at net.sf.dozer.util.mapping.MappingProcessor.writeDestinationValue(MappingProcessor.java:827)
  at net.sf.dozer.util.mapping.MappingProcessor.mapFromFieldMap(MappingProcessor.java:305)
  at net.sf.dozer.util.mapping.MappingProcessor.mapField(MappingProcessor.java:244)
  at net.sf.dozer.util.mapping.MappingProcessor.map(MappingProcessor.java:213)
  at net.sf.dozer.util.mapping.MappingProcessor.processSuperTypeMapping(MappingProcessor.java:962)
  at net.sf.dozer.util.mapping.MappingProcessor.map(MappingProcessor.java:196)
  at net.sf.dozer.util.mapping.MappingProcessor.map(MappingProcessor.java:152)
  at net.sf.dozer.util.mapping.MappingProcessor.map(MappingProcessor.java:110)
  at net.sf.dozer.util.mapping.MappingProcessor.map(MappingProcessor.java:105)
  at net.sf.dozer.util.mapping.DozerBeanMapper.map(DozerBeanMapper.java:94)
  at fr.tm.ima.ref.sc.catalogue.SCCatalogueImpl.mettreAjourGarantieParDefautLiee(SCCatalogueImpl.java:219)
 
Je ne vois pas pourquoi l'exclusion ne fonctionne pas !!  :fou:  :fou:  :fou:  
Quelqu'un aurait-il une solution ?
 
Cdt
Frédéric


---------------
Fred => http://www.meance.free.fr
Reply

Marsh Posté le 04-06-2009 à 10:01:22   

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed