接下来要下载WEBLOGIC,版本有很多,我下了比较新的WebLogic 10.0,支持Java EE 5.0,而且附带Workshop for WebLogic Platform,可以简化开发.我下的是英文的,好像10.0版的目前还没有中文.如果想更方便的使用还得去网上打个破解包,毕竟它不是免费的.如果没有破解的话,在Workshop中编写Remote接口时是加不上自己的业务方法声明的,一加就会被恢复成最初的模版 .
下好WebLogic以后就可以安装了,选择安装的路径,在选择安装项时最好不要安装一些Sample,这样装好后会比较干净;而且别忘了选择安装 Workshop.
安装好之后,先创建一个自己的domain,即工作域.创建步骤:开始-->Bea Products-->Tools-->Configration Wizard,然后一路走默认,填入用户名,密码,再走默认,就OK了.之后你会发现在"开始-->Bea Products"目录下会多一个"User Projects".选择"开始-->Bea Products-->User Projects-->base_domain-->Start Admin Server for WebLogic Server Domain"可以开启WebLogic Server.等到启动完毕后,选择"开始-->Bea Products-->User Projects-->base_domain-->Admin Server Console"可登陆base_domain的控制台,在控制台中可以做一些Java EE部署安装等工作 .
下面以一个最简单的Java EE应用来演示一下开发流程.该应用中包含一个EJB模块,功能是返回"Hello"字符串 .
首先打开Workshop(开始 -->Bea Products-->Workshop for WebLogic Platform).
然后新建一个的J2EE EAR工程(File->New->Project...),然后选择J2EE目录下的Enterprise Application Project.点 Next >
填入项目名:Hello,然后回车 ...
这样就创建好了一个名为Hello的 Enterprise Application Project
接下来还需要再创建一个EJB模块.方法如下 :
新建一个WebLogic EJB Project.(File->New->Project...),然后选择EJB目录下的WebLogic EJB Project.点 Next >
填入项目名:HelloEJB,并选中Add project to an EAR复选框,并在EAR Project Name下拉菜单中选择Hello.然后回车 ...
这样就创建好了一个名为HelloEJB的WebLogic EJB Project,并且已加入到刚刚建的那个Hello EAR工程中了.如下图所示:
接下来我们要在HelloEJB中创建一个会话构件,即Weblogic Session Bean。由于Weblogic规定构件一定要创建在某个包中,所以我们必需先创建一个包,包名可以随便取。这里取:"cn.sy.ejb"。包建好以后就可以建一个Weblogic Session Bean了。起名为HelloBean。
ààààà
同时还生成了相应的HelloBeanRemote.java和HelloBeanRemoteHome.java两个接口。如下图:
到此为止,一个干净有效最简的J2EE EAR工程已经建好,下面要做的就填入自己的业务方法:public String Hello();
在HelloBean.java中加入该业务方法并保存:
在HelloBeanRemote.java中加入该业务方法的声明并保存:
然后就可以导出该J2EE EAR工程了,右击工程Hello:
点Finish之后在E:盘的根目录下就有一个名为Hello.ear的EAR文件,接下来要做的工作就是在Weblogic服务器上布置并发布此EAR文件。选择"开始-->Bea Products-->User Projects-->base_domain-->Start Admin Server for WebLogic Server Domain"可以开启WebLogic Server.等到启动完毕后,选择"开始-->Bea Products-->User Projects-->base_domain-->Admin Server Console"登陆base_domain的控制台。
选择左侧边栏的Deployments:
单击左侧边栏的Lock & Edit:
单击后:
单击中间的Install:
单击后:
之后选择E:/下的Hello.ear并单击下一步:
之后就是一路默认,最后点Finish。接下来还要激活一下修改,点Activate Changes:
这样就布置好了,状态为Prepared:
要想让接下来创建的客户端能够访问它,还需激活它,选项中Hello,选择StartàServicing all requests :
然后选Yes,再回到Deployments可看到状态变为Active了:
至此,完成了Enterprise Application Project的开发并且在WebLogic上成功部署了该项目。接着创建一个客户端来访问此EAR的功能。
新建一普通java项目HelloClient,创建名为HClient.java的类,并把HelloEJB项目中的HelloBeanRemote.java、HelloBeanRemoteHome.java复制到对应的包中:
增加必需的Library与jar文件:
à
à
à
HClient.java的代码如下:
![](https://i-blog.csdnimg.cn/blog_migrate/f0cd6c7f9e7ae96feae062cb48f670f0.gif)
2
![](https://i-blog.csdnimg.cn/blog_migrate/f0cd6c7f9e7ae96feae062cb48f670f0.gif)
3
![](https://i-blog.csdnimg.cn/blog_migrate/f0cd6c7f9e7ae96feae062cb48f670f0.gif)
4
![](https://i-blog.csdnimg.cn/blog_migrate/f0cd6c7f9e7ae96feae062cb48f670f0.gif)
5
![](https://i-blog.csdnimg.cn/blog_migrate/f0cd6c7f9e7ae96feae062cb48f670f0.gif)
6
![](https://i-blog.csdnimg.cn/blog_migrate/f0cd6c7f9e7ae96feae062cb48f670f0.gif)
7
![](https://i-blog.csdnimg.cn/blog_migrate/f0cd6c7f9e7ae96feae062cb48f670f0.gif)
8
![](https://i-blog.csdnimg.cn/blog_migrate/f0cd6c7f9e7ae96feae062cb48f670f0.gif)
9
![](https://i-blog.csdnimg.cn/blog_migrate/f0cd6c7f9e7ae96feae062cb48f670f0.gif)
10
![](https://i-blog.csdnimg.cn/blog_migrate/f0cd6c7f9e7ae96feae062cb48f670f0.gif)
11
![](https://i-blog.csdnimg.cn/blog_migrate/f0cd6c7f9e7ae96feae062cb48f670f0.gif)
12
![](https://i-blog.csdnimg.cn/blog_migrate/f0cd6c7f9e7ae96feae062cb48f670f0.gif)
13
![](https://i-blog.csdnimg.cn/blog_migrate/f0cd6c7f9e7ae96feae062cb48f670f0.gif)
14
![](https://i-blog.csdnimg.cn/blog_migrate/34031c708bfe702fe82d01ff5c6593aa.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/0be121fa5b8988fbabbbc526af3b0fc0.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/b854634c0904529d4018c4c3336be836.gif)
15
![](https://i-blog.csdnimg.cn/blog_migrate/587e34b10dcf5efbc0859b53470a2db3.gif)
16
![](https://i-blog.csdnimg.cn/blog_migrate/3112b7b6526db5bc83e275260ae60525.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/f2671b7f42ce505d9bf55a7a0ca257fb.gif)
17
![](https://i-blog.csdnimg.cn/blog_migrate/587e34b10dcf5efbc0859b53470a2db3.gif)
18
![](https://i-blog.csdnimg.cn/blog_migrate/587e34b10dcf5efbc0859b53470a2db3.gif)
19
![](https://i-blog.csdnimg.cn/blog_migrate/587e34b10dcf5efbc0859b53470a2db3.gif)
20
![](https://i-blog.csdnimg.cn/blog_migrate/587e34b10dcf5efbc0859b53470a2db3.gif)
21
![](https://i-blog.csdnimg.cn/blog_migrate/eec4c0236afc26744c9c4e910bc34958.gif)
22
![](https://i-blog.csdnimg.cn/blog_migrate/3112b7b6526db5bc83e275260ae60525.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/f2671b7f42ce505d9bf55a7a0ca257fb.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/b854634c0904529d4018c4c3336be836.gif)
23
![](https://i-blog.csdnimg.cn/blog_migrate/3112b7b6526db5bc83e275260ae60525.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/f2671b7f42ce505d9bf55a7a0ca257fb.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/b854634c0904529d4018c4c3336be836.gif)
24
![](https://i-blog.csdnimg.cn/blog_migrate/587e34b10dcf5efbc0859b53470a2db3.gif)
25
![](https://i-blog.csdnimg.cn/blog_migrate/587e34b10dcf5efbc0859b53470a2db3.gif)
26
![](https://i-blog.csdnimg.cn/blog_migrate/587e34b10dcf5efbc0859b53470a2db3.gif)
27
![](https://i-blog.csdnimg.cn/blog_migrate/587e34b10dcf5efbc0859b53470a2db3.gif)
28
![](https://i-blog.csdnimg.cn/blog_migrate/587e34b10dcf5efbc0859b53470a2db3.gif)
29
![](https://i-blog.csdnimg.cn/blog_migrate/587e34b10dcf5efbc0859b53470a2db3.gif)
30
![](https://i-blog.csdnimg.cn/blog_migrate/587e34b10dcf5efbc0859b53470a2db3.gif)
31
![](https://i-blog.csdnimg.cn/blog_migrate/587e34b10dcf5efbc0859b53470a2db3.gif)
32
![](https://i-blog.csdnimg.cn/blog_migrate/587e34b10dcf5efbc0859b53470a2db3.gif)
33
![](https://i-blog.csdnimg.cn/blog_migrate/587e34b10dcf5efbc0859b53470a2db3.gif)
34
![](https://i-blog.csdnimg.cn/blog_migrate/3112b7b6526db5bc83e275260ae60525.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/f2671b7f42ce505d9bf55a7a0ca257fb.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/b854634c0904529d4018c4c3336be836.gif)
35
![](https://i-blog.csdnimg.cn/blog_migrate/587e34b10dcf5efbc0859b53470a2db3.gif)
36
![](https://i-blog.csdnimg.cn/blog_migrate/587e34b10dcf5efbc0859b53470a2db3.gif)
37
![](https://i-blog.csdnimg.cn/blog_migrate/eec4c0236afc26744c9c4e910bc34958.gif)
38
![](https://i-blog.csdnimg.cn/blog_migrate/eec4c0236afc26744c9c4e910bc34958.gif)
39
![](https://i-blog.csdnimg.cn/blog_migrate/4fd96b3cf02f4c7b5c8964ac8167f7af.gif)
40
![](https://i-blog.csdnimg.cn/blog_migrate/f0cd6c7f9e7ae96feae062cb48f670f0.gif)
最后运行结果如图:
http://www.cnblogs.com/suyang/archive/2008/05/20/1203284.html