Data source properties file
The data source properties file enables each node and member to access the databases that are used by B2B Advanced Communications.
The data source properties file is the SystemConfigurationDSLoader.properties file in the install_dir\Members\resources directory.
B2B Advanced Communications uses data sources to identify the databases that are used by each component. The databases are specified in the data source properties file, where they can easily be reconfigured without any configuration changes to the components. You do not have to configure database information in each component. You can use the data source properties file to create unique database schemas for each component.
When you are adding a node to your installation of B2B Advanced Communications, you can directly import this file as part of the configuration of the new node.
The following table lists the data sources and the components that use them.
Data Source | Component |
---|---|
MegInfrastructureDataSource | All components |
MegCommsDataSource | AS2 and AS4 communications |
IdentityServerRepositoryDataSource | Identity |
MEGUI | User interface |
The data source properties are generated in one of the following ways when you run the Installation Manager:
- In production installations, from data that is entered on the Database page.
- In proof of concept installations, in a pre-configured file. Proof of concept installations use the Derby database.
The following table lists and describes each property. The number of the data source (#) ranges 0 - 3 for the four different data sources.
Property | Description |
---|---|
ds.#.connectionTimeout | The amount of time, in seconds, before the connection to the data source times out. Modify this property only as needed. |
ds.#.currentSchema | (DB2® only) The schema to use to connect to the DB2 database. If this property is not specified, the default for the connection is used. |
ds.#.databaseName | The name of the database. |
ds.#.dropDatabase | Indicates whether to delete an existing database when you install B2B Advanced Communications with a new database schema. |
ds.#.id | The identifier for the data source. Do not edit this value. |
ds.#.jndiName | The JNDI name for the data source. Do not edit this value. |
ds.#.maxIdleTime | The maximum amount of time, in seconds, that the data source can idle. Modify this property only as needed. |
ds.#.maxPoolSize | The maximum size for the thread pool for this data source. Modify this property only as needed. |
ds.#.minPoolSize | The minimum size for the thread pool for this data source. Modify this property only as needed. |
ds.#.password | The password for the user identifier that is used when you are connecting to the database. |
ds.#.portNumber | The port to connect to the database server. |
ds.#.serverName | The host name or IP address of the database server. |
ds.#.transactional | Indicates whether a data source participates in transactions
that are managed by the application server. Settings are the following
values:
|
ds.#.type | The Java™ Naming and Directory Interface (JNDI) source type. Do not edit this value. |
ds.#.user | The user identifier to use when you are connecting to the database. |
ds.#.vendor | The database vendor. Values are as follows:
|
ds.#.createDatabase | (Derby only) Indicates whether to automatically create the
database schema. If ds.#.createDatabase=create , then
the schema is automatically created. |
Example of a DB2 data source properties file
This code is an example of the DB2 data source properties file:
# There are 4 data sources that must be defined for the product. Each data source
# has multiple properties, so all the properties for one data source must have
# the same prefix with expected format of "ds.#.". For each data source it is
# expected that the vendor selection and the connection and vendor specific
# properties will need to be updated. Specifically it is expected that these
# following properties will be updated:
# ds.#.vendor - should be updated to indicate which database type is being used
# ds.#.serverName - should be updated with appropriate database host/ip for that data source
# ds.#.portNumber - should be updated with port that database server is using for that data source
# ds.#.currentSchema - should be updated with correct schema to use for that data source
# ds.#.user - should be updated with username to connect to database server with for that data source
# ds.#.password - should be updated with password needed to connect to database server with the user
for that data source
ds.0.connectionTimeout=10
ds.0.currentSchema=ID_SCHEMA
ds.0.databaseName=B2BAC_DB
ds.0.dropDatabase=false
ds.0.id=identityServerDS
ds.0.jndiName=jdbc/IdentityServerRepositoryDataSource
ds.0.maxIdleTime=300
ds.0.maxPoolSize=10
ds.0.minPoolSize=5
ds.0.password=correctPasswordHere
ds.0.portNumber=50000
ds.0.serverName=correctHostHere
ds.0.transactional=false
ds.0.type=javax.sql.ConnectionPoolDataSource
ds.0.user=correctUserHere
ds.0.vendor=DB2
ds.1.connectionTimeout=10
ds.1.currentSchema=CO_SCHEMA
ds.1.databaseName=B2BAC_DB
ds.1.dropDatabase=false
ds.1.id=megCommsDS
ds.1.jndiName=jdbc/B2BACCommsDataSource
ds.1.maxIdleTime=300
ds.1.maxPoolSize=10
ds.1.minPoolSize=5
ds.1.password=correctPasswordHere
ds.1.portNumber=50000
ds.1.serverName=correctHostHere
ds.1.transactional=false
ds.1.type=javax.sql.ConnectionPoolDataSource
ds.1.user=correctUserHere
ds.1.vendor=DB2
ds.2.connectionTimeout=10
ds.2.currentSchema=IN_SCHEMA
ds.2.databaseName=B2BAC_DB
ds.2.dropDatabase=false
ds.2.id=megInfrastructureDS
ds.2.jndiName=jdbc/B2BACInfrastructureDataSource
ds.2.maxIdleTime=300
ds.2.maxPoolSize=10
ds.2.minPoolSize=5
ds.2.password=correctPasswordHere
ds.2.portNumber=50000
ds.2.serverName=correctHostHere
ds.2.transactional=false
ds.2.type=javax.sql.ConnectionPoolDataSource
ds.2.user=correctUserHere
ds.2.vendor=DB2
ds.3.connectionTimeout=10
ds.3.currentSchema=UI_SCHEMA
ds.3.databaseName=B2BAC_DB
ds.3.dropDatabase=false
ds.3.id=megUIDS
ds.3.jndiName=jdbc/B2BACUI
ds.3.maxIdleTime=300
ds.3.maxPoolSize=25
ds.3.minPoolSize=5
ds.3.password=correctPasswordHere
ds.3.portNumber=50000
ds.3.serverName=correctHostHere
ds.3.transactional=false
ds.3.type=javax.sql.ConnectionPoolDataSource
ds.3.user=correctUserHere
ds.3.vendor=DB2
Example of an Oracle data source properties file
This code is an example of the Oracle data source properties file:
# There are 4 data sources that must be defined for the product. Each data source
# has multiple properties, so all the properties for one data source must have
# the same prefix with expected format of "ds.#.". For each data source it is
# expected that the vendor selection and the connection and vendor specific
# properties will need to be updated. Specifically it is expected that these
# following properties will be updated:
# ds.#.vendor - should be updated to indicate which database type is being used
# ds.#.serverName - should be updated with appropriate database host/ip for that data source
# ds.#.portNumber - should be updated with port that database server is using for that data source
# ds.#.user - should be updated with username to connect to database server with for that data source
# ds.#.password - should be updated with password needed to connect to database server with the user
for that data source
ds.0.connectionTimeout=10
ds.0.databaseName=B2BAC
ds.0.dropDatabase=false
ds.0.id=identityServerDS
ds.0.jndiName=jdbc/IdentityServerRepositoryDataSource
ds.0.maxIdleTime=300
ds.0.maxPoolSize=10
ds.0.minPoolSize=5
ds.0.password=correctPasswordHere
ds.0.portNumber=1521
ds.0.serverName=correctHostHere
ds.0.type=javax.sql.ConnectionPoolDataSource
ds.0.user=correctUserHere
ds.0.vendor=Oracle
ds.1.connectionTimeout=10
ds.1.databaseName=B2BAC
ds.1.dropDatabase=false
ds.1.id=megCommsDS
ds.1.jndiName=jdbc/MegCommsDataSource
ds.1.maxIdleTime=300
ds.1.maxPoolSize=10
ds.1.minPoolSize=5
ds.1.password=correctPasswordHere
ds.1.portNumber=1521
ds.1.serverName=correctHostHere
ds.1.type=javax.sql.ConnectionPoolDataSource
ds.1.user=correctUserHere
ds.1.vendor=Oracle
ds.2.connectionTimeout=10
ds.2.databaseName=B2BAC
ds.2.dropDatabase=false
ds.2.id=megInfrastructureDS
ds.2.jndiName=jdbc/MEGInfrastructureDataSource
ds.2.maxIdleTime=300
ds.2.maxPoolSize=10
ds.2.minPoolSize=5
ds.2.password=correctPasswordHere
ds.2.portNumber=1521
ds.2.serverName=correctHostHere
ds.2.type=javax.sql.ConnectionPoolDataSource
ds.2.user=correctUserHere
ds.2.vendor=Oracle
ds.3.connectionTimeout=10
ds.3.databaseName=B2BAC
ds.3.dropDatabase=false
ds.3.id=megUIDS
ds.3.jndiName=jdbc/MEGUI
ds.3.maxIdleTime=300
ds.3.maxPoolSize=10
ds.3.minPoolSize=5
ds.3.password=correctPasswordHere
ds.3.portNumber=1521
ds.3.serverName=correctHostHere
ds.3.type=javax.sql.ConnectionPoolDataSource
ds.3.user=correctUserHere
ds.3.vendor=Oracle
Example of a SQL Server data source properties file
This code is an example of the SQL Server data source properties file:
# There are 4 data sources that must be defined for the product. Each data source
# has multiple properties, so all the properties for one data source must have
# the same prefix with expected format of "ds.#.". For each data source it is
# expected that the vendor selection and the connection and vendor specific
# properties will need to be updated. Specifically it is expected that these
# following properties will be updated:
# ds.#.vendor - should be updated to indicate which database type is being used
# ds.#.serverName - should be updated with appropriate database host/ip for that data source
# ds.#.portNumber - should be updated with port that database server is using for that data source
# ds.#.user - should be updated with username to connect to database server with for that data source
# ds.#.password - should be updated with password needed to connect to database server with the user
for that data source
ds.0.connectionTimeout=10
ds.0.currentSchema=ID_SCHEMA
ds.0.databaseName=B2BAC_DB
ds.0.dropDatabase=false
ds.0.id=identityServerDS
ds.0.jndiName=jdbc/IdentityServerRepositoryDataSource
ds.0.maxIdleTime=300
ds.0.maxPoolSize=10
ds.0.minPoolSize=5
ds.0.password=correctPasswordHere
ds.0.portNumber=1433
ds.0.serverName=correctHostHere
ds.0.transactional=false
ds.0.type=javax.sql.ConnectionPoolDataSource
ds.0.user=correctUserHere
ds.0.vendor=SQLServer
ds.1.connectionTimeout=10
ds.1.currentSchema=CO_SCHEMA
ds.1.databaseName=B2BAC_DB
ds.1.dropDatabase=false
ds.1.id=megCommsDS
ds.1.jndiName=jdbc/MegCommsDataSource
ds.1.maxIdleTime=300
ds.1.maxPoolSize=10
ds.1.minPoolSize=5
ds.1.password=correctPasswordHere
ds.1.portNumber=1433
ds.1.serverName=correctHostHere
ds.1.transactional=false
ds.1.type=javax.sql.ConnectionPoolDataSource
ds.1.user=correctUserHere
ds.1.vendor=SQLServer
ds.2.connectionTimeout=10
ds.2.currentSchema=IN_SCHEMA
ds.2.databaseName=B2BAC_DB
ds.2.dropDatabase=false
ds.2.id=megInfrastructureDS
ds.2.jndiName=jdbc/MEGInfrastructureDataSource
ds.2.maxIdleTime=300
ds.2.maxPoolSize=10
ds.2.minPoolSize=5
ds.2.password=correctPasswordHere
ds.2.portNumber=1433
ds.2.serverName=correctHostHere
ds.2.transactional=false
ds.2.type=javax.sql.ConnectionPoolDataSource
ds.2.user=correctUserHere
ds.2.vendor=SQLServer
ds.3.connectionTimeout=10
ds.3.currentSchema=UI_SCHEMA
ds.3.databaseName=B2BAC_DB
ds.3.dropDatabase=false
ds.3.id=megUIDS
ds.3.jndiName=jdbc/MEGUI
ds.3.maxIdleTime=300
ds.3.maxPoolSize=25
ds.3.minPoolSize=5
ds.3.password=correctPasswordHere
ds.3.portNumber=1433
ds.3.serverName=correctHostHere
ds.3.transactional=false
ds.3.type=javax.sql.ConnectionPoolDataSource
ds.3.user=correctUserHere
ds.3.vendor=SQLServer
Example of a Derby data source properties file
This code is an example of a Derby data source properties file:
ds.0.id=identityServerDS
ds.0.type=javax.sql.ConnectionPoolDataSource
ds.0.jndiName=jdbc/IdentityServerRepositoryDataSource
ds.0.minPoolSize=5
ds.0.maxPoolSize=10
ds.0.connectionTimeout=10
ds.0.maxIdleTime=5
ds.0.vendor=Derby
ds.0.databaseName=IDENTITY_SERVER
ds.0.createDatabase=create
ds.1.id=megCommsDS
ds.1.type=javax.sql.ConnectionPoolDataSource
ds.1.jndiName=jdbc/B2BACCommsDataSource
ds.1.minPoolSize=5
ds.1.maxPoolSize=10
ds.1.connectionTimeout=10
ds.1.maxIdleTime=5
ds.1.vendor=Derby
ds.1.databaseName=B2BAC_COMMS
ds.1.createDatabase=create
ds.2.id=megInfrastructureDS
ds.2.type=javax.sql.ConnectionPoolDataSource
ds.2.jndiName=jdbc/MEGInfrastructureDataSource
ds.2.minPoolSize=5
ds.2.maxPoolSize=10
ds.2.connectionTimeout=10
ds.2.maxIdleTime=5
ds.2.vendor=Derby
ds.2.databaseName=B2BAC_INFRASTRUCTURE
ds.2.createDatabase=create
ds.3.id=megUIDS
ds.3.type=javax.sql.ConnectionPoolDataSource
ds.3.jndiName=jdbc/B2BACUI
ds.3.transactional=false
ds.3.minPoolSize=5
ds.3.maxPoolSize=10
ds.3.connectionTimeout=10
ds.3.maxIdleTime=5
ds.3.vendor=Derby
ds.3.databaseName=megui
ds.2.createDatabase=create
ds.3.jdbcDriver.javaxSqlConnectionPoolDataSource=org.apache.derby.jdbc.ClientConnectionPoolDataSource40
ds.3.serverName=localhost
ds.3.portNumber=1527
ds.3.user=app
ds.3.password=unused