WebLogic 是一套基于JAVA功能强大的电子商务套件,提供了许多功能强大的中间件以方便编程人员编写的JSP、SERVLET 等电子商务应用,可以为企业提供一个完整的商务应用解决方案。对于开发人员 WebLogic 可以在 www.bea.com 免费下载一套完整的 WebLogic,并得到一个限制了 IP 的license,用于学习和开发基于这个套件的代码。而要是需要正式的投入使用的话,那么就必须支付一定的费用获取没限制的license。由于这个套件基于这种发布方式,对于一般网站开发人员可以很轻易地得到 WebLogic 用于学习开发,当然投入使用是另一回事。
我获得的 WebLogic5.10是两个大大的zip文件,一个是WebLogic程序包,一个是资料文档。因为是基于JAVA,虽然在下载时有区分操作系统,但是我得到的那套经过实践发现在WINNT和LINUX都可以运行,下面主要是以LINUX的为例,WINNT的安装方法也差不多。
安装前准备:
在安装前,用户必须获得一套对应于用户的操作系统的JDK(在 www.sun.com 免费下载),安装好后把WebLogic5.10的压缩包解开,建议放在根目录上,这样会省去很多修改设置的麻烦,在linux下可以解在其他目录,然后在根目录再做一个硬连接也可以。
我的安装的文件目录是
/usr/local/jdk1.2/
/usr/local/weblogic/
ln -s / /usr/local/weblogic/
配置weblogic:
启动weblogic需要执行两个脚本文件:
linux:setEnv.sh和startWebLogic.sh
WINNT对应的是:setEnv.cmd和startWebLogic.cmd
1、weblogic.properties
打开/usr/local/weblogic/的 weblogic.properties 文件,找到这一行
weblogic.password.system=
这是设置管理员密码用的,这个设置项不能为空,所以必须设置一个可靠的管理员密码。
例如:weblogic.password.system=sdfjkdshfds
设置运行JSP:
# WEBLOGIC JSP PROPERTIES # ------------------------------------------------ # Sets up automatic page compilation for JSP. Adjust init args for # directory locations and uncomment to use. #weblogic.httpd.register.*.jsp=\ #weblogic.servlet.JSPServlet #weblogic.httpd.initArgs.*.jsp=\ #pageCheckSeconds=1,\ #compileCommand=c:/jdk1.2.1/bin/javac.exe, \ #workingDir=/weblogic/myserver/classfiles, \ #verbose=true
把那些注释删去,即改为
# WEBLOGIC JSP PROPERTIES # ------------------------------------------------ # Sets up automatic page compilation for JSP. Adjust init args for # directory locations and uncomment to use. weblogic.httpd.register.*.jsp=\ weblogic.servlet.JSPServlet weblogic.httpd.initArgs.*.jsp=\ pageCheckSeconds=1,\ compileCommand=c:/jdk1.2.1/bin/javac.exe, \ workingDir=/weblogic/myserver/classfiles, \ verbose=true
要注意的是还要配置好这一行:
compileCommand=/usr/local/jdk1.2/bin/javac, \
这是JDK的JAVA编译器的路径。
2、setEnv.sh
打开/weblogic/setEnv.sh,找到这一行
JAVA_HOME=/usr/java
改为
JAVA_HOME=/usr/local/jdk1.2/
3、 startWebLogic.sh
找到一个全是大写的 "LINUX" 字符串,改为 "Linux",很奇怪是为何要这样是吗?这是因为启动时,脚本文件调用了uname 指令来得到系统的名字,再与"LINUX" 字符串比较确认是否是linux系统,但是uname 指令来返回的系统的名字是Linux,所以我们要改一下,这应该是这个启动脚本的一个小小的BUG,WINT就不用那么麻烦了。
运行weblogic:
经过简单的配置就试运行了。
在目录/weblogic/下执行
. ./setEnv.sh (大家请留意,我这里有两个 ".",因为我们需要在当前的shell下执行这个脚本 )
./startWebLogic.sh
当看到成功启动 WebLogic 的信息时,说明启动成功了。
服务器简单的测试:
WebLogic 默认的WEB端口为7001,我们可以在打开一个浏览器输入地址
http://localhost:7001/
测试是否能连接得上。
Servlet的测试
如果能连得上得话,那么就可以进行下一步的Servlet的测试,在浏览器输入地址
http://localhost:7001/helloWorld
这个就是WebLogic Servlet的演示(至于怎样安装 Servlet请看下文)
JSP的测试
在目录 /weblogic/myserver/public_html/下建立一个名为test.jsp的文件
test.jsp <% Out.print("test JSP"); %>
在浏览器输入地址
http://localhost:7001/test.jsp
测试能否看到正确的输出"test JSP"的信息。
要学习好一套系统首先要了解它的结构,本文详细的介绍 WebLogic 的一些结构和特点:
WebLogic的大部分配置是在 weblogic.properties 里完成的,只要仔细的研究这个文件就可以清楚得知关于 WebLogic 的一些结构和特点,下面就对 weblogic.properties 文件里的一些配置项作一些说明:
weblogic.httpd.documentRoot=public_html/
这就是WebLogic 的WEB 服务器的根目录,即是目录/weblogic/myserver/public_html/
weblogic.password.system=sdfjkdshfds
这个前文已经提到,是设置管理员密码。
weblogic.system.listenPort=7001
这是设置 WebLogic 的 WEB 服务器端口。
weblogic.httpd.servlet.classpath=/weblogic/myserver/servletclasses
设置Servlet存放的路径
关于Servlet
出于安全的目的,在 WebLogic 下运行的 WebLogic 必须在weblogic.properties 里登记后才能运行,例如上文的提到Servlet http://localhost:7001/helloWorld, 它在weblogic.properties 里的登记项是
weblogic.httpd.register.helloWorld=examples.servlets.HelloWorldServlet
实际上,这个 Servlet 的实际路径是/weblogic/myserver/servletclasses/examples/servlets/HelloWorldServlet.class
对照一下weblogic.properties里的登记项和HelloWorldServlet.class文件的路径,应该不难找出其登记Servlet的规律吧。
在weblogic.properties里有一下几个Servlet的登记项:
weblogic.httpd.register.AdminEvents=admin.AdminEvents
weblogic.httpd.register.AdminClients=admin.AdminClients
weblogic.httpd.register.AdminConnections=admin.AdminConnections
weblogic.httpd.register.AdminJDBC=admin.AdminJDBC
weblogic.httpd.register.AdminLicense=admin.AdminLicense
weblogic.httpd.register.AdminMain=admin.AdminMain
weblogic.httpd.register.AdminProps=admin.AdminProps
weblogic.httpd.register.AdminRealm=admin.AdminRealm
weblogic.httpd.register.AdminThreads=admin.AdminThreads
weblogic.httpd.register.AdminVersion=admin.AdminVersion
这就是管理员管理 WebLogic 用的Servlet,通过URL访问http://localhost:7001/AdminMain,在弹出的身份验证对话框了输入 system 和在 weblogic.password.system= 设置的密码,就可以进入 WebLogic 的Web管理界面进行管理。