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管理介面進行管理。