2016-11-14 7 views
2

Dans les versions 5.0.x champs AdminAuditable sont retirés des classes comme PageImpl ou StructuredContentImpl mais ils gardéNullPointerException dans AdminAuditableListener feuillue

@EntityListeners(value = { AdminAuditableListener.class }) 

..which cause de NullPointerException dans AdminAuditableListener car champ réfléchi auditable n'existe pas

À cause de cela dans 5.0.2 l'ajout d'une page dans admin a entraîné la même erreur mais cela a été corrigé dans 5.0.3. Maintenant, la même chose se produit avec l'ajout d'éléments de contenu structuré.

Sur la base de comparaison entre les deux (je ne comprends pas toutes les annotations feuillues - scarse documentation non-entreprise), je réussi à surmonter ce problème en étendant StructuredContentImpl et annoter avec

@DirectCopyTransformMember(templateTokens = DirectCopyTransformTypes.AUDITABLE_ONLY) 

Ma question est: est Est-ce vraiment un bug ou est-ce que je manque quelque chose en raison d'une faible familiarité avec les feuilles larges et de la faible probabilité que les développeurs et les testeurs aient supervisé plusieurs mêmes bogues lors d'un refactoring vérifiable?

+0

Copie possible de [Qu'est-ce qu'une exception NullPointerException, et comment la réparer?] (Http://stackoverflow.com/questions/218384/what-is-a-nullpointerexception-and-how-do-i-fix -it) – rkosegi

+0

@rkosegi: avez-vous lu toute la question? La question concerne un bogue dans un framework broadleaf interne qui aboutit à NullPointerException. Je vois que vous n'avez aucune référence sur broadleaf - alors pourquoi avez-vous marqué ma question comme doublon? – Zildyan

Répondre

1

@Zildyan Le problème PageImpl décrit en 5.0.2 a été corrigé dans la version 5.0.3 comme vous l'avez découvert. Votre évaluation de DirectCopyTransformMember/AUDITABLE_ONLY est correcte. Cela serait nécessaire afin que les colonnes appropriées soient disponibles lorsqu'un auditeur Auditable est impliqué. Votre solution de contournement pour StructuredContent est également correcte.

L'approche de l'utilisation de StructuredContentImpl a été supprimée par défaut pour le contenu en faveur de ContentItems (Enterprise). C'est probablement pourquoi cela n'a pas été révélé dans les tests. Je vais l'ajouter comme un élément à corriger dans l'édition de la communauté.

+0

Merci. Une dernière chose - "l'approche de l'utilisation de StructuredContentImpl" sera déconseillée dans les futures versions des éditions communautaires (problèmes de migration possibles)? – Zildyan