Configure new MQ queues using scripting

 

Configure new MQ queues using scripting

Before starting this task, the wsadmin tool must be running. See the Starting the wsadmin scripting client article for more information.

Perform the following steps to configure a new MQ queue:

  1. Identify the parent ID:

    • Using Jacl:
      set newjmsp [$AdminConfig getid /Cell:mycell/Node:mynode/JMSProvider:JMSP1/]

    • Using Jython:
      newjmsp = AdminConfig.getid('/Cell:mycell/Node:myNode/JMSProvider:JMSP1')
      print newjmsp

    Example output:

    JMSP1(cells/mycell/nodes/mynode|resources.xml#JMSProvider_1)

  2. Get required attributes:

    • Using Jacl:
      $AdminConfig required MQQueue

    • Using Jython:
      print AdminConfig.required('MQQueue')

    Example output:

    Attribute       Type name       String jndiName    String baseQueueName  String

  3. Set up required attributes:

    • Using Jacl:
      set name [list name MQQ]
      set jndi [list jndiName jms/MQQ]
      set baseQN [list baseQueueName "Put the base queue name here"]
      set mqqAttrs [list $name $jndi $baseQN]
      Example output:
      {name MQQ} {jndiName jms/MQQ} {baseQueueName {Put the base queue name here}}

    • Using Jython:
      name = ['name', 'MQQ']
      jndi = ['jndiName', 'jms/MQQ']
      baseQN = ['baseQueueName', "Put the base queue name here"]
      mqqAttrs = [name, jndi, baseQN]
      print mqqAttrs
      Example output:
      [[name, MQQ], [jndiName, jms/MQQ], [baseQueueName, "Put the base queue name here"]]

  4. Set up a template:

    • Using Jacl:
      set template [lindex [$AdminConfig listTemplates MQQueue] 0]
      

    • Using Jython:
      import java lineseparator = java.lang.System.getProperty('line.separator')
      template = AdminConfig.listTemplates('MQQueue').split(lineseparator)[0]
      print template

    Example output:

    Example.JMS.WMQ.Q1(templates/system:JMS-resource-provider-
    templates.xml#MQQueue_1)
    

  5. Create MQ queue factory:

    • Using Jacl:
      $AdminConfig create MQQueue $newjmsp $mqqAttrs $template

    • Using Jython:
      print AdminConfig.create('MQQueue', newjmsp, mqqAttrs, template)

    Example output:

    MQQ(cells/mycell/nodes/mynode|resources.xml#MQQueue_1)

  6. Save the configuration changes. See the Saving configuration changes with the wsadmin tool article for more information.

  7. In a network deployment environment only, synchronize the node. See the Synchronizing nodes with the wsadmin tool article for more information.



Related concepts
AdminConfig object for scripted administration

Related reference
Commands for the AdminConfig object