IBM MQ - java api - 获取所有通道名称

IBM MQ - java api - Get all channel names

我尝试通过使用 java api 连接到服务器连接通道来获取所有通道名称。我使用以下命令设置对所有频道的权限。

setmqaut -m local -t channel -n SYSTEM.** -p test +all

java代码,

pcfMessageAgent = new PCFMessageAgent(host, port, channelName);
PCFMessage request = new PCFMessage(CMQCFC.MQCMD_INQUIRE_CHANNEL);
request.addParameter(CMQCFC.MQCACH_CHANNEL_NAME, "*");
try {
    queueResponses = pcfMessageAgent.send(request);

但是我在下面的日志中得到了 2035 错误代码,我无法在资源管理器上看到 SYSTEM.DEF.CLNTCONN 并且无法使用 setmqaut 命令设置权限,

AMQ8077: Entity 'test@mysystem' has insufficient authority to access
object 'SYSTEM.DEF.CLNTCONN'.

EXPLANATION:
The specified entity is not authorized to access the required object. The
following requested permissions are unauthorized: dsp

这是因为 CLNTCONN 通道是不同的对象类型,它们属于类型 clntconn,所有其他通道类型都包含在类型 channel 中。

如果您想提供相同的权限,您将使用:

setmqaut -m local -t clntconn -n SYSTEM.** -p test +all

有关如何设置只读权限的更多详细信息,请参阅我对您的问题“”的回答。