jamesnetherton commented on code in PR #5147: URL: https://github.com/apache/camel-quarkus/pull/5147#discussion_r1282733844
########## docs/modules/ROOT/pages/reference/extensions/jpa.adoc: ########## @@ -50,8 +50,32 @@ endif::[] The extension leverages https://quarkus.io/guides/hibernate-orm[Quarkus Hibernate ORM] to provide the JPA implementation via Hibernate. -Refer to the https://quarkus.io/guides/hibernate-orm[Quarkus Hibernate ORM] documentation to see how to configure Hibernate and your datasource, +Refer to the https://quarkus.io/guides/hibernate-orm[Quarkus Hibernate ORM] documentation to see how to configure Hibernate and your datasource. + +Also, it leverages https://quarkus.io/guides/transaction#programmatic-approach[Quarkus TX API] to provide `TransactionStrategy` implementation. Review Comment: ```suggestion Also, it leverages https://quarkus.io/guides/transaction#programmatic-approach[Quarkus TX API] to provide a `TransactionStrategy` implementation. ``` ########## docs/modules/ROOT/pages/reference/extensions/jpa.adoc: ########## @@ -50,8 +50,32 @@ endif::[] The extension leverages https://quarkus.io/guides/hibernate-orm[Quarkus Hibernate ORM] to provide the JPA implementation via Hibernate. -Refer to the https://quarkus.io/guides/hibernate-orm[Quarkus Hibernate ORM] documentation to see how to configure Hibernate and your datasource, +Refer to the https://quarkus.io/guides/hibernate-orm[Quarkus Hibernate ORM] documentation to see how to configure Hibernate and your datasource. + +Also, it leverages https://quarkus.io/guides/transaction#programmatic-approach[Quarkus TX API] to provide `TransactionStrategy` implementation. When a single persistence unit is used, the Camel Quarkus JPA extension will automatically configure the JPA component with a -`EntityManagerFactory` and `TransactionManager`. +`EntityManagerFactory` and `TransactionStrategy`. + +[id="extensions-jpa-configuration-configuring-jpamessageidrepository"] +=== Configuring JpaMessageIdRepository +It needs to use `EntityManagerFactory` and `TransactionStrategy` from the CDI container to configure the `JpaMessageIdRepository`: +[source, java] +---- +@Inject +EntityManagerFactory entityManagerFactory; + +@Inject +TransactionStrategy transactionStrategy; + +from("direct:idempotent") + .idempotentConsumer( + header("messageId"), + new JpaMessageIdRepository(entityManagerFactory, transactionStrategy, "idempotentProcessor")); +---- + +[NOTE] +==== +Since it excludes the `spring-orm` dependency, some options such as `sharedEntityManager`, `transactionManager` are not supported. Review Comment: ```suggestion Since it excludes the `spring-orm` dependency, some options such as `sharedEntityManager`, `transactionManager` are not supported. ``` ########## docs/modules/ROOT/pages/reference/extensions/jpa.adoc: ########## @@ -50,8 +50,32 @@ endif::[] The extension leverages https://quarkus.io/guides/hibernate-orm[Quarkus Hibernate ORM] to provide the JPA implementation via Hibernate. -Refer to the https://quarkus.io/guides/hibernate-orm[Quarkus Hibernate ORM] documentation to see how to configure Hibernate and your datasource, +Refer to the https://quarkus.io/guides/hibernate-orm[Quarkus Hibernate ORM] documentation to see how to configure Hibernate and your datasource. + +Also, it leverages https://quarkus.io/guides/transaction#programmatic-approach[Quarkus TX API] to provide `TransactionStrategy` implementation. When a single persistence unit is used, the Camel Quarkus JPA extension will automatically configure the JPA component with a -`EntityManagerFactory` and `TransactionManager`. +`EntityManagerFactory` and `TransactionStrategy`. + +[id="extensions-jpa-configuration-configuring-jpamessageidrepository"] +=== Configuring JpaMessageIdRepository +It needs to use `EntityManagerFactory` and `TransactionStrategy` from the CDI container to configure the `JpaMessageIdRepository`: Review Comment: ```suggestion To use `JpaMessageIdRepository` you must `@Inject` `EntityManagerFactory` and `TransactionStrategy` beans into your `RouteBuilder` and pass them to the `JpaMessageIdRepository`: ``` -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: commits-unsubscr...@camel.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org