SQL Anywhere 11, JZ0C0: Connection is already closed

Alex picture Alex · Apr 7, 2010 · Viewed 7.5k times · Source

I develop am webservice based on apache tomcat 6.0.26, apache cxf 2.2.7, spring 3.0, hibernate 3.3 and sybase sqlanywhere 11. im using the latest JDBC Driver from SYBASE jconn.jar Version 6.

The persistence layer is based on spring + hibernate dao, the connection is configured via a JNDI datasoure (META-INF directory).

It seems that, during longer times of inactivity, the connection from the webservice to the database is closed.

Exception: java.sql.SQLException: JZ0C0: Connection is already closed.

Answer

Graeme Perrow picture Graeme Perrow · Jun 29, 2010

By default, SQL Anywhere will close an inactive connection after four hours. To change this, you can specify IdleTimeout=x (or Idle=x) in your connection string, where x is the number of minutes after which the connection will be closed (0=never). Alternatively, you can reset the default on the server using the -ti x switch - again, x is in minutes.