In this article we will learn how to configure Connection Properties in a JBoss / WildFly Datasource.
Let’s step back first. To configure Connection Pooling (non-XA) to a Database you have two options:
- Using a class which implements java.sql.Driver
- Using a class which implements javax.sql.DataSource
When using a Class which implements java.sql.Driver, you can simply add a connection-property element in your datasource as in this example:
<datasource jndi-name="java:/comp/env/jdbc/mysqlantoioviDB" pool-name="MysqlPools" enabled="true" use-java-context="true"> <connection-url>jdbc:mysql://localhost:3306/demoDB</connection-url> <connection-property name="vendorProperty">value</connection-property> <driver>mysql</driver> <security> <user-name>sa</user-name> <password>sa</password> </security> <pool> <max-pool-size>30</max-pool-size> </pool> </datasource>
When using a class which implements javax.sql.DataSource, add a Property named “ConnectionProperties” with a comma separated list of properties. Example:
<datasource jndi-name="java:/comp/env/jdbc/mysqlantoioviDB" pool-name="MysqlPools" enabled="true" use-java-context="true"> <connection-url>jdbc:mysql://localhost:3306/demodb</connection-url> <connection-property name="ConnectionProperties">property1=value,property2=valueTwo</connection-property> <driver>mysql</driver> <security> <user-name>sa</user-name> <password>sa</password> </security> <pool> <max-pool-size>30</max-pool-size> </pool> </datasource>
On the other hand, for XA Datasources, you can set Properties as follows:
<xa-datasource-property name="ConnectionProperties">property1=value,property2=vaue2</xa-datasource-property>