JavaEEでConnectionを使うときはclose()を忘れずに

最近Glassfish v3.0.1 を使ったJavaEE+Wicketで開発しているのですがはまった出来事があります。
それはjava.sql.Connectionのクローズもれです。

Java1年生かと見紛うばかりの初歩的なミスですが、なぜか「JavaEEのConnectionはclose()しなくてもOK」という思い込みがあったんですよね。

それどころかclose()してしまうとトランザクションが終了してしまうので、close()してはいけないとさえ思っていました。

JTAを使うと、Connectionのクローズのタイミングとトランザクションが終わるタイミングとは切り離されるとのこと。
自分の知識は生兵法なんだなぁ、と反省しきりです。