如何通过asadmin命令配置Payara中JMS目标的最大消息大小?
解决Payara 5/6中通过asadmin配置JMS目标最大消息大小的问题
1. 新建JMS队列时直接配置
创建JMS队列资源时,通过--property参数直接指定MaxBytesPerMsg属性(-1表示无限制),多属性用冒号分隔:
./asadmin --Port=4848 create-jms-resource --resType=javax.jms.Queue --property="Name=lokal.test:MaxBytesPerMsg=-1" --force=false --enabled=true jms/transport/test
2. 修改已存在的JMS队列
针对已创建的队列,使用asadmin set命令修改,注意资源名称包含斜杠时需要用引号包裹,避免路径解析错误:
./asadmin set resources.admin-object-resource."jms/transport/test".property.MaxBytesPerMsg=-1
3. 配置生效验证
执行命令后可通过reload-config刷新配置,无需重启Payara即可生效:
./asadmin reload-config
关键注意事项
- 之前配置未生效的核心原因是资源名称未加引号(因包含
/),导致asadmin无法正确识别目标资源路径 MaxBytesPerMsg是Payara内置OpenMQ的目标级属性,仅对当前配置的JMS队列/Topic生效- 若需全局统一设置所有JMS目标的默认最大消息大小,可修改JMS服务全局属性:
./asadmin set configs.config.server-config.jms-service.property.MaxBytesPerMsg=-1
内容的提问来源于stack exchange,提问作者Daki
相关产品推荐
相关产品推荐

