Par contre, je pense qu'elle ne convient pas exactement au
problème, car l'objet à manipuler devrait être un javaBean
car wicket affiche un propriété d'un bean, par exemple:
columns.add(new PropertyColumn<Molecule>(new
Model<String>(getString("Molecule.nomCommun")),
"nomCommun", "nomCommun"));
il va appeler la méthode getNomCommun() de la ligne courant.
Il suffit de ne pas utiliser PropertyColumn et de créer à la place
une classe interne anonyme qui hérite
d'AbstractColumn<Molecule>.
Nous allons également essayer de réfléchir à une solution.
Pour revenir a la même problématique pour les Produit, les molécules
portant sur les produits, cela devient également lorsque l'on doit afficher
le nom du programme sachant que:
* la ligne est soit une Molecule, soit une MoleculeProvenance
* le produit est soit une Fraction, soit un extrait
Par exemple, pour la référence du lot, je dois faire deux cas encore
suivant le type de produit:
* "produit.purification.lotSource.ref"
* "produit.extraction.lot.ref"
Dans ce cas particulier où on doit afficher " - " (valeur nulle)
quand c'est une Molecule, et la valeur de deux propriétés
différentes (suivant si c'est une Fraction ou un Extrait) quand
c'est une MoleculeProvenance, je conseillerais également d'utiliser
la solution de surcharge pour obtenir la bonne propriété. Les
méthodes aurait alors deux arguments comme par exemple :
RowMoleculeFinder.getProgrammeProperty(Molecule, Fraction) (au total
4 surcharges pour chacun des cas).