Properties

The BundleWrapper\examples folder contains examples of property files for all standard databases. If your database is not included in this folder, you must prepare the property file.

This table shows the properties that you must specify in the properties.txt file:

Property Description
InstallPath Specify the absolute path where the zip file is unzipped. The default value is: C:\temp\BundleWrapper.
Note: If you change this path, you must also change the localRepository property in the \BundleWrapper\build\settings.xml file.

Example:

InstallPath=C:\mylocation\BundleWrapper
OriginalJar Specify the file name of the jar that was copied to the OriginalJar folder.

Example:

OriginalJar=derbyclient.jar
BundleSymbolicName Specify a unique identifier for a bundle, based on the reverse domain name convention. This convention is also used by the Java packages.

Example:

BundleSymbolicName=com.infor.ion.org.apache.derbyclient
BundleVersion Specify the version to be used for the OSGi bundle.

A version must be of this format:

positiveInteger (.positiveInteger (.positiveInteger))-(buildNr|qualifier)

The first three positions must be a positive integer.

We recommend to use the driver version.

Example:

BundleVersion=10.8.1000002.1095077
BundleName Specify any short human-readable name for the OSGi bundle to be created for the database driver.

Example:

BundleName=Derby Driver Bundle
BundleDescription Specify any description for the OSGI bundle to be created for the database driver.

Example:

BundleDescription=JDBC Driver for Derby wrapped as an OSGi Bundle
SpringDriverClassName Specify the fully qualified class name of the database driver.

Example:

SpringDriverClassName=org.apache.derby.jdbc.ClientDriver
SpringTypeName Specify the name of the database type. This name must differ from any standard database type supported by ION, or any other customer-specific database type.

Example:

SpringTypeName=Derby
SpringReturnAutoGeneratedKeys Specify whether auto-generated keys should be selected automatically by the database. The default value is false. ION uses a prepared statement for executing insert statements on the Inbox tables. By default, this statement lists the C_ID column as the key to be returned by the statement.

Set the value to true if your database does not allow explicit selection of columns to be returned for insert statements. In that case the database will automatically determine which generated key to return.

Example:

SpringReturnAutoGeneratedKeys=false
SpringWrapAsLob Specify whether to submit a byte arrays or strings to the JDBC driver wrapped in a JDBC Blob or Clob object, using the JDBC setBlob or setClob methods with a Blob or Clob argument.

Default is false, using the common JDBC 2.0 setBinaryStream and setCharacterStream methods to set the content.

Switch this to true for explicit Blob/Clob wrapping against JDBC drivers that require such wrapping, such as PostgreSQL's.

Example:

SpringWrapAsLob=false
SpringStreamAsLob Specify whether to submit a binary stream or character stream to the JDBC driver as explicit LOB content, using the JDBC 4.0 setBlob/setClob method with a stream argument.

Default is false, using the common JDBC 2.0 setBinaryStream and setCharacterStream methods to set the content.

Switch this to true for explicit JDBC 4.0 usage, provided that your JDBC driver supports those JDBC 4.0 operations. For example, Derby's.

This setting affects stream arguments, byte array and string arguments, requiring JDBC 4.0 support.

For supporting LOB content against JDBC 3.0, see the SpringWrapAsLob setting.

Example:

SpringStreamAsLob=false
SpringOracleLobHandler Specify whether the Oracle Lob Handler must be used. This handler is only used by Oracle drivers. Default is false.

Example:

SpringOracleLobHandler=false
SpringJdbcUnprocessedPollingEntriesSql Specify the query to select the new messages from the outbox. This query is only required if the database type is used for an application connection point. For database connection points, the query is not used.

You must use placeholders in this query:

  • If you specify ?1 in the query, the placeholder is replaced by the state: 0=unprocessed, 1=processed.
  • If you specify ?2 in the query, the placeholder is replaced by the number of rows to retrieve.

When getting status information, the * in the query is replaced by the C_WAS_PROCESSED column name. The ?1 is replaced by 0. The ?2 is replaced by 1. Consequently, the query must always contain the * in the select clause.

Example:

SpringJdbcUnprocessedPollingEntriesSql=select * from COR_OUTBOX_ENTRY where C_WAS_PROCESSED = ?1 order by C_MESSAGE_PRIORITY desc, C_ID limit ?2
SpringJdbcConnectionTestSql Specify the query to test an application connection point. The query validates whether ION can connect to the required inbox and outbox tables in the database.

You must use placeholders in this query:

  • If you specify ?1 in the query, the placeholder is replaced by the required column names.
  • If you specify ?2 in the query, the placeholder is replaced by the required table names.
  • If you specify ?3 in the query, the placeholder is replaced by the number of rows to retrieve.

Example:

SpringJdbcConnectionTestSql=select ?1 from ?2 limit ?3
SpringDatabaseConnectionTestSql Specify the query to test a database connection point. The query validates whether ION can connect to the database. This query must be independent of the contents of the database.

Example:

SpringDatabaseConnectionTestSql=select CURRENT DATE from SYSIBM.SYSDUMMY1
SpringUrlRegularExpression Optionally specify a regular expression if the URL to connect to the database must meet specific requirements.

For example, the URL of DB2/400 must contain the ;prompt=false property, otherwise a Java Swing window is displayed when inserting incorrect user data. Consequently the adapter hangs, if the URL does not contain this string.

Example:

SpringUrlRegularExpression=^.*;prompt=false.*$