JBuilder7中调试WebLogic7.0的EJB
摘 要:本文目的是介绍如何在集成的开发环境JBuilder 下调试运行在WebLogic当中的EJB,分为三部分。第一部分讲述Java Platform Debugger Architecture,JBuilder下的调试器正是基于这个框架进行工作的;第二部分介绍JBuilder下的WebLogic配置,正确的在JBuilder配置是保证成功调试的前提条件;第三部分进入调试EJB的实质阶段,以一个具体的例子演示EJB的调试。
1.关于Java Platform Debugger Architecture
在Java的发展历史上,JAVA 2的推出使得Java逐渐切入企业级的应用市场。面对众多的企业应用开发者,如何提供一个方便、易用的调试框架,为所有的JAVA 2应用提供基础层次的调试支撑,成为JAVA 2设计者们所要考虑的一个重要问题。
新的Java Platform Debugger Architecture伴随着JAVA 2的发布而出现在开发人员面前,它由三个部分组成:Java虚拟机调试接口(JVMDI)、Java调试网络协议(JDWP)和Java调试接口(JDI)。
它们之间的关系可通过以下的示意图描述:
任何符合JAVA 2规范的虚拟机都必须实现JVMDI,以支持来自JDI的调试命令。至于JVMDI和JDI之间通过何种方式进行通信,在跨越网络的环境下,首选的协议是TCP,当然也可能包含其他的网络协议和方式,这取决于厂商提供的JVM的实现。比如目前Sun公司提供的用于Windows平台的JVM,一个JVMDI的实现,同时支持TCP和Share memory的通信方式;而用于Solaris平台的JVM,则只支持TCP的通信方式。
通常我们会以调试模式启动即将被调试的JAVA 2进程,而后调试前端attach到这个进程上,向该进程发起调试命令,这称为远程调试(Remote debugging)。
自JAVA 2发布后,在1.3、1.4当中,JPDA都得到了不断的增强,有关更多JPDA的信息,请参见JAVA 2联机文档。
在JBuilder当中,我们即将使用的调试方式就是Remote debugging。
2.在JBuilder中配置WebLogic
"工欲善其事,必先利其器",JBuilder作为一个功能强大的IDE,支持在多种应用服务器环境下进行开发、调试和部署J2EE应用。缺省的,JBuilder当中只配置了一个免费的tomcat作为EJB的容器,我们需要重新设定JBuilder缺省的应用服务器为WebLogic。
2.1.配置WebLogic Application Server
启动JBuilder后,选择菜单"Tools"->"Configure Servers…",设置画面如下:
Home directory - WebLogic Server所在目录
Main class - 当设定Home directory后,JBuilder会自动设定