modifySIBJMSConnectionFactory command

Use the modifySIBJMSConnectionFactory command to modify the properties of a JMS connection factory for the default messaging provider at a specific scope.

To run the command, use the AdminTask object of the wsadmin scripting client.

[IBM i][IBM i]The wsadmin scripting client is run from Qshell.

Command-line help is provided for service integration bus commands:
  • For a list of the available service integration bus JMS commands in Jython and a brief description of each command, enter the following command at the wsadmin prompt:

    print AdminTask.help('SIBJMSAdminCommands')

  • 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 by using the following command:

AdminConfig.save()

Purpose

This command changes the properties of a JMS connection factory.

Target object

A JMS connection factory.

Required parameters

None.

Optional parameters

-name
factory_name
-jndiName
jndi_name
-category
category
-description
text
-logMissingTransactionContext
True | False
-manageCachedHandles
True | False
-busName
name
-clientID
id
-userName
name
-password
password
-target
target_name
-targetType
BusMember | Custom | ME
-targetSignificance
Preferred | Required
-targetTransportChain
transport_chain
-providerEndPoints
tuple_list
-connectionProximity
Bus | Host | Cluster | Server
-durableSubscriptionHome
me_name
-nonPersistentMapping
BestEffortNonPersistent | ExpressNonPersistent | ReliableNonPersistent | ReliablePersistent | AssuredPersistent | AsSIBDestination | None
-persistentMapping
BestEffortNonPersistent | ExpressNonPersistent | ReliableNonPersistent | ReliablePersistent | AssuredPersistent | AsSIBDestination | None
-readAhead
Default | AlwaysOn | AlwaysOff
-tempQueueNamePrefix
prefix
-tempTopicNamePrefix
prefix
-shareDurableSubscriptions
AsCluster | AlwaysShared | NeverShared
The pass message payload by reference properties:
-producerDoesNotModifyPayloadAfterSet
true | false (default false)
Applications that use this connection factory to send messages must obey the following rules:
  • The application does not modify the data object contained in a JMS object message.
  • The application populates a JMS bytes message by using a single call to writeBytes(byte[]) and does not modify the byte array after it is set in the message.
-consumerDoesNotModifyPayloadAfterGet
true | false (default false)
Applications that use this connection factory to receive messages must obey the following rule: The application does not modify the data object obtained from a JMS object message. The data object is treated as read only.
When large object messages or bytes messages are sent, the cost in memory and processor use of serializing, deserializing, and copying the message payload can be significant. If you enable the pass message payload by reference properties on a connection factory or activation specification, you tell the default messaging provider to override the JMS 1.1 specification and potentially reduce or bypass this data copying.
CAUTION:
The parts of the JMS Specification that are bypassed by these properties are defined to ensure message data integrity. Any of your JMS applications that use these properties must strictly follow the rules that are described in the topic Why and when to pass the JMS message payload by reference, or you risk losing data integrity.
-authDataAlias
alias_name
-shareDataSourceWithCMP
True | False
-xaRecoveryAuthAlias
alias_name

Example

  • Using Jython:
    wsadmin>AdminConfig.getid(/Node:9994GKCNode01 )
    9994GKCNode01(cells/9994GKCNode01Cell/nodes/9994GKCNode01|node.xml#Node_1)
    
    wsadmin>AdminTask.modifySIBJMSConnectionFactory(jmsqcf2(cells/9994GKCNode01Cell/
    nodes/9994GKCNode01|resources.xml#J2CConnectionFactory_1098736176544),
     [-manageCachedHandles, True])
    jmsqcf2(cells/9994GKCNode01Cell/nodes/9994GKCNode01|resources.xml#
    J2CConnectionFactory_1098733675578)
  • Using Jacl:
    wsadmin>$AdminConfig getid /Node:9994GKCNode01
    9994GKCNode01(cells/9994GKCNode01Cell/nodes/9994GKCNode01|node.xml#Node_1)
    
    wsadmin>$AdminTask modifySIBJMSConnectionFactory 
    jmsqcf2(cells/9994GKCNode01Cell/nodes/9994GKCNode01|resources.xml#
    J2CConnectionFactory_1098736176544)
     {-manageCachedHandles True}
    jmsqcf2(cells/9994GKCNode01Cell/nodes/9994GKCNode01|resources.xml#
    J2CConnectionFactory_1098733675578)