我在GlassFish中使用JAX-WS
编写了一个Web服务。我从数据源获取数据库连接并将其传递给jOOQ。
Context context = new InitialContext();
DataSource dataSource = (DataSource) context.lookup("jdbc/datasrc");
Connection connection = dataSource.getConnection();
DSLContext create = DSL.using(connection, SQLDialect.MYSQL);
在请求结束时(基于此question),我关闭与Apache DBUtils的连接:
DbUtils.closeQuietly(connection);
问题是我只能发送一个请求。之后我得到连接关闭异常。 GlassFish中的连接池配置为:
Transaction Isolation: read-commited
Isolation Level: Guaranteed
Resource Type: javax.sql.ConnectionPoolDataSource
Datasource Classname: com.mysql.jdbc.jdbc2.optional.MysqlConnectionPoolDataSource
我是否关闭了物理连接?我在Fedora 19上使用MySQL 5.5.32,使用GlassFish 4 build 89.任何人都可以帮忙吗?
[UPDATE]
我降级为GlassFish 3.1.2.2并且相同的代码工作正常。 GlassFish 4中的连接池行为是否已更改?