3 Replies Latest reply on Sep 22, 2001 9:48 AM by David Jencks

    *** Hot deployment of Resource Adapter ***

    Visvakumar Durairaj Newbie

      Hi,

      Apologize for posting the same topic on more than one forum. Not sure which one is looked by the right person.

      I am trying in the process of porting our software from weblogic to jboss. I know that it's possible to deploy the Resource Adapter and lookup the connection factory without restarting or changing any weblogic configuration files. But in JBoss, I found that the Resource Adapter JNDI name has to be put in the ~/conf/default/jboss.jcml file. One whole section like the following has to be added to do jndi lookup of the connection factory.
      <!-- IB1-jdbc Adapter -->

      IB1-jdbc

      JCA:service=RARDeployer

      d2krajdbc.rar

      MinervaNoTransCMFactory
      <!-- See the documentation for the specific connection manager implementation you are using for the properties you can set -->



      <!-- Principal mapping configuration -->

      org.jboss.resource.security.ManyToOnePrincipalMapping





      Since I am fairly new, I don't know whether the hot deployment of Resource Adapter is supported or not. I am sure the experts can provide n-number of ways get around this problem. Thank you very much in advance.

      Best regards,
      Visva.

        • 1. Re: *** Hot deployment of Resource Adapter ***
          David Jencks Master

          Oops, I responded in the ejb forum... lets continue here.

          Hi,

          You don't indicate which version of jboss you are using. Capabilities differ. Lets assume you are at least at 2.4

          In jboss, there are 2 parts to using a rar.

          1. Deploy the rar itself

          2. Configure and bind into jndi a ConnectionFactory backed by the ManagedConnectionFactory, appropriate ConnectionManager, the security stuff, the links to the transaction manager, etc etc.

          (1) can be done by the AutoDeployer (with the RARDeployer) by dropping the rar into one of the watched deployment directories, such as deploy. This requires no additional configuration, but doesn't specify what particular resource manager instance you want to connect to or any parameters.

          (2) can be done either through xml configuration in the appropriate file or through direct creation and manipulation of a ConnectionFactoryLoader mbean.

          In 2.4, the xml file is jboss.jcml, as you have indicated. In 3.0/rabbithole, you can deploy multiple *service.xml files, each containing some classpath information and some mbean configurations.

          There is an example of how to directly create and manipulate a ConnectionFactoryLoader mbean from an external program in the (3.0) testsuite/src/.../jmx/tests/ConnectionFactoryLoaderUnitTestCase.java file. Browsing cvs on the web this is under jbosstest.

          At this time, you can't deploy an rar as part of an ear: I am hoping to find time to add this soon, with the capability of including a jboss-service.xml file as well so you can actually use the rar you deploy.

          I would very much like to include example configurations in the manual for any resource adapters you get working.

          Note that in 3.0 many of the attribute names have changed to (I hope) more clearly indicate their function. Consult the manual, which also has fairly detailed explanations of the meaning of all the attributes. Let me know if the manual is unclear.

          In weblogic, how do you specify all the properties that we put in the ConnectionFactoryLoader mbean?

          Let us know how this works out.


          Thanks
          david jencks

          • 2. Re: *** Hot deployment of Resource Adapter ***
            Visvakumar Durairaj Newbie

            Hello david,

            Thanks for your reply. Sorry I couldn't reply back immediately because I was out of town for couple of days. Your reply contains lot of information. Coming back to specifics. The version I downloaded is from the JBoss Binaries HTML page. The stable officially released version 2.4.1 I am having problem in Step 2 of what you described. I have to manually edit the jboss.jcml to added the ConnectionFactoryLoader Message bean. You said it's possible to programatically create and manupulate the ConnectionFactoryLoader message bean. Is it supported in 2.4.1. You have asked me to see the CVS of jboss(version 3.0) and download the sample code. I got "error displaying page" when I tried to see the cvs source tree. I have no idea why it's happening. Let me try again today and see whether I am able to succeed or not. Regarding your question about weblogic, all the configuration information are specified in META-INF/weblogic-ra.xml which is part of the rar file. I really appreciate your quick reply and looking forward to get more details on how to bind the RA to a JNDI Name in JBoss 2.4.1. Please feel free to advice anything that's related to this.

            Thank you very much.
            Best regards,
            Visva.

            • 3. Re: *** Hot deployment of Resource Adapter ***
              David Jencks Master

              Glad to hear back from you,

              1. You can create ConnectionFactoryLoader programatically in 2.4.1. The first version of the ConnectionFactoryLoader test was essentially for 2.4, it is in the cvs attic under TestConnectionFactoryLoader.java.

              2. From what you say about weblogic it seems they are treating a rar as not a "driver" but a "connection pool to a particular instance of an EIS", so if you want to add connections to another instance you have to undeploy and redeploy the rar? Or do you deploy a copy of the rar for each EIS instance, even if they are using the same rar (in terms of classes, ra.xml, not weblogic specific stuff)

              (I can browse cvs fine, hopefully your problem was temporary)

              Let us know how it works,

              david jencks