Configuring new J2C administrative objects using wsadmin scripting

You can use scripting and the wsadmin tool to configure new J2C administrative objects.

Before you begin

Before starting this task, the wsadmin tool must be running. See the topic on starting the wsadmin tool.

About this task

Perform the following steps to configure a J2C administrative object:

Procedure

  1. Identify the parent ID and assign it to the newra variable.
    • Using Jacl:

      set newra [$AdminConfig getid /Cell:mycell/Node:mynode/J2CResourceAdapter:RAR1/]
    • Using Jython:

      newra = AdminConfig.getid('/Cell:mycell/Node:mynode/J2CResourceAdapter:RAR1/')
      print newra
    Example output:
    RAR1(cells/mycell/nodes/mynode|resources.xml#J2CResourceAdapter_1)
  2. There are two ways to configure a new J2C administrative object. Perform one of the following:
    • Using the AdminTask object:
      1. List the administrative object interfaces:

        Using Jacl:

        $AdminTask listAdminObjectInterfaces $newra

        Using Jython:

        AdminTask.listAdminObjectInterfaces(newra)

        Example output:

        com.ibm.test.message.FVTMessageProvider
      2. Create a J2C administrative object:

        Using Jacl:

        $AdminTask createJ2CAdminObject $newra { -name ao1 -jndiName eis/ao1 
        -adminObjectInterface com.ibm.test.message.FVTMessageProvider }

        Using Jython:

        AdminTask.createJ2CAdminObject(newra, ['-name', 'ao1', '-jndiName', 'eis/ao1', 
        '-adminObjectInterface', 'com.ibm.test.message.FVTMessageProvider'])
    • Using the AdminConfig object:
      1. Using Jacl:

        $AdminConfig required J2CAdminObject

        Using Jython:

        print AdminConfig.required('J2CAdminObject')

        Example output:

        Attribute Type
        adminObject AdminObject@
      2. If your resource adapter is JCA V1.5 and you have multiple administrative objects defined, it is required that you specify the administrative object attribute. If your resource adapter is JCA V1.5 and you have only one administrative object defined, it will be picked up automatically. If your resource adapter is JCA V1.0, you do not need to specify the administrative object attribute. Perform the following command to list the administrative objects defined by the resource adapter:

        Using Jacl:

        $AdminConfig list AdminObject $newra

        Using Jython:

        print AdminConfig.list('AdminObject', $newra)
      3. Set the administrative objects that you need to a variable:

        Using Jacl:

        set ao AdminObjectId
        set name [list name J2CAO1]
        set jname [jndiName eis/j2cao1]
        set j2caoAttrs [list $name $jname]

        Using Jython:

        ao = AdminObjectId
        name = ['name', 'J2CAO1']
        set jname = ['jndiName', eis/j2cao1]
        j2caoAttrs = [name, jname]
        
      4. If you are specifying the AdminObject attribute, also set up the following:

        Using Jacl:

        set cdattr [list adminObject $ao]
        

        Using Jython:

        cdattr = ['adminObject', ao]
      5. Create a J2C administrative object:

        Using Jacl:

        $AdminConfig create J2CAdminObject $newra $j2caoAttrs

        Using Jython:

        print AdminConfig.create('J2CAdminObject', newra, j2caoAttrs)

    Example output:

    J2CAO1(cells/mycell/nodes/mynode|resources.xml#J2CAdminObject_1)
  3. Save the configuration changes.
  4. Synchronize the node.