Reputation: 1023
we have the J2EE application that is deployed on several profiles. For some strange reason, we want that processing of the JMS messages, by message-driven beans was on the one certain profile.
So we want to disable the activation specification on the other profiles.
Just deletion the activation specification not suites, because without it our application is not starting, with some initial context factory exceptions
Stop and resume solution not really suites, because every time after the server restart the activation specification is active again and one day, somebody will forget to switch it off.
So if there is a way completely disable the activation specification on the IBM websphere server, with the working application? Or any other ideas how to deal with it
Upvotes: 0
Views: 3224
Reputation: 18050
You can do it via wsadmin script.
Query endpoints to find name of endpoint for your bean:
AdminControl.queryNames('*:type=J2CMessageEndpoint,*')
pause endpoint:
objectName=AdminControl.queryNames('*:name=JMSMDB_MessageEndpoint,*')
AdminControl.invoke(objectName, 'pause')
to start it again issue:
objectName=AdminControl.queryNames('*:name=JMSMDB_MessageEndpoint,*')
AdminControl.invoke(objectName, 'resume')
For more details see - Managing the message endpoint lifecycle using wsadmin scripting
Upvotes: 0
Reputation: 1021
The wsadmin script is probably what you wanted. But you can also do this via the Admin Console. Navigate to the enterprise application list and select the link for your application. If your application has an MDB component, the application panel should have a Runtime tab. Select this tab to see a link for message listeners. Click this link to see a list of MDBs that you can pause and resume.
Upvotes: 0
Reputation: 86
Have you tried disabling MQ at the server level? I found a few options in the infocenter for 8.5.
To disable WebSphere MQ functionality in a WebSphere Application Server client process, specify the custom property com.ibm.ejs.jms.disableWMQSupport=true.
Using the administrative console, select the Disable WebSphere MQ check box on the required WebSphere MQ messaging provider panel.
Use the manageWMQ administrative command with the disableWMQ flag
Upvotes: 0