To ensure that the WebSphere® MQ
resource adapter is automatically
updated to the latest available maintenance level when you apply WebSphere Application Server fix packs, you
can configure all servers in your environment to use the latest version
of the resource adapter contained in the WebSphere Application Server fix pack that
you have applied to the installation of each node.
Before you begin
Updates to the WebSphere MQ
resource adapter that is installed
with WebSphere Application Server are included
in WebSphere Application Server Fix Packs.
You must only update the WebSphere MQ
resource adapter using the "Update
resource adapter facility if you require a specific version
of the resource adapter, instead of the most recent version. To install
a specific version of the resource adapter, see Installing a specific maintenance level of the WebSphere MQ resource adapter.
You can use the following
Jython and Jacl commands to determine the level of the
WebSphere MQ
resource adapter currently being
used by
WebSphere Application Server:
- Jython:
Note: You must press Return twice after entering this
command in order to run it.
wmqInfoMBeansUnsplit = AdminControl.queryNames("WebSphere:type=WMQInfo,*")
wmqInfoMBeansSplit = AdminUtilities.convertToList(wmqInfoMBeansUnsplit)
for wmqInfoMBean in wmqInfoMBeansSplit: print wmqInfoMBean; print AdminControl.invoke(wmqInfoMBean, 'getInfo', '')
- Jacl:
set wmqInfoMBeans [$AdminControl queryNames WebSphere:type=WMQInfo,*]
foreach wmqInfoMBean $wmqInfoMBeans {
puts $wmqInfoMBean;
puts [$AdminControl invoke $wmqInfoMBean getInfo [] []]
}
About this task
Use this task if any of the following circumstances apply
to your configuration, and you want to configure all servers in your
environment to use the latest version of the
WebSphere MQ
resource adapter:
When you have performed the following steps for all cells
and single server installations in your environment, your servers
will automatically receive maintenance to the WebSphere MQ
resource adapter when a new WebSphere Application Server fix pack is applied.
Procedure
- Start the application server.
- Copy the following Jython script into a file called convertWMQRA.py, then save it into the profile_root/bin directory.
ras = AdminUtilities.convertToList(AdminConfig.list('J2CResourceAdapter'))
for ra in ras :
desc = AdminConfig.showAttribute(ra, "description")
if ((desc == "WAS 7.0 Built In WebSphere MQ Resource Adapter") or
(desc == "WAS 7.0.0.1 Built In WebSphere MQ Resource Adapter") or
(desc == "WAS Built In WebSphere MQ Resource Adapter")):
print "Updating archivePath and classpath of " + ra
AdminConfig.modify(ra, [['archivePath', "${WAS_INSTALL_ROOT}/installedConnectors/wmq.jmsra.rar"]])
AdminConfig.unsetAttributes(ra, ['classpath'])
AdminConfig.modify(ra, [['classpath', "${WAS_INSTALL_ROOT}/installedConnectors/wmq.jmsra.rar"]])
AdminConfig.save()
#end if
#end for
- Use the wsadmin tool to run the Jython script that you have just created.
Open a command prompt and navigate to the profile_root/bin directory, then enter the following command:wsadmin -lang jython -f convertWMQRA.py
- Stop all servers in the profile.
- Run the osgiCfgInit command from the profile_root/bin directory.
Note: The osgiCfgInit command resets the class cache used by the OSGi runtime environment.
- Restart all servers in the profile.
What to do next
If you continue to experience problems after performing the
steps described in this topic, and you have previously used the
Update
resource adapter... button on the JMS Provider Settings
panel in the administrative console to update the
WebSphere MQ
resource adapter on any nodes
in your environment, it is possible that you are experiencing the
issue described in APAR PM10308.