Exceptions pertaining to data access
All enterprise bean container-managed persistence beans under the EJB 2.x specification receive a standard EJB exception when an operation fails.
JDBC applications receive a standard SQL exception if any JDBC operation fails.
WAS provides special exceptions for its relational resource adapter, to indicate that the connection currently held is no longer valid.
- The ConnectionWaitTimeout exception indicates that the application has waited for the number of seconds specified by the connection timeout setting and has not received a connection. This situation can occur when the pool is at maximum size and all of the connections are in use by other applications for the duration of the wait. In addition, there are no connections currently in use that the application can share because either the connection properties do not match, or the connection is in a different transaction.
For a V4.0 data source, the ConnectionWaitTimeout object creates an exception that is instantiated from the com.ibm.ejs.cm.pool.ConnectionWaitTimeoutException class.
For J2C connection factories, the ConnectionWaitTimeout object generates a resource exception of the com.ibm.websphere.ce.j2c.ConnectionWaitTimeoutException class.
Later version data sources issue an SQL exception of the com.ibm.websphere.ce.cm.ConnectionWaitTimeoutException subclass.
- The StaleConnection exception indicates that the connection is no longer valid.
Sub-topics
Stale connections
Example: Handling data access exception - ConnectionWaitTimeoutException (for the JDBC API)
Example: Handling data access exception - ConnectionWaitTimeoutException (for J2EE Connector Architecture)
Example: Handling data access exception - error mapping in DataStoreHelper
Database deadlock and foreign key conflicts
Related concepts
Data sources
Resource adapters
Related Reference
Connection considerations when migrating servlets, JavaServer Pages, or enterprise session beans
JDBC trace configuration
Connection pool settings
Connection pool (V4) settings