Network Deployment (All operating systems), v8.5 > Reference > Commands (wsadmin scripting)
modifyWMQActivationSpec command
Use the modifyWMQActivationSpec command to change certain parameters of a WebSphere MQ messaging provider activation specification.
To run the command, use AdminTask of the wsadmin scripting client.
The wsadmin scripting client is run from Qshell. For more information, see the topic "Configure Qshell to run WAS scripts".
This command is valid only when it is used with WAS v7 and later application servers. Do not use it with earlier versions.
For a list of the available WebSphere MQ messaging provider administrative commands, plus a brief description of each command, enter the following command at the wsadmin prompt:
print AdminTask.help('WMQAdminCommands')
For overview help on a given command, enter the following command at the wsadmin prompt:
print AdminTask.help('command_name')
After using the command, save your changes to the master configuration. For example, use the following command:
AdminConfig.save()
Purpose
Use the modifyWMQActivationSpec command to modify a WebSphere MQ messaging provider activation specification defined at the scope at which the command is issued.
You cannot change the type of an activation specification. For example, we cannot create an activation specification where you enter all the configuration information manually and then modify it to use a CCDT.
For a CCDT-based activation specification, we cannot modify of the following parameters:
- qmgrName
- qmgrHostname
- qmgrPortNumber
- qmgrSrvconnChannel
- transportChain
- wmqTransportType
For a generic activation specification, we cannot modify any of the following parameters:
- ccdtUrl
- ccdtQmgrName
Target object
A WebSphere MQ messaging provider activation specification at the specific scope.
Required parameters
The parameters for this command are identical to those used to create a WebSphere MQ messaging provider activation specification.
Optional parameters
The parameters for this command are identical to those used to create a WebSphere MQ messaging provider activation specification.
If either the -qmgrHostname or -qmgrPortNumber parameters are specified without the -connectionNameList parameter being specified, then it is assumed that a connection name list should no longer be used to connect to WebSphere MQ and the specified host name and port number information should be used instead. As a result of this the -connectionNameList parameter is set to blank.
Note the behavior of this command on the -customProperties parameter.
- -customProperties
- This parameter specifies custom properties to be passed to the WebSphere MQ messaging provider activation specification implementation. Typically, custom properties are used to set attributes of the activation specification which are not directly supported through the WebSphere administration interfaces.
Each custom property is specified using name and value table step parameters. Since these are table steps, the order of the two parameters is fixed, so you must always specify the name first and the value second:
- In Jython: [name value]
- In Jacl: {name value}
For example, -WAS_EndpointInitialState is a custom property that can be used with the -customProperties parameter. The value of -WAS_EndpointInitialState must be ACTIVE or INACTIVE. -WAS_EndpointInitialState determines whether the endpoint is activated when the endpoint is registered. If the parameter is set to active, message consumption begins from the JMS destination as soon as the activation specification is used for a message-driven bean to connect with the destination.
This parameter should be ignored for subsequent activation or deactivation via the J2CMessageEndpoint MBean.
New name/value pairs are added to the existing set of custom properties using the following rules:
- If the existing set of properties does not contain a property with the same name as that supplied as part of a modify command, the supplied property is added to the set of custom properties, unless the custom property has no value specified, when it is disregarded.
- If the existing set of properties contains a property with the same name as that supplied as part of a modify command, and the modify command also specifies a value for the property, the existing value is replaced by the supplied value.
- If the existing set of properties contains a property with the same name as that supplied as part of a modify command, but the modify command does not specify a value for the property, the property with the same name is deleted from the existing set of custom properties.
Example
- Using Jython:
wsadmin>AdminConfig.getid("/Node:9994GKCNode01") 9994GKCNode01(cells/9994GKCNode01Cell/nodes/9994GKCNode01|node.xml#Node_1) wsadmin>AdminTask.listWMQActivationSpecs("9994GKCNode01(cells/9994GKCNode01Cell/ nodes/9994GKCNode01|node.xml#Node_1)") spec1(cells/9994GKCNode01Cell/nodes/9994GKCNode01|resources.xml# J2CActivationSpec_1098737234986) wsadmin>AdminTask.modifyWMQActivationSpec("spec1(cells/9994GKCNode01Cell/ nodes/9994GKCNode01|resources.xml#J2CActivationSpec_1098737234986)", ["-destinationJndiName jms/topics/t5 -destinationType javax.jms.Topic"]) spec1(cells/9994GKCNode01Cell/nodes/9994GKCNode01|resources.xml# J2CActivationSpec_1098737234986)
- Jacl:
wsadmin>$AdminConfig getid /Node:9994GKCNode01 9994GKCNode01(cells/9994GKCNode01Cell/nodes/9994GKCNode01|node.xml#Node_1) wsadmin>$AdminTask listWMQActivationSpecs 9994GKCNode01(cells/9994GKCNode01Cell/nodes/9994GKCNode01|node.xml#Node_1) spec1(cells/9994GKCNode01Cell/nodes/9994GKCNode01|resources.xml# J2CActivationSpec_1098737234986) wsadmin>$AdminTask modifyWMQActivationSpec spec1(cells/9994GKCNode01Cell/nodes/9994GKCNode01|resources.xml# J2CActivationSpec_1098737234986) {-destinationJndiName jms/topics/t5 -destinationType javax.jms.Topic} spec1(cells/9994GKCNode01Cell/nodes/9994GKCNode01|resources.xml# J2CActivationSpec_1098737234986)
- The following example modifies an activation specification by activating the WAS_EndpointInitialState custom property, using Jython:
wsadmin>AdminConfig.getid("/Node:myNode01") 'myNode01(cells/myCell01/nodes/myNode01|node.xml#Node_1)' wsadmin>wsadmin>AdminTask.listWMQActivationSpecs("myNode01(cells/myCell01/nodes/myNode01|node.xml#Node_1)") 'newas(cells/myCell01/nodes/myNode01|resources.xml#J2CActivationSpec_1298546034140)' wsadmin>AdminTask.modifyWMQActivationSpec("newas(cells/myCell01/nodes/myNode01|resources.xml #J2CActivationSpec_1298546034140)", '-customProperties [[WAS_EndpointInitialState ACTIVE]]')
Related tasks:
Using the wsadmin scripting AdminTask object for scripted administration
Starting the wsadmin scripting client using wsadmin.sh
Related reference:
createWMQActivationSpec command
deleteWMQActivationSpec command
listWMQActivationSpecs command
Mapping of administrative console panel names to command names and WebSphere MQ names