Configuration
batchee.properties
batchee.properties can configure the JBatch container. It will look up in the classloader (advise: put it in container loader).
Here are the available configurable services:
- TransactionManagementService
- transaction.user-transaction.jndi: when using default TransactionManagementService override the default UserTransaction jndi name
- PersistenceManagerService (service) - here are referenced default implementations configuration. They are exclusive.
- persistence.database.has-schema: if the database needs to use a schema or not
- persistence.database.schema: schema to use for persistence when using JDBC
- persistence.database.jndi: jndi name of the datasource to use for persistence when using JDBC default implementation
- persistence.database.driver: jdbc driver to use for persistence when using JDBC default implementation if no jndi name is provided
- persistence.database.url: jdbc url to use for persistence when using JDBC default implementation if no jndi name is provided
- persistence.database.user: jdbc user to use for persistence when using JDBC default implementation if no jndi name is provided
- persistence.database.password: jdbc password to use for persistence when using JDBC default implementation if no jndi name is provided
- persistence.database.tables.checkpoint: checkpoints table name
- persistence.database.tables.job-instance: job instances table name
- persistence.database.tables.job-execution: job executions table name
- persistence.database.tables.step-execution: step executions table name
- persistence.database.db-dictionary: the org.apache.batchee.container.services.persistence.jdbc.database.Database class to use
- persistence.database.ddl: create to create the database if it doesn’t exist
- persistence.memory.global: storing statically data when using in memory persistence
- persistence.memory.max-jobs-instances: number of job instance data to store, default to 1000, -1 means keep all in memory
- persistence.jpa.entity-manager-provider: in case of org.apache.batchee.container.services.persistence.JPAPersistenceService the org.apache.batchee.container.services.persistence.jpa.EntityManagerProvider qualified name
- persistence.jpa.transaction-provider: for JPA persistence service the org.apache.batchee.container.services.persistence.jpa.TransactionProvider qualified name
- persistence.jpa.unit-name: for JPA persistence service the unit name (default batchee)
- persistence.jpa.property..*: for JPA persistence service the persistence-unit properties
- JobStatusManagerService
- BatchThreadPoolService
- BatchKernelService
- JobXMLLoaderService
- BatchArtifactFactory
- SecurityService
Note about JPA persistence service: to stay portable entities are not enhanced. Therefore you need to use a javaagent to do so.
To override a service implementation just set the key name (from the previous list) to a qualified name.
Some more configuration is available in batchee.properties:
- org.apache.batchee.jmx: a boolean activating (by default) or not the JMX facade for the JobOperator
- org.apache.batchee.jmx.application: a name to distinguish job operator between applications when batchee is not shared (will be shown in JMX name)
- org.apache.batchee.init.verbose: boolean activating BatchEE logo print at startup
- org.apache.batchee.init.verbose.sysout: use System.out to print BatchEE logo instead of JUL
- org.apache.batchee.step.listeners.before: global step listener references executed before all others
- org.apache.batchee.step.listeners.after: global step listener references executed after all others
- org.apache.batchee.job.listeners.before: global job listener references executed before all others
- org.apache.batchee.job.listeners.after: global job listener references executed after all others