1

I want to list information about, start and stop the delivery of MDBs running in several servers. This page https://access.redhat.com/solutions/428023

shows how to stop and start MDB's delivery in standalone mode:

[standalone@localhost:9999 /] /deployment=MDBStopDeliveryApplication.jar/subsystem=ejb3/message-driven-bean=TestMDB:start-delivery(){"outcome" => "success"}
[standalone@localhost:9999 /] /deployment=MDBStopDeliveryApplication.jar/subsystem=ejb3/message-driven-bean=TestMDB:stop-delivery()

Can this be done in domain mode for all the servers? if so how?

[domain@ ip :9999 /] /deployment=name.ear/subsystem=ebj3/whatever
[domain@ ip :9999 /] /deployment=name.ear/subsystem=ebj3:whatever()

I can't do any operation on the subsystem=ebj3, or any of it's children. And TAB for completion is also doing nothing. The result of any operation is always:

{
    "outcome" => "failed",
    "failure-description" => "JBAS014883: No resource definition is registered for address [
    (\"deployment\" => \"name.ear\"),
    (\"subsystem\" => \"ebj3\")
]",
        "rolled-back" => true
}

2 Answers2

0

In domain mode, you can not query or manipulate these atributes globally. Your configuration is stored in a profile, the profile is assigned to a server-group and then a server instance is assigned to the group. Servers are running on a host, which acts as a slave connected to a domain controller. There can be multiple hosts running on different machines and each host can manage server instances assigned to different groups. In order to achieve your goal you need to execute those commands on each server where your application is deployed. If you want to automate it you can first query list of servers belonging to server group and then iterate over them for example in a bash script invoking CLI. To query this info for specific server just prefix your command with /host=<your_host>/server=<your_server>/

yntelectual
  • 3,028
  • 18
  • 24
  • thank you. I was able to get it to work. I'll just add a few details for others reading this: if you can't do any operations after "deployment" you probably forgot to deploy! And also, you can use * as wildcard to match all names, and you might find the MDBs in "subdeployment" inside a deployment. This will get an attribute from all MDBs on a server: /deployment=*/subdeployment=*/subsystem=ejb3/message-driven-bean=*:read-attribute(name=WhatYouWant) – Tiago Silva Jun 29 '17 at 10:23
0

This was bug in EAP 6.4 n prior versions. It is fixed in EAP 6.4.5. You can use below CLI command to stat/stop MDB :

/host=master/server=server-three/deployment=xxxx.jar/subsystem=ejb3/message-driven-bean=xxx:start-delivery()

Varsha
  • 1,150
  • 9
  • 12