Merge branch 'unit-test-jdk7' of https://github.com/rankinc/btm into unit-test-jdk7
Clear the EventRecorder before each test case, to prevent an intermittent test failure in testBackgroundRecovererSkippingInFlightTransactions with Oracle JDK7.
Ensure that both Connection and XAConnection objects are closed. With Oracle, the XAConnection holds the physical database connection and a number of other caches which we need to release.
Merge pull request #25 from rankinc/close-connections

Ensure that both Connection and XAConnection objects are closed.  Clean fix.  Thanks.
Build for JDK 1.6 and above.
JDK 1.6 includes JDBC 4.0 APIs, whereas JDK 1.7 includes JDBC 4.1. We therefore need to downgrade JDK 1.7 to use JDBC 4.0 in order to build successfully. Downgrading is achieved by adding jdbc-4.0-overlay.jar to the compiler's bootstrap classpath, where this jar contains hand-crafted, APL-compatible versions of the relevant JDBC 4.0 interfaces only.
Populate the LruStatementCache with PreparedStatement objects returned from the Driver, instead of with their BTM proxies. Otherwise the LruEvictionListener will be handed a proxy to close when a statement is evicted from the cache; This proxy will merely pretend to close the statement, and then leak the underlying statement delegate. Also, putting proxies in the cache means that PreparedStatement.isClosed() will be true for every reused object.
Merge branch 'master' into unit-test-jdk7

Conflicts:
	btm/src/main/java/bitronix/tm/resource/jms/JmsPooledConnection.java
Merge pull request #20 from rankinc/unit-test-jdk7

Fix intermittent failure with JMS unit tests and Oracle JDK7.
Merge branch 'cache-leak-fix' of github.com:rankinc/btm into rankinc-cache-leak-fix
Merge branch 'rankinc-cache-leak-fix'
Merge branch 'master' into jdk6-generics
Fix mis-merge of JDK6 branch.