2 Replies Latest reply on Dec 3, 2004 5:21 PM by Damian Alonso

    Unregistered handle that was not registered! null for manage

    Damian Alonso Newbie

      Hi there,

      I'm currently developing a JCA Resource Adapter on JBoss 3.2.6, and I am having two problems.

      One, that it doesn't seem like my connection pool works for anything, everytime i ask for a connection from the managed connection factory, it creates a new managed connection, and they get consumed pretty quickly, in other words my managed connection does not get returned to the pool after its use.

      Secondly, (not sure if related) I am getting the following message everytime i call the connection.close() method:

      [NoTxConnectionManager] Unregistered handle that was not registered! null for managedConnection: com.test.MyAdapterManagedConnection@ce3608

      I want to know how i can register this connection manager??

      I have seen relates posts, saying that the solution is to check the hashCode() and equals() methods, both are OK, i would like to know WHY it is occuring and then HOW to fix it please.

      Thanks in advance, Damian.

        • 1. Re: Unregistered handle that was not registered! null for ma
          Adrian Brock Master

          1) It is your ConnectionRequestInfo that is broken (hashcode/equals).
          2) You are not sending the handle connection object on the closed event.

          • 2. Re: Unregistered handle that was not registered! null for ma
            Damian Alonso Newbie

            1) What do you mean by broken? Perhaps unimplemented? I currently have my own simple implementation, this is the entire code of the class:

            import javax.resource.spi.ConnectionRequestInfo;
            import java.util.HashMap;
            
            
            public class ConnectionRequestInfoAdapter extends HashMap implements ConnectionRequestInfo {
            
             public ConnectionRequestInfoAdapter() {
             super();
             }
            }


            The Hashmap stores the connection properties so i can connect to the EIS. Should there be anything else?

            2) In my ManagedConnection class, my close method is implemented as:

            Connection conn;
            
            ...
            
            void close() {
             ConnectionEvent event = new ConnectionEvent(this,
             ConnectionEvent.CONNECTION_CLOSED);
             event.setConnectionHandle(this.conn);
             sendEvent(event);
             }
            


            Is this what you mean by sending the connection event, in the connection handler? I am still receiving the same errors, are there any other fixes or another way of closing the connection?

            Thanks again, Damian.