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:eauser_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: emp,單擊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)錯誤代碼描述:
<140013>
C:eauser_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:eauser_projectsmydomain。
2.Authentication for user denied。
(1)錯誤代碼描述:
<000364> Exception:java.lang.SecurityException: Authentication for user username denied
java.lang.SecurityException: Authentication for user username denied.