Quando vengono inseriti PersistenceContext o PersistenceUnit, utilizzare gli oggetti EntityManager o
EntityManagerFactory e non utilizzare le sottoclassi. Questa regola rileva la presenza di
sottoclassi di EntityManager o EntityManagerFactory inserite.
Le seguenti condizioni attivano la regola:
- PersistenceContext:
- L'annotazione è definita a livello del campo.
- Il tipo di campo non è EntityManager,
javax.persistence.EntityManager
- PersistenceUnit:
- L'annotazione è definita a livello del campo.
- Il tipo di campo non è EntityManagerFactory,
javax.persistence.EntityManagerFactory
Una correzione automatica sostituirà queste sottoclassi con le classi EntityManager o EntityManagerFactory.
Esempi:
- La regola rileva il codice PersistenceContext:
@PersistenceContext
CustomEntityManager myMgr;
- La correzione automatica modificherà questo codice in:
@PersistenceContext
EntityManager
myMgr;
- Nota: se la classe non contiene già l'istruzione import di
javax.persistence.EntityManager
il codice aggiornato sarà simile a:
@PersistenceContext
javax.persistence.EntityManager
myMgr;
- La regola rileva questo codice PersitenceUnit:
@PersistenceUnit
CustomEntityManagerFactory
myFactory;
- La correzione automatica modificherà questo codice in:
@PersistenceUnit
EntityManagerFactory
myFactory;
- Nota: se la classe non contiene già l'istruzione import di
javax.persistence.EntityManagerFactory
il codice aggiornato sarà simile a:
@PersistenceUnit
javax.persistence.EntityManagerFactory
myFactory;