The situation you explained occurs because when you create a statement using a connection you obtained from a JBoss data source, the statement returned to you is an instance of WrappedStatement, but when you execute a query, the instance returned to you is the ResultSet of the JDBC driver you are using, so, when you call rset.getStatement(), the statement returned to you is an instance of the Statement of your driver, not the WrappedStatement.
Now I have the following question/suggestion:
Isn´t it suitable to create a class, for instance, WrappedResultSet, to encapsulate any JBoss specific operation on ResultSets, like obtaining the WrappedStatement instead of the driver's Statement?
Is it a bug or a suggestion? Can I post it in SourceForge?