Oracle WebLogic Server APIs · Schema
WebLogic JDBC Data Source Configuration
Configuration schema for an Oracle WebLogic Server JDBC system resource (data source) including connection pool settings, driver parameters, and transaction configuration.
Application ServerEnterpriseJava EEMiddlewareOracleWebLogic
Properties
| Name | Type | Description |
|---|---|---|
| name | string | JDBC system resource name |
| targets | array | Target servers or clusters where this data source is deployed |
| descriptorFileName | string | JDBC module descriptor file name |
| JDBCResource | object | The JDBC resource configuration |
JSON Schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://schemas.oracle.com/weblogic/datasource-configuration",
"title": "WebLogic JDBC Data Source Configuration",
"description": "Configuration schema for an Oracle WebLogic Server JDBC system resource (data source) including connection pool settings, driver parameters, and transaction configuration.",
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "JDBC system resource name",
"minLength": 1
},
"targets": {
"type": "array",
"items": {
"type": "string"
},
"description": "Target servers or clusters where this data source is deployed"
},
"descriptorFileName": {
"type": "string",
"description": "JDBC module descriptor file name"
},
"JDBCResource": {
"type": "object",
"description": "The JDBC resource configuration",
"properties": {
"name": {
"type": "string",
"description": "JDBC resource name"
},
"JDBCDataSourceParams": {
"type": "object",
"description": "Data source parameters including JNDI names and transaction settings",
"properties": {
"JNDINames": {
"type": "array",
"items": {
"type": "string"
},
"description": "JNDI names used to look up this data source"
},
"globalTransactionsProtocol": {
"type": "string",
"description": "Protocol for handling global transactions",
"enum": [
"TwoPhaseCommit",
"LoggingLastResource",
"EmulateTwoPhaseCommit",
"OnePhaseCommit",
"None"
],
"default": "TwoPhaseCommit"
},
"scope": {
"type": "string",
"description": "Scope of the data source",
"enum": ["Global", "Application"],
"default": "Global"
},
"rowPrefetch": {
"type": "boolean",
"description": "Whether to enable row prefetching",
"default": false
},
"rowPrefetchSize": {
"type": "integer",
"description": "Number of rows to prefetch",
"default": 48
},
"algorithmType": {
"type": "string",
"description": "Algorithm for multi-data source load balancing",
"enum": ["Failover", "Load-Balancing"]
}
}
},
"JDBCDriverParams": {
"type": "object",
"description": "JDBC driver parameters",
"properties": {
"url": {
"type": "string",
"description": "JDBC connection URL"
},
"driverName": {
"type": "string",
"description": "Fully qualified JDBC driver class name"
},
"password-encrypted": {
"type": "string",
"description": "Encrypted database password"
},
"useXaDataSourceInterface": {
"type": "boolean",
"description": "Whether to use XA data source interface",
"default": true
},
"properties": {
"type": "object",
"description": "Additional JDBC driver properties",
"properties": {
"items": {
"type": "array",
"items": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "Property name"
},
"value": {
"type": "string",
"description": "Property value"
}
},
"required": ["name", "value"]
}
}
}
}
},
"required": ["url", "driverName"]
},
"JDBCConnectionPoolParams": {
"type": "object",
"description": "Connection pool configuration",
"properties": {
"initialCapacity": {
"type": "integer",
"description": "Number of physical connections to create when the pool is initialized",
"default": 1,
"minimum": 0
},
"maxCapacity": {
"type": "integer",
"description": "Maximum number of physical connections the pool can contain",
"default": 15,
"minimum": 1
},
"minCapacity": {
"type": "integer",
"description": "Minimum number of physical connections the pool maintains",
"default": 1,
"minimum": 0
},
"capacityIncrement": {
"type": "integer",
"description": "Number of connections added when demand exceeds current capacity",
"default": 1,
"minimum": 1
},
"shrinkFrequencySeconds": {
"type": "integer",
"description": "Seconds between attempts to shrink the pool to minimum capacity",
"default": 900,
"minimum": 0
},
"testTableName": {
"type": "string",
"description": "Table name or SQL statement used for connection testing"
},
"testConnectionsOnReserve": {
"type": "boolean",
"description": "Whether connections are tested when reserved from the pool",
"default": false
},
"testFrequencySeconds": {
"type": "integer",
"description": "Seconds between tests of idle connections in the pool",
"default": 120,
"minimum": 0
},
"secondsToTrustAnIdlePoolConnection": {
"type": "integer",
"description": "Seconds a connection can remain idle before testing is required",
"default": 10,
"minimum": 0
},
"connectionCreationRetryFrequencySeconds": {
"type": "integer",
"description": "Seconds between connection creation retry attempts",
"default": 0,
"minimum": 0
},
"connectionReserveTimeoutSeconds": {
"type": "integer",
"description": "Seconds to wait for a connection before timing out",
"default": 10,
"minimum": -1
},
"inactiveConnectionTimeoutSeconds": {
"type": "integer",
"description": "Seconds a reserved connection can remain inactive before it is reclaimed",
"default": 0,
"minimum": 0
},
"statementCacheSize": {
"type": "integer",
"description": "Number of prepared and callable statements cached per connection",
"default": 10,
"minimum": 0
},
"statementCacheType": {
"type": "string",
"description": "Algorithm used for maintaining the statement cache",
"enum": ["LRU", "FIXED"],
"default": "LRU"
},
"removeInfectedConnections": {
"type": "boolean",
"description": "Whether connections are removed from the pool when an application exception occurs",
"default": true
},
"wrapTypes": {
"type": "boolean",
"description": "Whether to wrap data types returned by JDBC drivers",
"default": true
},
"statementTimeout": {
"type": "integer",
"description": "Timeout in seconds for JDBC statements",
"default": -1
}
}
},
"JDBCXAParams": {
"type": "object",
"description": "XA-specific parameters",
"properties": {
"keepXaConnTillTxComplete": {
"type": "boolean",
"description": "Whether to keep the XA connection until the transaction completes",
"default": true
},
"needTxCtxOnClose": {
"type": "boolean",
"description": "Whether a transaction context is needed when closing",
"default": false
},
"xaTransactionTimeout": {
"type": "integer",
"description": "XA transaction timeout in seconds",
"default": 0
},
"xaRetryDurationSeconds": {
"type": "integer",
"description": "Duration in seconds for XA call retries",
"default": 0
},
"xaRetryIntervalSeconds": {
"type": "integer",
"description": "Interval in seconds between XA call retries",
"default": 60
}
}
}
}
}
},
"required": ["name"]
}