Weblogic 10 Ejb3 Message Bean 配置 Weblogic JMS 配置 Weblogic 10 EJB3 例子安装
今天研究EJB3,在JBOSS环境上玩了一把,但是WAS 6.1不支持EJB3,不爽啊,就到Weblogic下面再玩玩吧。一看Weblogic 10 的安装目录里面有个EJB3的很强大的例子,嗯,心想,这个不错,省事啊,直接安装得了。
但是令人不爽的问题是很多的,Weblogic 10 的JMS配置跟Weblogic 8 的不一样,配置了N下,也还是不能用,后台报错。
不管了,现在我们安装把,出问题了,然后就改呗,也是一个让大家学习的过程。
1,笨蛋式安装开始。
然后点击NEXT,缺省选择
然后点击NEXT,缺省选择
然后点击NEXT,缺省选择
然后点击完成。
靠,这下问题来了。
系统报错,报pointbase 什么manager找不到,什么问题呢,我把这个安装包给解压了开来,打开
domain.jar/META-INF/persistence.xml的内容有如下片段。
<properties>
<property name="kodo.ConnectionURL" value="jdbc:pointbase:server://localhost:9092/demo"/>
<property name="kodo.ConnectionDriverName" value="com.pointbase.jdbc.jdbcUniversalDriver"/>
<property name="kodo.ConnectionUserName" value="examples"/>
<property name="kodo.ConnectionPassword" value="examples"/>
<property name="kodo.jdbc.SynchronizeMappings" value="refresh"/>
</properties>
一看,我明白了,原来这个默认的玩意配置的数据库是这个玩意啊,我机器上有现成的mysql,我改成mysql试试吧。把以上内容改成
<property name="kodo.ConnectionURL" value="jdbc:mysql://localhost:3306/web"/>
<property name="kodo.ConnectionDriverName" value="com.mysql.jdbc.Driver"/>
<property name="kodo.ConnectionUserName" value="root"/>
<property name="kodo.ConnectionPassword" value="admin"/>
<property name="kodo.jdbc.SynchronizeMappings" value="refresh"/>
重新打包回去,然后继续发布。嗯,这下好了,没这个错误了。
我们看看mysql数据库里面发生了什么??
应用给表创建了以上我选择的表了,说明利用mysql还是可以的。
但是后台有以下输出。
<2009-7-19 上午12时15分10秒 CST> <Warning> <EJB> <BEA-010061> <The Message-Driven EJB: WatchProcessMDB is unable to conn
ect to the JMS destination: weblogic.examples.ejb30.ExampleQueue. The Error was:
weblogic.jms.common.JMSException: javax.naming.NameNotFoundException: Unable to resolve 'weblogic.jms.backend.JMSServer-
0'. Resolved 'weblogic.jms.backend'; remaining name 'JMSServer-0'
Nested exception: weblogic.jms.common.JMSException: javax.naming.NameNotFoundException: Unable to resolve 'weblogic.jms.
backend.JMSServer-0'. Resolved 'weblogic.jms.backend'; remaining name 'JMSServer-0'
Nested exception: weblogic.jms.common.JMSException: javax.naming.NameNotFoundException: Unable to resolve 'weblogic.jms.
backend.JMSServer-0'. Resolved 'weblogic.jms.backend'; remaining name 'JMSServer-0'
Nested exception: javax.naming.NameNotFoundException: Unable to resolve 'weblogic.jms.backend.JMSServer-0'. Resolved 'we
blogic.jms.backend'; remaining name 'JMSServer-0'>
119047 reviewService INFO [[STANDBY] ExecuteThread: '4' for queue: 'weblogic.kernel.Default (self-tuning)'] openjpa.
jdbc.JDBC - Shutting down connection pool.
<2009-7-19 上午12时15分33秒 CST> <Warning> <netuix> <BEA-423420> <Redirect is executed in begin or refresh action. Redir
ect url is /console/console.portal?_nfpb=true&_pageLabel=AppDeploymentsControlPage.>
<2009-7-19 上午12时15分47秒 CST> <Warning> <netuix> <BEA-423420> <Redirect is executed in begin or refresh action. Redir
ect url is /console/console.portal?_nfpb=true&_pageLabel=AppDeploymentsControlPage.>
<2009-7-19 上午12时26分30秒 CST> <Warning> <EJB> <BEA-010061> <The Message-Driven EJB: WatchProcessMDB is unable to conn
ect to the JMS destination: weblogic.examples.ejb30.ExampleQueue. The Error was:
Can not get distribute destination information. The destination JNDI name is weblogic.examples.ejb30.ExampleQueue, the p
rovider URL is null>
0 reviewService INFO [[STANDBY] ExecuteThread: '2' for queue: 'weblogic.kernel.Default (self-tuning)'] openjpa.Runti
me - Starting BEA Kodo 4.2.0load03
0 reviewService INFO [[STANDBY] ExecuteThread: '2' for queue: 'weblogic.kernel.Default (self-tuning)'] openjpa.jdbc.
JDBC - Using dictionary class "org.apache.openjpa.jdbc.sql.MySQLDictionary".
<2009-7-19 上午12时26分31秒 CST> <Warning> <netuix> <BEA-423420> <Redirect is executed in begin or refresh action. Redir
ect url is /console/console.portal?_nfpb=true&_pageLabel=AppApplicationOverviewPage&AppApplicationOverviewPortlethandle=
com.bea.console.handles.AppDeploymentHandle%28%22com.bea%3AName%3DreviewService%2CType%3DAppDeployment%22%29.>
<2009-7-19 上午12时27分30秒 CST> <Warning> <JMSPool> <BEA-169808> <There was an error while making the initial connectio
n to the JMS resource named weblogic.examples.ejb30.QueueConnectionFactory from the EJB "ReviewListenerBean" inside appl
ication "reviewService". The server will attempt the connection again later. The error was javax.jms.JMSException: [JMSP
ool:169803]JNDI lookup of the JMS connection factory weblogic.examples.ejb30.QueueConnectionFactory failed: javax.naming
.NameNotFoundException: Unable to resolve 'weblogic.examples.ejb30.QueueConnectionFactory'. Resolved 'weblogic.examples.
ejb30'; remaining name 'QueueConnectionFactory'>
一看就明白了。JMS没有配置。那我们去给Weblogic 配置JMS吧,我打开
public class ReviewListenerBean implements ReviewListener {
//The JNDI name of the Queue Connection Factory referenced here is specified by the mappedName attribute of @Resource,
//which can be overwritten in weblogic-ejb-jar.xml.
@Resource(name = "jms/mdbQCF", mappedName = "weblogic.examples.ejb30.QueueConnectionFactory")
private QueueConnectionFactory mdbQCF;
//The JNDI name of the Queue referenced here is specified by the mappedName attribute of @Resource,
//which can be overwritten in weblogic-ejb-jar.xml.
@Resource(name = "jms/mdbQueue", mappedName = "weblogic.examples.ejb30.ExampleQueue")
知道了需要配置的QueueFactory是 weblogic.examples.ejb30.QueueConnectionFactory
Queue是 weblogic.examples.ejb30.ExampleQueue
2,配置JMS。
第一步,创建一个JMS Server
点击New
新增一个JMS Server,
点击NEXT ,默认选项
点击NEXT,选择TARGET为当前的Server,如果是默认的Domain的话,应该是AdminServer
然后点击FINISH。成功创建JMS Server.
第二步,创建 JMS Modules。
点击Domain Structure -- Services -- Messaging--JMS Modules
然后点击NEW 按钮。
NEXT ,默认选项,
NEXT, Targets 选择 AdminServer.
然后NEXT, FINISH.
点击新建的 SystemModule-0,路径如下所示。
然后点击New
点击NEXT
全部填写 weblogic.examples.ejb30.QueueConnectionFactory
点击NEXT
点击 “Advanced Targeting”
点击“Create a New Subdeployment”
然后点击 OK,下面有 Targets : 全不选。切记,别选。
然后点击 Finish。
点击 weblogic.examples.ejb30.QueueConnectionFactory 到Transactions Tab页,勾选 XA Connection ......选项,SAVE
然后同样的方式新建队列。
点击NEXT,名称全部写 weblogic.examples.ejb30.ExampleQueue
点击NEXT,然后 Subdeployments 选择刚才新建的那个。
然后点击Finish完成。
然后重启动server吧。
然后在IE 里面输入
http://localhost:7001/reviewService
欣赏WEBLOGIC自带的sample吧,
如果这里页面是404错误,那应该是应用没有启动,需要到控制台把应用启动下就OK了。
本文的 主要讲解的JMS的配置问题。
作者 keyboardsun
分享到:
相关推荐
1. 安装WebLogic Server:首先,需要安装WebLogic Server 9.0,这是配置EJB的基础。按照weblogic9.0安装及配置文档的指导,完成安装过程,并确保服务器运行正常。 2. 创建EJB项目:在开发环境中(如Eclipse或...
【标题】"weblogic 10 ejb3 入门教程 + 调试通过的源代码"涉及的关键知识点主要集中在两个核心领域:WebLogic Server 10 和 EJB 3.0(Enterprise JavaBeans 第三版)。WebLogic Server 是 Oracle 提供的一款企业级...
然后,可以在没有安装Weblogic的机器上通过JNDI查找和调用Bean的方法,实现远程访问。 总结起来,Weblogic + EJB3.0的组合提供了一个强大而简化的企业级开发环境。EJB3.0的注解驱动和JavaBean模型降低了开发复杂性...
Weblogic 11g 是一款由甲骨文公司(Oracle)开发的企业级...通过研究和运行这个例子,开发者可以深入学习EJB3的核心特性,以及Weblogic服务器的管理与配置。同时,对于那些寻求EJB3实践的人来说,这是一个宝贵的资源。
本教程通过一个简单的例子介绍了如何使用WebLogic 10和EJB 3技术开发无状态会话Bean。从定义远程接口、创建业务对象到实现具体的会话Bean,再到最后的编译与打包,每一步都非常重要。掌握了这些基本步骤后,你可以...
提供的文档"ejb3.0+Weblogic+Jboss安装配置及入门例子.doc"和"基于weblogic的EJB学习笔记.htm"应该包含详细的安装指南、配置步骤以及基础的EJB编程示例。"基于weblogic的EJB学习笔记-JSP编程-华夏名网资讯中心 虚拟...
在本文中,我们将深入探讨如何使用Eclipse IDE与WebLogic Server 10.x版本结合,开发基于EJB 3.0规范的应用程序。EJB(Enterprise JavaBeans)是Java EE平台的核心组件,用于构建可扩展、可靠且安全的企业级应用程序...
WebLogic EJB学习笔记主要涵盖了企业级Java Bean(Enterprise JavaBeans,简称EJB)在Oracle WebLogic Server中的应用和管理。EJB是Java EE(Java Platform, Enterprise Edition)平台的核心组件,用于构建可扩展、...
WebLogic是Oracle公司的一款企业级...总之,WebLogic部署EJB 2.0涉及编写Session Bean、本地接口、配置部署描述符和实际部署到服务器等多个步骤。理解和掌握这些概念对于开发和维护基于Java EE的企业级应用至关重要。
《JavaEE实用开发指南:基于Weblogic+EJB3+Struts2+Hibernate+Spring》-- part2/3
3. **部署EJB**:在WebLogic中,EJB通过部署描述符(如ejb-jar.xml、weblogic-ejb-jar.xml等)进行配置,并打包成EAR文件进行部署。这包括定义bean的行为、接口、安全性和资源连接等。 4. **客户端调用EJB**:...
为了配置MDB,你需要在EJB容器(如WildFly、GlassFish或WebLogic)的部署描述符(ejb-jar.xml或META-INF/ejb-jar.xml)中声明bean,并指定它监听的JMS资源。同时,也需要在应用服务器的资源配置文件(如 GlassFish的...
3. **安装与配置 WebLogic**: - WebLogic 是一个高性能的应用服务器,广泛应用于企业级应用开发。 - 安装WebLogic Server,并进行必要的配置。 - 配置WebLogic以支持EJB容器服务。 #### 三、WebLogic配置详解 ...
- **weblogic-ejb-jar.xml或jboss-ejb3.xml**:对于特定应用服务器(如WebLogic或JBoss),可能还需要额外的配置文件来指定JMS连接工厂和目的地。 3. **MDB的生命周期**: - **初始化**:当服务器启动或MDB类加载...
### WebLogic 与 EJB:配置 MySQL 数据源详解 #### 一、背景介绍 在Java企业级应用开发中,WebLogic作为一个广泛使用的Java EE中间件平台,提供了强大的服务支持,其中包括了EJB(Enterprise JavaBeans)组件的支持...
帮助初学这在Eclipse中配置开发EJB的容器这里以weblogic的配置来说明
或消息驱动bean(Message-Driven Beans),用于处理JMS消息。在这个实例中,EJB可能被用来存储和管理留言簿中的用户数据和留言信息。 3. **WebLogic**:WebLogic是Oracle公司提供的一个强大的Java应用服务器,它...
在本文中,我们将深入探讨如何在WebLogic 7中配置并开发Enterprise JavaBeans(EJB)。WebLogic Server 7是BEA Systems推出的一款早期的Java应用服务器,它为开发和部署EJB提供了平台。EJB是Java EE(企业版)框架的...
- **WebLogic**:一款由Oracle公司提供的功能强大的企业级Java应用服务器,支持EJB、JMS等标准。 - **EJB**:Enterprise JavaBeans,一种用于开发分布式企业级应用程序的标准组件模型。 #### 实现步骤 1. **配置...