By following this example, you can migrate a message-driven
bean application on a Version 6 or later node
from using Version 5.1 default
messaging JMS resources and listener port to using default messaging
provider JMS resources.
About this task
This topic provides a contextual description of the migration,
then a summary of the steps involved.
This
example follows on from the example described in Example: Migrating a message-driven bean from Version 5 embedded messaging - stage 1.
Consider
the example scenario, before replacing the
Version 5.1 JMS resources with JMS
resources of the later version, shown in the following figure
MDB application scenario before replacing the Version 5 JMS resources with JMS resources of a later version.
- The JMS resources, a JMS queue connection factory (PPQCF) and
JMS queues (InQ and OutQ), are managed as Version 5.1 default messaging JMS
resources. The administrative name for the embedded messaging JMS
resources is changed from WebSphere JMS Provider resources
to V5 default messaging provider resources.
For example, in the administrative console of the later version the
queue connection factory can be found by clicking .
- On the administrative console, display the listener port by clicking ,
where server_name is server1 and port_name is MDBPort.
To replace the Version 5.1 default
messaging JMS resources with equivalent default messaging provider
JMS resources of the later version, complete the following steps:
Procedure
- Delete the Version 5.1 JMS
resources:
- Display the collection list of Version 5.1 JMS queue connection
factories. Click .
- Select the check box next to the queue connection factory,
PPQCF.
- Click Delete
- Click OK.
-
Display the collection list of Version 5.1 JMS queues. Click .
- Select the check box next to the queues, INQ and OUTQ.
- Click Delete
- Click OK
- Save your changes to the master configuration.
- Create a JMS queue connection factory in the later version,
to replace the Version 5.1 JMS
queue connection factory. (If you want to use a unified
JMS connection factory instead of the domain-specific JMS queue connection
factory, you must also rewrite the MDB application to use JMS 1.1
interfaces). For example, use the administrative console to complete
the following steps:
-
Display the collection list of JMS queue connection factories
for the default messaging provider. Click
- Click New
- On the New JMS queue connection factory page, set the
following properties:
Name: |
PPQCF |
JNDI Name: |
jms/SamplePPQCF |
Bus name |
wasA |
All other properties have default settings. The name
and JNDI name properties match the same properties on the Version 5.1 JMS queue connection
factory. The connection factory creates connections to the service
integration bus called wasA.
- Click OK.
- Save your changes to the master configuration.
- Create JMS queues in the later version to replace the Version 5.1 JMS queues For
example, use the administrative console to complete the following
steps for the input JMS queue:
-
Display the collection list of JMS queues for the default messaging
provider. Click .
- Click New
- On the New JMS queue page, set the following properties
for the JMS queue called InQ that is backed by the existing bus destination
also called InQ:
Name: |
InQ |
JNDI Name: |
jms/SampleInputQueue |
Queue name: |
InQ |
All other properties have default settings. The Queue
name property specifies the name of the bus queue that is used to
store and process messages for the JMS queue.
- Click OK This
returns you to the collection list of JMS queues.
- Click New
- On the New JMS queue page, set the following properties
for the JMS queue called OutQ that is backed by the existing bus destination
also called OutQ:
Name: |
OutQ |
JNDI Name: |
jms/SampleOutputQueue |
Queue name: |
OutQ |
All other properties have default settings. The Queue
name property specifies the name of the bus queue that is used to
store and process messages for the JMS queue.
- Click OK.
- Save your changes to the master configuration.
- Create a JMS activation specification to replace the Version 5.1 listener port. The JMS
activation specification is used to deploy the MDB application as
a J2EE Connector Architecture (JCA) 1.5-compliant resource, as a listener
on the JMS queue InQ. For example, use the administrative
console to complete the following steps:
-
Display the collection list of JMS activation specifications
for the default messaging provider. Click .
- Click New
- On the New JMS activation specification page, set the
following properties:
Name: |
PPAS |
Name: |
jms/SamplePPAS |
Destination JNDI Name: |
jms/SampleInputQueue |
All other properties have default settings.
- Click OK This
returns you to the collection list of JMS activation specifications.
- Save your changes to the master configuration.
- Save your changes to the master configuration.
After replacing the Version 5.1 JMS resources with equivalents
in the later version, the MDB application scenario becomes as shown
in the following figure:
- Redeploy the MDB application to use the JMS activation
specification, as described in Deploying and administering enterprise applications. Ensure
you select the Do not overwrite existing bindings option.
Accept
the defaults for all installation steps except for the following:
- Delete the Listener Port binding
- Set the activation specification binding to jms/SamplePPAS.
- Click OK.
- If no other Version 5.1 applications
use the WebSphere® MQ client link, delete it.
- Display the list of WebSphere MQ
client links for the messaging engine. Click ,
where bus_name is wasA and engine_name is wasA.server1-wasA.
- Select the check box next to the link, Default.MQClientLink.
- Click Delete
- Click OK
- Save your changes to the master configuration.
Results
You should now be able to use the MDB application with the
JMS resources in the later version. On the Enterprise Applications
panel ()
ensure that the MDB application is started. There should be no errors
displayed in the administrative console at this point. If there are
any errors, check the SystemOut log for more information about the
problem.