Borland公司推出JBuilder 7后,引起了很多java爱好者的关注。本文就是笔者根据自己经验编写的在JBuilder7下配置Weblogic Server7.0。希望通过此文,大家能顺利地搭建一个比较普遍流行的J2EE环境,并学会开发基本的EJB程序。
创建一个Weblogic Server域
本文假设已经正确安装了JBuilder7和Weblogic Server7.0。值得注重的是,在Weblogic Server 7.0安装的时候要设置一个Server,你可以在安装的时候设置,也可以在安装完后通过开始菜单→程序→BEA Weblogic Platform7.0→Configuration Wizard来设置。设置的时候不要选择WLS Examples,而要选择WLS Domain(如图1)。因为WLS Examples设置了一个范例域,其中有一些范例程序、连接池设置和数据源,运行的时候会出现连接池设置不对的问题。WLS Domain可以创建一个空的域,默认域名是mydomain。具体创建域的过程如下:首先选择默认的Single Server,接下来选择默认域目录是H:\bea\user_PRojects\,然后单击Next按钮,填写完用户名和密码后,再单击Next,最后创建一个域。
图1 选择Server界面
在JBuilder 7下配置Weblogic Server 7.0
1.运行JBuilder 7后,选择Tools→Configure Servers,弹出的窗口如图2所示。然后进行如下设置:在左边选择Weblogic Server 6.x+,在右边选择面板上的Enable Server选项,然后在Home Directory里写上你的Weblogic Home目录为H:/bea/weblogic700/server(我这里安装在H盘上,假如你装在别的盘请自行更改)。同时在Class标签下新增四个在JBuilder根目录下的lib目录下的.jar文件,分别为jaxrpc.jar、jas.jar、jdsremote.jar和jdsserver.jar,并按照如图2的顺序按Move Up按钮将jaxrpc.jar移到第一个。这些.jar文件在开发Entity Bean和使用JdataStore数据库时起作用。
图2 配置Server界面1
选择图3的Custom 标签,首先设置JDK Installation Directory为H:/bea/jdk131_02,设置BEA Home Directory为H:/bea,设置DomainDirectory为H:/bea/user_projects/mydomain。然后填写用户名和密码,用户名和密码就是在设置Weblogic Server域时设置的用户名和密码。最后填写Domain Name、Server Name分别为mydomain、myserver后,单击OK退出。
图3 配置Server界面2
2.选择Tools-Enterprise Setup,单击CORBA面板上的New,弹出如图4所示的窗口。配置如下:在Name for this configuration里填写WelLogic 7.0、在Path for ORB Tools里填写h:/bea/weblogic700/server、在Library for projects里选择WebLogic 6.x+Deploy、在IDL compiler command里填写idlj.exe,在Commnad option for output directory里填写任意一个目录,比如:h:\temp,单击OK退出。
图4 设置CORBA界面
3.选择Project-Default Project properties,然后选择Server标签,在Single services for all service in project下拉列表中选择WebLogic application Server 6.x+,单击OK退出,配置完毕。这里有两个选项Single services for all service in project和Modular Services provided by different servers,第一个表示在项目里用一个服务,后面的表示在项目里用不同的服务,比如jsp和Servlet可以用Tomcat的,而ELB是用Weblogic的。这里选择在项目里用一个服务。
在配置好的环境下开发一个session Beans
1. 创建一个项目。选择File—New,然后选择Project面板下的 Project项,在Name中填入TestSes,在Directory里填写项目要放的位置,其它的默认,单击Finish。
2. 创建一个Session Bean模块。选择File—New,然后选择Enterprise面板下的EJB Module,选择OK。在出现的窗口后,在Name里填写TestSesMod,在Version里选择EJB 2.0 compliant。
图5 设置EJB界面
图6 创建EJB方法界面
3. 创建一个Session Bean。在JBuilder里,EJB可以可视化的创建。如图5所示,在右边的空面板里点击鼠标右键,选择Create EJB,然后在它的子菜单里选择Session Bean,这样就创建了一个可视化的Session Bean。在Bean的设置面板中可以改变Bean的名字,这里的Bean Name是TestSes。现在开始创建一个方法,步骤如下:在TestSes上点击鼠标右键,选择Add后选择Method(如图6),然后在Name里填getName、Return type填String、Interfaces里选Remote,再在左边点击testses旁边的+号,点开+号后在出现的Java文件里双击TestSesBean.java,最后在getName方法里加入如下代码:
Public String getName(){
return "Testing SUCcessful";
}
4. 创建配置Jar文件。要运行Session Bean,首先要编译这个项目。选择Project下的Make Project TestSes.jpx,编译后可以看到TestSesBean.java旁边多了个“+”号,点击这个“+”号可以看到几个由容器产生的文件。在左边的面板里也可以看到TestSesMod.jar文件,双击它可以看到部署描述(如图7)。
图7 创建配置Jar文件
5. 创建运行期的设置。JBuilder答应用户为不同的应用程序创建运行期设置。设置如下:选择Run —Configuration Name,此时出来的Project Properties窗口里Run面板是默认选择上的。单击New来创建一个新的运行期设置,在弹出来的Runtime Properties面版中单击Server标签,然后在Configuration name里输入一个设置名,这里输入Server(如图8),随后单击OK,再单击OK退出。
图8 设置EJB界面
6. 在JBuilder里运行Weblogic。运行如下:选择菜单Run下的Run Project运行Weblogic Server。
7.部署EJB到Webloigc Server。设置如下:右击TestSesMod.jar,在弹出的面板里选择Deploy option of TestSesMod.jar,再选择Deploy(如图9)。
图9 部署EJB到Weblogic Server界面
8.远程部署。这里简单地介绍一下在远程的Weblogic Server上如何部署应用。即使是远程部署,在本机上也需要装有应用服务器。假如是在Weblogic Server7.0上部署的,在JBuilder里选择Tools—Enterprise Deployment,在弹出的窗口里修改Admin url为远程服务器的主机名和端口号,然后设置正确的用户名和密码。
9. 创建一个客户端测试程序测试Session Bean。创建步骤如下:在JBuilder里选择File—New,然后选择Enterprise标签里的EJB Test Client,点击OK。在弹出来窗口的Name里输入TestSesTestClient,单击OK结束。
在文件的main()方法里加入如下代码:
public static void main(String[] args) {
TestSesTestClient client = new TestSesTestClient();
try{
client.create();
String name=client.getName();
System.out.println ("Name form the Test client="+name);
}
catch (Exception ex){}
}
10.运行客户端测试程序。测试如下:先为它加一个运行期设置。在Run—Configuration里选择New,在弹出的窗口里选择Run下的Application,同时在Configuration name里输入Client,然后在Main里选旁边的按钮,在弹出的窗口里选择Browse标签下的testses下的TestSesTestClient,一路OK完成。右击TestSesTestClient.java,单击Run Using Client后,运行Client程序。运行成功后见图10所示,Client得到了调用了Session Bean的方法,返回了Testing Successful。
图10 运行客户端测试程序界面
常见错误解答
1.WebLogic Server cannot start: config.xml not found。
(1)错误代码描述:
C:\bea\user_projects\.\config.xml not found
Since no config.xml was found, the fileRealm.properties file will not be used.
Would you like the server to create a default configuration and boot? (y/n):
(2)问题发生时机:
在JBuilder上运行Weblogic Server时,在Weblogic 6.x+ http:7001页上。
(3)产生原因:
Weblogic域目录没有正确设置。
(4)解决方法:
选择Tools——Configure Servers,左边选择Weblogic Server 6.x+,右边选择Custom标签,同时检查域目录是否正确。如:h:\bea\user_projects\mydomain。
2.Authentication for user denied。
(1)错误代码描述:
Exception:java.lang.SecurityException: Authentication for user username denied
java.lang.SecurityException: Authentication for user username denied.