JPA безопасности Quarkus с модулем множественной сохраняемости

#security #jpa #quarkus

#Безопасность #jpa #quarkus

Вопрос:

Есть ли способ использовать quarkus security jpa с несколькими единицами сохранения? Похоже, что JpaIdentityProvider напрямую вводит фабрику entity manager, что приводит к «Неудовлетворенной зависимости для типа javax.persistence».EntityManagerFactory» выполнение.

Возможно ли обходное решение?

Есть предложения?

Спасибо, Винсент

Ответ №1:

Чтобы преодолеть это, я настроил источник данных по умолчанию — quarkus.hibernate-orm.datasource — с источником данных, в котором есть таблица User, вот так:

 quarkus.datasource.db-kind=h2
quarkus.hibernate-orm.datasource=security
quarkus.hibernate-orm.packages=eventmgr.entity.security

quarkus.datasource.security.db-kind=h2
quarkus.datasource.security.jdbc.url=jdbc:h2:mem:security;
quarkus.flyway.security.migrate-at-start=true
quarkus.flyway.security.locations=db/security

quarkus.hibernate-orm."summary".datasource=summary
quarkus.hibernate-orm."summary".packages=eventmgr.entity.summary
quarkus.datasource.summary.jdbc.url=jdbc:postgresql://localhost:5432/summary
quarkus.datasource.summary.db-kind=postgresql
quarkus.datasource.summary.username=postgres
quarkus.datasource.summary.password=postgres
quarkus.flyway.summary.migrate-at-start=true
quarkus.flyway.summary.locations=db/migration

quarkus.hibernate-orm."event".datasource=event
quarkus.hibernate-orm."event".packages=eventmgr.entity.event
quarkus.datasource.event.db-kind=postgresql
quarkus.datasource.event.jdbc.url=jdbc:postgresql://localhost:5432/client
quarkus.datasource.event.username=postgres
quarkus.datasource.event.password=postgres
 

Протестировано с помощью Quarkus 1.13.7