JPA @TableGenerator compartido entre varias entidades

Tengo una Entidad 'perro' con un @Id y un @TableGenerator

...
@TableGenerator(table = "seq", name = "dog_gen", pkColumnName = "seq_name", valueColumnName="seq_val")
@Id @GeneratedValue(strategy = GenerationType.TABLE, generator = "dog_gen")
private Long id;
...

¿Hay alguna manera de reutilizar el mismo generador de tablas (dog_gen) en otra entidad? Quiero mantener la misma secuencia de identificación en dos entidades independientes, digamos

perro = 1, perro = 2, perro = 3, gato = 4, gato = 5, perro = 6 y así sucesivamente ...

Ambas entidades no comparten una superclase común para implementar algún tipo de herencia con la propiedad id.

Si agrego el@GeneratedValue (generator = "dog_gen") en mi entidad cat, omitir la declaración @TableGenerator arroja una excepción que dice que no puede encontrar el generador al iniciar el contexto.

Caused by: org.hibernate.AnnotationException: Unknown Id.generator: dog_gen
at org.hibernate.cfg.BinderHelper.makeIdGenerator(BinderHelper.java:413)
at org.hibernate.cfg.AnnotationBinder.bindId(AnnotationBinder.java:1795)
at org.hibernate.cfg.AnnotationBinder.processElementAnnotations(AnnotationBinder.java:1229)
at org.hibernate.cfg.AnnotationBinder.bindClass(AnnotationBinder.java:733)
at org.hibernate.cfg.AnnotationConfiguration.processArtifactsOfType(AnnotationConfiguration.java:498)
at org.hibernate.cfg.AnnotationConfiguration.secondPassCompile(AnnotationConfiguration.java:277) 

Respuestas a la pregunta(1)

Su respuesta a la pregunta