В общем, сущности - это просто объекты Java с аннотированными свойствами (JPA).Таким образом, вы можете беспокоиться о аннотациях JPA как о зависимостях, если вы используете модель в другом приложении.Это будет только один jar с объявлениями и без последствий во время выполнения.
Или у вас есть какие-то особые планы для сущностей в Seam, например, используйте их как компоненты (не уверены в преимуществах) и, следовательно, вводите большесложные зависимости?
Более чистым, но и более сложным решением было бы использовать интерфейсы для определения сущности и иметь конкретные реализации для различных приложений, например, аннотированные bean-компоненты JPA для Seam и аннотированные bean-компоненты для других приложений.Конечно, это можно сделать вручную или с помощью фреймворка.Я использовал Eclipse EMF для генерации модели JPA, которая абстрагируется интерфейсом для использования в других приложениях, но из-за способа обработки двунаправленных зависимостей по умолчанию EMF и т. Д. Существуют некоторые предостережения.