Recuperar la lista de entidades JPA y los metadatos

Quería saber si hay una manera de obtener todas las clases de Entidades y sus metadatos para una unidad persistente específica en JPA.

Por metadatos me refiero no solo a los campos, sino también a su nombre de columna, longitud, precisión, tipo de datos, y también el nombre de la tabla y cualquier cosa que pueda obtener. Intenté con el metamodelo pero creo que eso es más para las consultas de JPQL solamente.

Necesito poder mostrarle al usuario todas las Entidades activas para alguna PU, y no quiero codificarlas en una matriz o en una base de datos, quiero que la API me diga qué Entidades tiene. Y también, si es posible, obtener las instancias administradas para cada entidad.

Supongo que podría intentar usar la reflexión para obtener todas las clases con la anotación @Entity, pero no sería bonita, y sería más difícil saber cuál pertenece a una PU específica, por lo que si la API ya expone esta información sería genial.

Preferiría una solución compatible con JPA pero si no es posible, una respuesta específica de Hibernate o EclipseLink lo haría.

¡Gracias!

Respuestas a la pregunta(2)

Su respuesta a la pregunta