2009-03-11 10 views
2

Existe-t-il un moyen de configurer le module de pesage via son fichier de mappage xml pour convertir une valeur de champ primitive int de -1 en une référence d'objet nul? Le modèle d'objet hérité par défaut la valeur à -1, de sorte que zéro peut être une sélection valide. Le nouveau modèle d'objet auquel nous mappons suppose que les valeurs non sélectionnées seront nulles et que toute valeur d'objet initialisée est valide. J'espère éviter le besoin d'écrire un convertisseur personnalisé pour ce cas.Dozer: primitive int -1 valeur de mappage d'objet nul

Répondre

2

Vous savez probablement déjà, mais les seules solutions que je peux voir sont, soit ...

  1. Pour écrire un convertisseur personnalisé pour elle.
  2. Ou, d'écrire un setter personnalisé de la propriété de destination (dans le nouveau modèle d'objet), qui prendrait soin de la traduction -1 -> null.
  3. Ou, pour écrire un accesseur personnalisé de la propriété source (dans l'ancien modèle objet), qui prendrait soin de la traduction -1 -> null.

2 et 3 sont un peu pire que 1, car ils polluent l'ancien code avec de nouvelles valeurs de gestion ou le nouveau code avec les anciennes valeurs de gestion.

Questions connexes