【问题标题】:How to disable activation specification on the IBM websphere如何在 IBM Websphere 上禁用激活规范
【发布时间】:2015-12-08 02:41:14
【问题描述】:

我们有部署在多个配置文件上的 J2EE 应用程序。出于某种奇怪的原因,我们希望消息驱动的 bean 对 JMS 消息的处理在一个特定的配置文件上。

所以我们想禁用其他配置文件的激活规范。

只需删除激活规范而不是套件,因为没有它,我们的应用程序将无法启动,并带有一些初始上下文工厂异常

停止和恢复解决方案并不是真正的套件,因为每次服务器重新启动后,激活规范都会再次激活,并且有一天,有人会忘记将其关闭。

那么,如果有一种方法可以完全禁用 IBM websphere 服务器上的激活规范,并使用正在运行的应用程序?或任何其他想法如何处理它

【问题讨论】:

    标签: java jms websphere websphere-7 websphere-8


    【解决方案1】:

    您是否尝试过在服务器级别禁用 MQ?我在 8.5 的信息中心找到了一些选项。

    1. 要在 WebSphere Application Server 客户端进程中禁用 WebSphere MQ 功能,请指定定制属性 com.ibm.ejs.jms.disableWMQSupport=true。

    2. 使用管理控制台,选中所需 WebSphere MQ 消息传递提供程序面板上的禁用 WebSphere MQ 复选框。

    3. 使用带有 disableWMQ 标志的 manageWMQ 管理命令

    Disable WebSphere MQ

    【讨论】:

    • 谢谢,很遗憾,由于关闭了 MQ 支持,应用程序没有启动(
    【解决方案2】:

    您可以通过 wsadmin 脚本来完成。

    查询端点以查找 bean 的端点名称:

    AdminControl.queryNames('*:type=J2CMessageEndpoint,*')
    

    暂停端点:

    objectName=AdminControl.queryNames('*:name=JMSMDB_MessageEndpoint,*') 
    AdminControl.invoke(objectName, 'pause')
    

    重新开始问题:

    objectName=AdminControl.queryNames('*:name=JMSMDB_MessageEndpoint,*') 
    AdminControl.invoke(objectName, 'resume')
    

    更多详情请看-Managing the message endpoint lifecycle using wsadmin scripting

    【讨论】:

      【解决方案3】:

      wsadmin 脚本可能正是您想要的。但您也可以通过管理控制台执行此操作。导航到企业应用程序列表并选择您的应用程序的链接。如果您的应用程序有一个 MDB 组件,那么应用程序面板应该有一个 Runtime 选项卡。选择此选项卡以查看消息侦听器的链接。单击此链接可查看您可以暂停和恢复的 MDB 列表。

      【讨论】:

      • 我相信他想停止集群其他分支的活动规格,但只有一条分支在运行,我认为控制台会停止所有。所以从我的角度来看,wsadmin 是唯一的方法。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-03-05
      • 1970-01-01
      • 2023-03-12
      相关资源
      最近更新 更多