J'ai oublié de mentionner que j'utilise @Access(AccessType.PROPERTY)
au niveau de la classe. Quoi qu'il en soit, j'ai étendu les méthodes getter associées
@ElementCollection
@Column(length=175) // keep in sync with maxDBStringLength
public List<String> getEnvironmentalInterfaces() {
return environmentalInterfaces;
}
Ainsi fait réellement l'affaire. Cependant, afin de ne pas perdre d'informations, j'ai également étendu toutes les méthodes pour ajouter un élément à la liste, comme ceci
// Must be in sync with @Column(length=175) definitions
protected static int maxDBStringLength = Constants.maxDBStringLength;
public void addEnvironmentalInterfaces(String environmentalInterface) throws StringTooLongException {
if(environmentalInterface.length() > maxDBStringLength) {
throw new StringTooLongException(maxDBStringLength, environmentalInterface.length());
}
environmentalInterfaces.add(environmentalInterface);
}
Maintenant, toutes les tables sont créées. Malheureusement, j'ai maintenant un problème NullPointer, que vous trouverez ici Envers NullPointerException lors de la création de données de test - juste au cas où vous traverseriez la même courbe d'apprentissage.