Seguramente sea el problema que estás utilizando el mismo Statement con dos sentencias a la vez. Y según el API:
Cita: By default, only one ResultSet object per Statement object can be open at the same time. Therefore, if the reading of one ResultSet object is interleaved with the reading of another, each must have been generated by different Statement objects. All execution methods in the Statement interface implicitly close a statment's current ResultSet object if an open one exists.
Así que lo mejor es que uses Statement diferentes si tienes que tener los resultset abiertos a la vez.
S!