If an EAR contains an EJB-JAR which contains a persistence.xml and Entity A, and that entity A references an Entity B, then the Entity B ist not found by EclipseLink in case it is not contained directly in the same EJB-JAR but instead in a second jar which is declared in the Class-Path entry of the first EJB-JAR:
EJB-JAR --> persistence.xml, Entity A, Class-Path:UTILITY-JAR
UTILITY-JAR --> Entity B
In that case at deployment asadmin says that EclipseLink complains Entity B would not be an Entity. In fact, Entity B is an entity (annotated by @Entity).
When moving Entity B from UTILITY-JAR to EJB-JAR then deployment is working well.
This is rather strange as obviously Entity B should be found in the Class-Path and it is easy to detect that it is an entity by looking at the annotation.