Sitedef Database Configuration
  • 11 Jun 2025
  • 3 Minutes to read
  • Contributors
  • Dark
    Light

Sitedef Database Configuration

  • Dark
    Light

Article summary

Database Sitedef Configuration

In the sitedef you configure database access in different parts;

  • Supported database managers and drivers
  • Pinpointing Core database
  • Database declaration
  • External Server specification


Supported Database managers and drivers

The following Database managers are supported with driver bundled in Comflow:

  • SAP DB -  "com.sap.dbtech.jdbc.DriverSapDB"
  • DB2 Universal Driver - "com.ibm.db2.jcc.DB2Driver"
  • DB2 NET Driver - "COM.ibm.db2.jdbc.net.DB2Driver"
  • DB2 APP Driver - "COM.ibm.db2.jdbc.app.DB2Driver"
  • DB2 iSeries Access Driver - "com.ibm.as400.access.AS400JDBCDriver"
  • Apache Derby Client Driver - "org.apache.derby.jdbc.ClientDriver"
  • Apache Derby Client Driver 4 - "org.apache.derby.jdbc.ClientDriver40"
  • Apache Derby Embedded Driver - "org.apache.derby.jdbc.EmbeddedDriver"
  • MySql Driver-  "com.mysql.jdbc.Driver"
  • MySql Driver - "com.mysql.cj.jdbc.Driver"
  • Maria DB Driver - "org.mariadb.jdbc.Driver"
  • Jtds Driver  (SQL Server) - "net.sourceforge.jtds.jdbc.Driver"
  • Oracle Driver - "oracle.jdbc.driver.OracleDriver";
  • Oracle Driver 2 - "oracle.jdbc.OracleDriver";
  •  Jdbc Odbc driver - "sun.jdbc.odbc.JdbcOdbcDriver";
  • H2 Driver - "org.h2.Driver";
  • PostgreSQL Driver -  "org.postgresql.Driver";

The following Database managers are supported but driver is NOT delivered with Comflow (they have to be downloaded separately and put in a lib-folder) :

  • SQL Server (Azure) - "com.microsoft.sqlserver.jdbc.SQLServerDriver" 
  • Infor Compass "com.infor.idl.jdbc.Driver"
  • SQL Anywhere = "sap.jdbc4.sqlanywhere.IDriver"

Pinpointing Core database

You pinpoint the Core database  for a Comflow installation under Site/ServerInfo in the Sitedef. The Core database thereby needs to be configured first before this settings is made.

The XML attributes are:


<ServerInfo name="localhost" instance="local" serverimpl="CA">
<CoreDatabase server="localhost" service="DEFAULT" />


Database declaration

You declare all databases for a Comflow installation under Site/Databases in the Sitedef.

Each database shall be specified with all it's parameters, especially the connection Metadataid and Default schema.

<Database name="CAAPPS" metadataid="CAAPPS" defaultschema="CAAPPS" enabled="yes" querydb="" server="localhost" service="CACORE">
<Qualifiers>
<MessageField name="Enterprise" value="001"/>
<MessageField name="Company" value="1"/>
</Qualifiers>
</Database>
<Database name="QUARTZ" metadataid="SCHED" defaultschema="QUARTZ" enabled="yes" querydb="" server="localhost" service="CACORE" preparedstatementinsql="false"/>
<Database name="CACORE" metadataid="CACORE" defaultschema="CACORE" enabled="yes" querydb="" server="localhost" service="CACORE">
<Qualifiers>
<MessageField name="Enterprise" value="001"/>
<MessageField name="Company" value="1"/>
</Qualifiers>
</Database>


External Servers

You declare the connection to the databases in the External servers part. where each connected server is declared and within the server each db-connection (example for SQL server db).

<ExternalServers>
        <Server name="customer-db">
            <Services>
                <Service class="" name="comflow" port="" type="jdbcpool">
                    <Parameters>
                        <parameter name="driver" value="net.sourceforge.jtds.jdbc.Driver"/>
                        <parameter name="url" value="jdbc:jtds:sqlserver://10.20.30.40:1433/comflow-prod"/>
                        <parameter name="user" value="SA"/>
                        <parameter name="password" value="XXX"/>
                        <parameter name="schema" value="CACORE"/>
                        <parameter name="useCaseingOnTable" value="true"/>
                        <parameter name="connectionTracking" value="true"/>
                        <parameter name="timePattern" value="yyyy-MM-dd HH:mm:ss.SSS"/>
                        <parameter name="connectionInitStmts" value="SET LOCK_TIMEOUT 30000"/>
                    </Parameters>
                </Service>
                <Service class="" name="quartz" port="" type="jdbcpool">
                    <Parameters>
                        <parameter name="driver" value="net.sourceforge.jtds.jdbc.Driver"/>
                        <parameter name="url" value="jdbc:jtds:sqlserver://10.20.30.40:1433/comflow-prod"/>
                        <parameter name="user" value="SA"/>
                        <parameter name="password" value="XXXX"/>
                        <parameter name="schema" value="QUARTZ"/>
                        <parameter name="useCaseingOnTable" value="true"/>
                       <parameter name="connectionTracking" value="true"/>
                        <parameter name="timePattern" value="yyyy-MM-dd HH:mm:ss.SSS"/>
                        <parameter name="connectionInitStmts" value="SET LOCK_TIMEOUT 30000"/>
                    </Parameters>
               </Service>
            </Services>
        </Server>
        <Server name="CUSTSQL02">
            <Services>
                <Service class="" name="M3PRD" port="" type="jdbcpool">
                    <Parameters>
                        <parameter name="driver" value="net.sourceforge.jtds.jdbc.Driver"/>
                        <parameter name="url" value="jdbc:jtds:sqlserver://100.200.300.400:1435/M3FDBPRD;useNTLMv2=TRUE"/>
                        <parameter name="user" value="corzia"/>
                        <parameter name="password" value="XXXX"/>
                        <parameter name="schema" value="MVXJDTA"/>
                        <parameter name="validationQuery" value="select 1"/>
                        <parameter name="charset" value="UTF-8"/>
                        <parameter name="useCaseingOnTable" value="false"/>
                    </Parameters>
               </Service>
            </Services>
        </Server>
    </ExternalServers>



A link to the possible configurations by Apache is below:

https://commons.apache.org/proper/commons-dbcp/configuration.html


Example: Setup for SQL Server Database:

Database:

The properties in the Properties section are all default false and not necessary if not wanted.

<Database name="CACORE" metadataid="CACORE" defaultschema="CACORE" enabled="yes" querydb="" server="localhost" service="DEFAULT" >
<Properties>
<Property name="append-rowlock" value=”true”  />
<Property name="append-nolock" value=”true”  />
<Property name="append-snapshot" value=”true”  />
 </Properties>
<Database/>


Service:

 <Service class="" name="comflow" port="" type="jdbcpool">
                    <Parameters>
                        <parameter name="driver" value="net.sourceforge.jtds.jdbc.Driver"/>
                        <parameter name="url" value="jdbc:jtds:sqlserver://10.20.30.40:1433/comflow-prod"/>
                        <parameter name="user" value="SA"/>
                        <parameter name="password" value="XXXX"/>
                        <parameter name="schema" value="CACORE"/>
                        <parameter name="useCaseingOnTable" value="true"/>
                        <parameter name="connectionTracking" value="true"/>
                        <parameter name="timePattern" value="yyyy-MM-dd HH:mm:ss.SSS"/>
                        <parameter name="connectionInitStmts" value="SET LOCK_TIMEOUT 30000"/>
                  </Parameters>
               </Service>


Example: Setup for DB2/400 Database:

<Service class="" name="M3PRD" port="" type="jdbcpool">
                    <Parameters>
                        <parameter name="driver" value="com.ibm.as400.access.AS400JDBCDriver" />
						<parameter name="url" value="jdbc:as400://sesecoXX.secotools.net; tcp no delay=true " />
                        <parameter name="user" value="comflow"/>
                        <parameter name="password" value="XXXX"/>
                        <parameter name="schema" value="MVXJDTA"/>
                        <parameter name="validationQuery" value="select 1"/>
                        <parameter name="charset" value="UTF-8"/>
                        <parameter name="useCaseingOnTable" value="false"/>
                    </Parameters>
               </Service>


Documentation of as400 jdbc parameters: https://jt400.sourceforge.net/doc/com/ibm/as400/access/doc-files/JDBCProperties.html#format

Example: Setup for Oracle Database:

<Service name="CACORE" type="jdbcpool" class="" port="1521">
  <Parameters>
   <parameter name="driver" value="oracle.jdbc.driver.OracleDriver"/>
   <parameter name="url" value="jdbc:oracle:thin:@10.10.10.10:1521:xe"/>
   <parameter name="user" value="CACORE"/>
   <parameter name="password" value="XXXX"/>
   <parameter name="schema" value="CACORE"/>
   <parameter name="timeStampPattern" value="dd.MM.yyyy HH:mm:ss.SSSSSS"/>
   <parameter name="datePattern" value="dd.MM.yyyy"/>
   <parameter name="timePattern" value="dd.MM.yyyy HH:mm:ss.SSSSSS"/>
  </Parameters>
</Service>


Example: Setup for Infor Compass/Data lake Database:

Note that in the Data lake, all table column names are shorten to 4 characters. In the repository they are though described as 6 characters, which also the applications are built for. By setting the shortenColumnName="true" the column names are shortened to 4 in runtime when querying the database.

Also note that the Data lake database is very slow, why you should not expect fantastic performance.

<Database name="M3DATALAKE" metadataid="MOVEX" defaultschema="default" enabled="yes" preparedstatementinsql="false" querydb="" server="InforDataLake" service="M3CE" shortenColumnName="true" />	
<ExternalServers>
		<Server name=”InforDataLake">
			<Services>
				<Service name="M3CE" type="jdbcpool" class="" port="">
					<Parameters>
						<parameter name="driver" value="com.infor.idl.jdbc.Driver" />
						<parameter name="url" value="jdbc:infordatalake://TENANT_ID?ionApiCredentials=%7B%22ti%22% …enormuslyLongStringHere… sg%22%7D" />
						<parameter name="schema" value="default" />
						<parameter name="useCaseingOnTable" value="true" />
						<parameter name="connectionTracking" value="true" />
						<parameter name="timePattern" value="yyyy-MM-dd HH:mm:ss.SSS" />
					</Parameters>
				</Service>
			</Services>
		</Server>
	</ExternalServers> 



Was this article helpful?

Changing your password will log you out immediately. Use the new password to log back in.
First name must have atleast 2 characters. Numbers and special characters are not allowed.
Last name must have atleast 1 characters. Numbers and special characters are not allowed.
Enter a valid email
Enter a valid password
Your profile has been successfully updated.