Configuring new queue connection factories by using scripting

You can use scripting and the wsadmin tool to configure new queue connection factories in WebSphere® Application Server.

Before you begin

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

About this task

Perform the following steps to configure a new WebSphere queue connection factory:

Note: In the following examples, code blocks beginning with wsadmin> show code that is entered by the user. Lines that do not begin with wsadmin> show code that has been returned by the console.

Procedure

  1. Identify the parent ID and assign in to a variable. In this example the variable is named v5jmsp.
    • Using Jacl:
      wsadmin>set v5jmsp [$AdminConfig getid "/Cell:mycell/Node:mynode/JMSProvider:WebSphere JMS Provider/"]
    • Using Jython:
      wsadmin>v5jmsp = AdminConfig.getid("/Cell:mycell/Node:myNode/JMSProvider:WebSphere JMS Provider/") 
      wsadmin>print v5jmsp
    Example output:
    "WebSphere JMS Provider(cells/mycell/nodes/mynode|resources.xml#builtin_jmsprovider)"
  2. Get required attributes:
    • Using Jacl:
      wsadmin>$AdminConfig required WASQueueConnectionFactory
    • Using Jython:
      wsadmin>print AdminConfig.required('WASQueueConnectionFactory')
    Example output:
    Attribute       Type
    name				   String
    jndiName			 String
  3. Set up required attributes:
    • Using Jacl:
      wsadmin>set name [list name WASQCF]
      wsadmin>set jndi [list jndiName jms/WASQCF]
      wsadmin>set mqcfAttrs [list $name $jndi]
      Example output:
      {name WASQCF} {jndiName jms/WASQCF}
    • Using Jython:
      wsadmin>name = ['name', 'WASQCF']
      wsadmin>jndi = ['jndiName', 'jms/WASQCF']
      wsadmin>mqcfAttrs = [name, jndi]
      wsadmin>print mqcfAttrs
      Example output:
      [[name, WASQCF], [jndiName, jms/WASQCF]]
  4. Set up a template:
    • Using Jacl:
      wsadmin>set template [lindex [$AdminConfig listTemplates WASQueueConnectionFactory] 0]
    • Using Jython:
      wsadmin>lineseparator = java.lang.System.getProperty('line.separator')
      wsadmin>template = AdminConfig.listTemplates('WASQueueConnectionFactory').split(lineseparator)[0]
      wsadmin>print template
  5. Create was queue connection factories:
    • Using Jacl:
      wsadmin>$AdminConfig createUsingTemplate WASQueueConnectionFactory $v5jmsp $mqcfAttrs $template
    • Using Jython:
      wsadmin>AdminConfig.createUsingTemplate('WASQueueConnectionFactory', v5jmsp, mqqcfAttrs, template)
    Example output:
    WASQCF(cells/mycell/nodes/mynode|resources.xml#WASQueueConnectionFactory_1)
  6. Save the configuration changes.
  7. In a WebSphere Application Server Network Deployment environment only, synchronize the node.