One more 'anti-pattern', actually, it's a bug IMO. When using the Remote data source code like the following can lead to a leak pretty quickly:
| | try | { | Connection conn = DataSource.getConnection() | PreparedStatement ps = conn.prepareCall("SomeSQL"); | ps.close(); | | }catch(Exception e) | { | | } | finally | { | | if(ps != null) | ps.close(); | | if(conn != null) | conn.close(); | | } | What ends up happening in this particular instance is that the first ps.close() actually removes the Statement from the internal map on the server side. At the second close attempt a SQLException is thrown (who knows why). As a result, the connection itself would never get closed in this case. This actually crept up on the TCK for Oracle10g and was causing all sorts of issues. Yes, I know that to be 'truly' safe both the ps.close() and the conn.close() should be contained within their own try/catch/finally block but this is never a guarantee. View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4038366#4038366 Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4038366 _______________________________________________ jboss-user mailing list jboss-user@lists.jboss.org https://lists.jboss.org/mailman/listinfo/jboss-user