Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Name

Default Value

Description

entityType

entityClassName

Overrides the entityClassName from the URI.

persistenceUnit

camel

The JPA persistence unit used by default.

consumeDelete

true

JPA consumer only: If true, the entity is deleted after it is consumed; if false, the entity is not deleted.

consumeLockEntity

true

JPA consumer only: Specifies whether or not to set an exclusive lock on each entity bean while processing the results from polling.

flushOnSend

true

JPA producer only: Flushes the EntityManager after the entity bean has been persisted.

maximumResults

-1

JPA consumer only: Set the maximum number of results to retrieve on the Query.

transactionManager

null

This option is Registry based which requires the # notation so that the given transactionManager being specified can be looked up properly, e.g. transactionManager=#myTransactionManager. It specifies the transaction manager to use. If none provided, Camel will use a JpaTransactionManager by default. Can be used to set a JTA transaction manager (for integration with an EJB container).

consumer.delay

500

JPA consumer only: Delay in milliseconds between each poll.

consumer.initialDelay

1000

JPA consumer only: Milliseconds before polling starts.

consumer.useFixedDelay

false

JPA consumer only: Set to true to use fixed delay between polls, otherwise fixed rate is used. See ScheduledExecutorService in JDK for details.

maxMessagesPerPoll

0

JPA consumer only: An integer value to define the maximum number of messages to gather per poll. By default, no maximum is set. Can be used to avoid polling many thousands of messages when starting up the server. Set a value of 0 or negative to disable.

consumer.query

 

JPA consumer only: To use a custom query when consuming data.

consumer.namedQuery

 

JPA consumer only: To use a named query when consuming data.

consumer.nativeQuery

 

JPA consumer only: To use a custom native query when consuming data. You may want to use the option consumer.resultClass also when using native queries.

consumer.parameters

 

Camel 2.12: JPA consumer only: This option is Registry based which requires the # notation. This key/value mapping is used for building the query parameters. It's is expected to be of the generic type java.util.Map<String, Object> where the keys are the named parameters of a given JPA query and the values are their corresponding effective values you want to select for.

consumer.resultClass

 

Camel 2.7: JPA consumer only: Defines the type of the returned payload (we will call entityManager.createNativeQuery(nativeQuery, resultClass) instead of entityManager.createNativeQuery(nativeQuery)). Without this option, we will return an object array. Only has an affect when using in conjunction with native query when consuming data.

consumer.transacted

false

Camel 2.7.5/2.8.3/2.9: JPA consumer only: Whether to run the consumer in transacted mode, by which all messages will either commit or rollback, when the entire batch has been processed. The default behavior (false) is to commit all the previously successfully processed messages, and only rollback the last failed message.

consumer.lockModeType

WRITE

Camel 2.11.2/2.12: To configure the lock mode on the consumer. The possible values is defined in the enum javax.persistence.LockModeType. The default value is changed to PESSIMISTIC_WRITE since Camel 2.13.

consumer.SkipLockedEntity

false

Camel 2.13: To configure whether to use NOWAIT on lock and silently skip the entity.

usePersist

false

Camel 2.5: JPA producer only: Indicates to use entityManager.persist(entity) instead of entityManager.merge(entity). Note: entityManager.persist(entity) doesn't work for detached entities (where the EntityManager has to execute an UPDATE instead of an INSERT query)!

joinTransaction

true

Camel 2.12.3: camel-jpa will join transaction by default from Camel 2.12 onwards. You can use this option to turn this off, for example if you use LOCAL_RESOURCE and join transaction doesn't work with your JPA provider. This option can also be set globally on the JpaComponent, instead of having to set it on all endpoints.

usePassedInEntityManager

falseCamel 2.12.4/2.13.1 JPA producer only: If set to true, then Camel will use the EntityManager from the header

JpaConstants.ENTITYMANAGER instead of the configured entity manager on the component/endpoint. This allows end users to control which entity manager will be in use.

Message Headers

Camel adds the following message headers to the exchange:

...