J'ai activé le mode de détection automatique de EclipseLink 2.0 pour trouver @Entity classes annotées:autoscan de classe d'entité EclipseLink trouve non-entités
<exclude-unlisted-classes>false</exclude-unlisted-classes>
Mais EclipseLink me dit que je devrais ajouter un ID à mon entité :
causée par: Exception [EclipseLink-7161] (Eclipse persistance services - 2.0.2.v20100323-r6872): org.eclipse.persistence.exceptions.ValidationException Exception description: classe entité [classe com.example .domaine.Image] n'a pas de clé primaire spécifiée. Il devrait définir soit un @Id, @EmbeddedId ou un @IdClass. Si vous avez défini PK à l'aide de l'une de ces annotations, assurez-vous que vous n'avez pas de type d'accès mixte (champs et propriétés annotés) dans votre hiérarchie de classes d'entités.
La classe exemple:
import java.util.HashSet;
import java.util.Set;
//@Entity No annotation!
public class Image extends File {
private int width;
private int height;
private Set<Image> variants = new HashSet<Image>();
}
Comment puis-je dire que EclipseLink pas @Entity classes annotées sont pas des entités?
Quelle version d'EclipseLink? Êtes-vous sûr que Image dans les classes compilées n'a pas l'annotation @Entity? Le fichier est une entité? –
Bon conseil avec "File as a Entity"! La classe 'File' était une entité et je l'ai commentée à des fins de test, mais la classe compilée, qui a été inspectée par Eclipselink, n'était pas à jour. Après 'mvn clean' tout fonctionne. – deamon