1 Reply Latest reply on Feb 22, 2007 4:05 PM by weston.price

    Trouble with a TCP/SOCKET JCA Resource Adapter

    ameza

      Hi all,

      I have implemented a JCA Resource Adapter that connect to a C++ legacy application via socket. My problem is that I cannot get my Pool initialized with the proper settings... I am using the -ds.xml file to set the min. and max. for saving some execution time.

      (for my -ds.xml file)

      <min-pool-size>2</min-pool-size>
      <max-pool-size>5</max-pool-size>

      Here are my requirements and assumptions for my TCP/SOCKET Connector implementation;

      1) each instance of MyConnection class needs to connect to a separate process listening on a different TCP/IP port.
      connection-#1 --> localhost:12001
      connection-#2 --> localhost:12002
      connection-#3 --> localhost:12003
      2) I am not using authentication since the legacy application runs in a secured environment and doesn't supports it !
      3) The only difference in my ConnectionRequestInfo objets is the TCP/IP port number as per point #1 above. The ConnectionRequestInfo methods equals() and hashcode() are working properly !
      4) I am using <application-managed-security/> in my -ds.xml file. As documented in the WIKI for application managed settings/authentication.

      Everything work as it should when I call the MyConnectionFactory.getConnection(port_number) from let say an EJB, but not when the server allocates himself the connection. The server is using the default values from my -ds.xml file, which is normal. So, how can I make sure that every MyManagedConnection and its MyConnection are created with the proper ConnectionRequestInfoImpl data by either me or as part of the server's life cycle ?

      Forgot to mention that I have simplify the implementation of MyManagedConnection and do NOT use a Set for collection the Connection. I have choosen to go for a simpler 1 for 1 relationship.

      Cheers,