WAS MDBSample

本文档详细介绍了在IBM WebSphere应用服务器上安装并配置消息驱动Bean (MDB) 示例的过程,包括创建SIBus、配置SIB JMS连接工厂、队列及主题等步骤,并通过代码示例展示了如何发送与接收消息。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、Install

 

     cd $serverRoot/profiles/AppSrvSG01/bin(C:/Program Files/IBM/WebSphere/AppServer/profiles/AppSrvSG01/bin)

     startServer -server1

     cd  $serverRoot/samples/bin(C:/Program Files/IBM/WebSphere/AppServer/samples/bin)

     install MessageDrivenBeans

2、WAS Config

 

   (1 Create SIBus

          Admin Console --> Service Integration -->  Service 

          New --> $NodeName $BusName(APACCNATOW4725Node12SamplesBus)

    (2  SIB JMS Connection Factory

         Admin Console --> Resources -->  JMS Providers --> Default messaging --> Connection Factories --> JMS connection factory --> New

         Name:  MDBSampleSIBJMSConnectionFactory

         JNDI:   Sample/JMS/MDB/CF

         Desc:   MDB Sample SIB JMS ConnectionFactory

         Bus:    APACCNATOW4725Node12SamplesBus

    

     (3  Create SIB JMS Queue

           Admin Console --> Resources -->  JMS Providers --> Default messaging --> Destinations --> JMS Queue --> New

           Name: Sample.JMS.MDB.QUEUE

           JNDI:  Sample/JMS/MDB/QUEUE

           Desc:  MDB Sample Queue (MDB receives a message from this Queue)

           Bus : APACCNATOW4725Node12SamplesBus

           Queue Name: SIB_MDB_QUEUE

      (4  Enable Bus

           Servers --> Application servers --> SIB Service

           Enable service at server startup

              

      (5  Create a SIB ActivationSpec

           Admin Console --> Resources -->  JMS Providers --> Default messaging --> Activation Specification --> JMS activation specification --> New

           Name: MDBSampleMDBQueue

           JNDI:  eis/MDBSampleMDBQueue

           Desination Type:Queue

           Destination JNDI name: Sample/JMS/MDB/QUEUE

    

       Message Producer:       

       Message Consumer:        

 

     1) EJB configuration

          Enterprise Application  project :MDBSampleEAR

          EJB Project: MDBSampleMDB

          Dynamic Web Project:MDBSampleWeb

          Application Client project:MDBSampleClient

      2) Enterprise Application Project:

           add modules:MDBSampleMDB&MDBSampleWeb

           add project utility jar:MDBSampleClient

       3) MDBSampleMDB

           New JMSMDBSampleMDBBean(Message Driver Bean)

           ejb-jar.xml

              Bean --> add   MDBSampleMDBQueue

                       JCA Adatper:                       

                      ActivationSpec JNDI Name:eis/MDBSampleMDBQueue

              Reference -- > add Environment Resource

                ConnectionFactory

                     Name : jms/mdb/ConnectionFactory

                     Type :   javax.jms.ConnectionFactory

                     JNDI :  Sample/JMS/MDB/CF 

                     Authentication : Application

                  Queue

                     Name : jms/mdb/Queue

                     Type :   javax.jms.Queue

                     JNDI :  Sample/JMS/MDB/QUEUE

                     Authentication : Application 

   

解决的问题:

 

[8/27/09 10:02:02:287 CST] 00000011 EJBContainerI E   WSVR0062E: Unable to start EJB, MDBSampleEAR#MDBSampleMDB.jar#MDBSampleMDBQueue: javax.resource.ResourceException: com.ibm.ejs.jms.listener.MDBException: Creation of MDB MDBSampleMDBQueue unable to find ListenerPort 'null'
 at com.ibm.ejs.container.MDBHomeBean.activateEndpoint(MDBHomeBean.java:152)
 at com.ibm.ejs.container.EJSContainer.loadBeanMetaData(EJSContainer.java:1614)
 at com.ibm.ejs.container.HomeOfHomes.loadBeanMetaData(HomeOfHomes.java:664)
 at com.ibm.ejs.container.HomeRecord.getHomeAndInitialize(HomeRecord.java:458)
 at com.ibm.ejs.container.EJSContainer.getHomeWrapperCommon(EJSContainer.java:1239)
 at com.ibm.ejs.container.EJSContainer.getHomeInstance(EJSContainer.java:1148)
 at com.ibm.ejs.container.EJSContainer.startBean(EJSContainer.java:1134)
 at com.ibm.ws.runtime.component.EJBContainerImpl.startBean(EJBContainerImpl.java:3212)
 at com.ibm.ws.runtime.component.EJBContainerImpl.install(EJBContainerImpl.java:2684)
 at com.ibm.ws.runtime.component.EJBContainerImpl.start(EJBContainerImpl.java:3419)
 at com.ibm.ws.runtime.component.ApplicationMgrImpl.start(ApplicationMgrImpl.java:1019)
 at com.ibm.ws.runtime.component.DeployedApplicationImpl.fireDeployedObjectStart(DeployedApplicationImpl.java:1028)
 at com.ibm.ws.runtime.component.DeployedModuleImpl.start(DeployedModuleImpl.java:539)
 at com.ibm.ws.runtime.component.DeployedApplicationImpl.start(DeployedApplicationImpl.java:724)
 at com.ibm.ws.runtime.component.ApplicationMgrImpl.startApplication(ApplicationMgrImpl.java:683)
 at com.ibm.ws.runtime.component.ApplicationMgrImpl.startApplication(ApplicationMgrImpl.java:1161)
 at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
 at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:85)
 at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:58)
 at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:60)
 at java.lang.reflect.Method.invoke(Method.java:391)
 at javax.management.modelmbean.RequiredModelMBean.invokeMethod(RequiredModelMBean.java:1366)
 at javax.management.modelmbean.RequiredModelMBean.invoke(RequiredModelMBean.java:1012)
 at mx4j.server.interceptor.InvokerMBeanServerInterceptor.invoke(InvokerMBeanServerInterceptor.java:233)
 at mx4j.server.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:128)
 at mx4j.server.interceptor.SecurityMBeanServerInterceptor.invoke(SecurityMBeanServerInterceptor.java:86)
 at mx4j.server.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:128)
 at mx4j.server.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:128)
 at mx4j.server.interceptor.ContextClassLoaderMBeanServerInterceptor.invoke(ContextClassLoaderMBeanServerInterceptor.java:167)
 at mx4j.server.MX4JMBeanServer.invoke(MX4JMBeanServer.java:1249)
 at com.ibm.ws.management.AdminServiceImpl$1.run(AdminServiceImpl.java:901)
 at com.ibm.ws.security.util.AccessController.doPrivileged(AccessController.java:118)
 at com.ibm.ws.management.AdminServiceImpl.invoke(AdminServiceImpl.java:817)
 at com.ibm.ws.management.connector.AdminServiceDelegator.invoke(AdminServiceDelegator.java:139)
 at com.ibm.ws.management.connector.rmi.RMIConnectorService.invoke(RMIConnectorService.java:176)
 at com.ibm.ws.management.connector.rmi._RMIConnectorService_Tie.invoke(_RMIConnectorService_Tie.java:362)
 at com.ibm.ws.management.connector.rmi._RMIConnectorService_Tie._invoke(_RMIConnectorService_Tie.java:133)
 at com.ibm.CORBA.iiop.ServerDelegate.dispatchInvokeHandler(ServerDelegate.java:608)
 at com.ibm.CORBA.iiop.ServerDelegate.dispatch(ServerDelegate.java:461)
 at com.ibm.rmi.iiop.ORB.process(ORB.java:432)
 at com.ibm.CORBA.iiop.ORB.process(ORB.java:1728)
 at com.ibm.rmi.iiop.Connection.doWork(Connection.java:2229)
 at com.ibm.rmi.iiop.WorkUnitImpl.doWork(WorkUnitImpl.java:65)
 at com.ibm.ejs.oa.pool.PooledThread.run(ThreadPool.java:95)
 at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1332)
Caused by: com.ibm.ejs.jms.listener.MDBException: Creation of MDB MDBSampleMDBQueue unable to find ListenerPort 'null'
 at com.ibm.ejs.jms.listener.MDBListenerManagerImpl.create(MDBListenerManagerImpl.java:305)
 at com.ibm.ejs.container.MDBHomeBean.activateEndpoint(MDBHomeBean.java:147)
 at com.ibm.ejs.container.EJSContainer.loadBeanMetaData(EJSContainer.java:1614)
 at com.ibm.ejs.container.HomeOfHomes.loadBeanMetaData(HomeOfHomes.java:664)
 at com.ibm.ejs.container.HomeRecord.getHomeAndInitialize(HomeRecord.java:458)
 at com.ibm.ejs.container.EJSContainer.getHomeWrapperCommon(EJSContainer.java:1239)
 at com.ibm.ejs.container.EJSContainer.getHomeInstance(EJSContainer.java:1148)
 at com.ibm.ejs.container.EJSContainer.startBean(EJSContainer.java:1134)
 at com.ibm.ws.runtime.component.EJBContainerImpl.startBean(EJBContainerImpl.java:3212)
 at com.ibm.ws.runtime.component.EJBContainerImpl.install(EJBContainerImpl.java:2684)
 at com.ibm.ws.runtime.component.EJBContainerImpl.start(EJBContainerImpl.java:3419)
 at com.ibm.ws.runtime.component.ApplicationMgrImpl.start(ApplicationMgrImpl.java:1019)
 at com.ibm.ws.runtime.component.DeployedApplicationImpl.fireDeployedObjectStart(DeployedApplicationImpl.java:1028)
 at com.ibm.ws.runtime.component.DeployedModuleImpl.start(DeployedModuleImpl.java:539)
 at com.ibm.ws.runtime.component.DeployedApplicationImpl.start(DeployedApplicationImpl.java:724)
 at com.ibm.ws.runtime.component.ApplicationMgrImpl.startApplication(ApplicationMgrImpl.java:683)
 at com.ibm.ws.runtime.component.ApplicationMgrImpl.startApplication(ApplicationMgrImpl.java:1161)
 at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
 at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:85)
 at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:58)
 at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:60)
 at java.lang.reflect.Method.invoke(Method.java:391)
 at javax.management.modelmbean.RequiredModelMBean.invokeMethod(RequiredModelMBean.java:1366)
 at javax.management.modelmbean.RequiredModelMBean.invoke(RequiredModelMBean.java:1012)
 at mx4j.server.interceptor.InvokerMBeanServerInterceptor.invoke(InvokerMBeanServerInterceptor.java:233)
 at mx4j.server.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:128)
 at mx4j.server.interceptor.SecurityMBeanServerInterceptor.invoke(SecurityMBeanServerInterceptor.java:86)
 at mx4j.server.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:128)
 at mx4j.server.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:128)
 at mx4j.server.interceptor.ContextClassLoaderMBeanServerInterceptor.invoke(ContextClassLoaderMBeanServerInterceptor.java:167)
 at mx4j.server.MX4JMBeanServer.invoke(MX4JMBeanServer.java:1249)
 at com.ibm.ws.management.AdminServiceImpl$1.run(AdminServiceImpl.java:901)
 at com.ibm.ws.security.util.AccessController.doPrivileged(AccessController.java:118)
 at com.ibm.ws.management.AdminServiceImpl.invoke(AdminServiceImpl.java:817)
 at com.ibm.ws.management.connector.AdminServiceDelegator.invoke(AdminServiceDelegator.java:139)
 at com.ibm.ws.management.connector.rmi.RMIConnectorService.invoke(RMIConnectorService.java:176)
 at com.ibm.ws.management.connector.rmi._RMIConnectorService_Tie.invoke(_RMIConnectorService_Tie.java:362)
 at com.ibm.ws.management.connector.rmi._RMIConnectorService_Tie._invoke(_RMIConnectorService_Tie.java:133)
 at com.ibm.CORBA.iiop.ServerDelegate.dispatchInvokeHandler(ServerDelegate.java:608)
 at com.ibm.CORBA.iiop.ServerDelegate.dispatch(ServerDelegate.java:461)
 at com.ibm.rmi.iiop.ORB.process(ORB.java:432)
 at com.ibm.CORBA.iiop.ORB.process(ORB.java:1728)
 at com.ibm.rmi.iiop.Connection.doWork(Connection.java:2229)
 at com.ibm.rmi.iiop.WorkUnitImpl.doWork(WorkUnitImpl.java:65)
 at com.ibm.ejs.oa.pool.PooledThread.run(ThreadPool.java:95)
 at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1332)

 

设置Bean的activication speccific JNDI or listener port.

         

资源下载链接为: https://pan.quark.cn/s/d9ef5828b597 在本文中,我们将探讨如何通过 Vue.js 实现一个带有动画效果的“回到顶部”功能。Vue.js 是一款用于构建用户界面的流行 JavaScript 框架,其组件化和响应式设计让实现这种交互功能变得十分便捷。 首先,我们来分析 HTML 代码。在这个示例中,存在一个 ID 为 back-to-top 的 div 元素,其中包含两个 span 标签,分别显示“回到”和“顶部”文字。该 div 元素绑定了 Vue.js 的 @click 事件处理器 backToTop,用于处理点击事件,同时还绑定了 v-show 指令来控制按钮的显示与隐藏。v-cloak 指令的作用是在 Vue 实例渲染完成之前隐藏该元素,避免出现闪烁现象。 CSS 部分(backTop.css)主要负责样式设计。它首先清除了一些默认的边距和填充,对 html 和 body 进行了全屏布局,并设置了相对定位。.back-to-top 类则定义了“回到顶部”按钮的样式,包括其位置、圆角、阴影、填充以及悬停时背景颜色的变化。此外,与 v-cloak 相关的 CSS 确保在 Vue 实例加载过程中隐藏该元素。每个 .page 类代表一个页面,每个页面的高度设置为 400px,用于模拟多页面的滚动效果。 接下来是 JavaScript 部分(backTop.js)。在这里,我们创建了一个 Vue 实例。实例的 el 属性指定 Vue 将挂载到的 DOM 元素(#back-to-top)。data 对象中包含三个属性:backTopShow 用于控制按钮的显示状态;backTopAllow 用于防止用户快速连续点击;backSeconds 定义了回到顶部所需的时间;showPx 则规定了滚动多少像素后显示“回到顶部”按钮。 在 V
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值