WAS6.1 +HIBERNATE+SPRING +MYECLIPSE5.1.1 整合

概述

Hibernate 是傳統(tǒng)的 Java 對象 (POJO) 的開放源代碼持久性框架,它通過 XML 配置文件提供 POJO 到關系數(shù)據(jù)庫表的與對象相關的映射。 Hibernate 框架是應用程序調用的、用于數(shù)據(jù)持久性的數(shù)據(jù)訪問抽象層。此外, Hibernate 還提供了從 Java 類到數(shù)據(jù)庫表(以及從 Java 數(shù)據(jù)類型到 SQL 數(shù)據(jù)類型)的映射以及數(shù)據(jù)查詢和檢索功能。 Hibernate 生成必需的 SQL 調用,還負責結果集處理和對象轉換。

Hibernate Gavin King Hibernate 項目的奠基人)領導的軟件開發(fā)團隊開發(fā),目的是解決 EJB 2.x 實體 EJB 中存在的諸多缺陷。 Hibernate JBoss Group 緊密關聯(lián),這是由于 JBoss 雇傭了大量的一流 Hibernate 開發(fā)人員的結果。最近,在 Java Community Process (JCP) 中的持久性框架的發(fā)展中已涉及 Hibernate ,并且 Hibernate 的許多概念已合并到 Java Persistence API (JPA) 規(guī)范中。最新版本的 Hibernate 將發(fā)展為符合 JPA 規(guī)范。

?? 即使擁有良好的工具和優(yōu)秀技術,應用軟件開發(fā)也是困難重重。應用開發(fā)往往牽扯到方方面面,每件事情都難以控制,而且,開發(fā)周期也很難把握(除非它的確是一個重量級的復雜應用,倒也有情可原)。 Spring 提供了一種輕量級的解決方案,用于建立“快裝式企業(yè)應用”。在此基礎上, Spring 還提供了包括聲明式事務管理, RMI Web Services 遠程訪問業(yè)務邏輯,以及可以多種方法進行的持久化數(shù)據(jù)庫地解決方案。另外, Spring 還有一個全功能的 MVC 框架,并能透明的把 AOP 集成到你的軟件中去。你可以把 Spring 當作一個潛在的一站式企業(yè)應用。或者,把 Spring 看作一個標準開發(fā)組件,根據(jù)自己的需要,只取用它的部分組件使用而無需涉及其他。例如,你可以利用控制反轉容器在前臺的展現(xiàn)層使用 Struts ,還可以只使用 Hibernate 集成編碼 或是 JDBC 抽象層 去處理數(shù)據(jù)存儲。 Spring 被設計成(并將繼續(xù)保持)無侵入性的方式,意味著應用幾乎不需要對框架進行依賴(或根據(jù)實際使用的范圍,將依賴做到最小)。

?????? 目前 12580 系統(tǒng)正是基于 Spring Hibernate 兩個開放源代碼項目集成而成的開發(fā)框架,采用的 J2EE 規(guī)范包括了 EJB Servlet Jsp MVC 等,運行的應用服務器是 BEA Weblogic81 。隨著 12580 信息資訊互動中心業(yè)務應用的不斷發(fā)展,業(yè)務不斷累加,在這種情況下,采用原有的開發(fā)框架( Jsp+Servlet+Hibernate+EJB )完成新業(yè)務的開發(fā),導致了整個系統(tǒng)的代碼不斷累加,維護性、運行效率都非常的差,而且對于新來的員工想快速利用原有的開發(fā)框架上手非常的難,客戶對系統(tǒng)的性能以及業(yè)務快速開發(fā)要求越來越高,因此 , 為了解決這個問題,利用了開源社區(qū)比較成熟的技術對原有的開發(fā)框架進行了無縫移植,即將原有的開發(fā)技術框架( Jsp+Servlet+Hibernate+EJB )移植到 Jsp+Servlet+Spring Spring+WebWork2 上,開發(fā)環(huán)境由原來的 WSAD 移植到基于 Eclipse SDK J2EE 開發(fā)工具 Myeclipse 。主要是為了減少工作量,減少企業(yè)應用對應用服務器的依賴,易于移植到不同的平臺中,同時新業(yè)務的開發(fā)采用新的技術框架,極大的提高了開發(fā)進度,為 12580 系統(tǒng)快速推出新業(yè)務占領信息市場提供了技術保障。

?

?

環(huán)境要求

1.? Application Server IBM WebSphere Application Server V6.1Base_Windows32bit

2.? JDK \IBM\WebSphere6.1\AppServer\java

3.? IDE Eclipse3.2.2+MyEclipse5.1.1

4.? Spring spring-framework-2.0.3

5.? Hibernate hibernate-3.2.2.ga

6.? CVS CVS for NT (CVSNT) 2.0

7.? DB oracle92

可到 \\10.243.194.69\Temp\ 系統(tǒng)移植所需軟件下載以上軟件。

WAS V6.1 安裝以及基本配置

安裝

安裝過程比較簡單,按照安裝提示一路操作即可,在此不一一介紹,需要提醒的是要記得安裝過程中所設置的用戶名、密碼,該帳號信息是 WAS 管理控制臺的登錄帳號。

基本配置

下面以圖文并茂的方式簡單介紹 WAS 的基本配置,包括常用的環(huán)境變量、共享庫、 JDBC 提供程序、數(shù)據(jù)源的配置等。

啟動服務器

啟動 WAS ,如下圖:

選擇啟動服務器,看到以下內(nèi)容,表示服務器啟動正常,如下圖:

進入管理控制臺

WAS 的管理控制臺端口是 9060 ,具體 URL http://localhost:9060/ibm/console ,也可以通過以下方式登錄。

選擇管理控制臺即可,在打開的 IE 窗口輸入管理員帳號、密碼,進入管理控制頁面,如下圖:

配置環(huán)境

環(huán)境配置主要是配置企業(yè)應用系統(tǒng)所用到的依賴 jar 包、路徑變量等。常用到的配置有 WebSphere 變量、共享庫。

1.? WebSphere 變量

使用此頁面來定義替換變量。這些變量指定某些系統(tǒng)定義的值(例如,文件系統(tǒng)根目錄)的間接程度。變量有作用域級別,即服務器、節(jié)點、集群或單元。某個作用域的值可與其他級別的值不同。當變量具有沖突的作用域值時,粒度較細的值會覆蓋作用域級別高一些的值。因此,服務器變量覆蓋節(jié)點變量,節(jié)點變量覆蓋集群變量,集群變量覆蓋單元變量。具體操作選擇左邊菜單:環(huán)境-》 WebSphere 變量,如下圖:

選擇新建操作,切換到配置頁面,輸入名稱、值,如下圖:

確定之后,系統(tǒng)返回提示是否保存,選擇保存,如下圖:

保存后則配置的變量生效,可以在其他配置中使用定義好的變量名稱代替具體的文件路徑。

按同樣的方法設置其他需要用到企業(yè)應用程序依賴 JAR 的本地文件路徑變量配置。如下圖:

2.? 共享庫配置

使用此頁面來定義可由已部署應用程序使用的容器范圍內(nèi)共享庫。具體操作選擇左邊菜單:環(huán)境-》共享庫,如下圖:

選擇新建操作,切換到共享庫配置頁面,輸入名稱、類路徑或本機路徑,其中設置類路徑的話使用到前面定義的路徑變量,如果設置本機路徑,則可以具體指定本地文件系統(tǒng)所在目錄的 jar 文件。輸入完畢點確定即可。如下圖:

系統(tǒng)提示是否保存,如下圖:

保存后,返回共享庫配置列表,配置好的共享庫,可以在以后的應用系統(tǒng)部署中使用到。如下圖:

JDBC 配置

該配置主要是配置企業(yè)應用系統(tǒng)所引用到 JNDI 數(shù)據(jù)源配置。常用到的配置有 JDBC 提供程序、數(shù)據(jù)源。

1.? JDBC 提供程序

使用此頁面來編輯 JDBC 提供程序的屬性。 JDBC 提供程序對象包括特定的 JDBC 驅動程序實現(xiàn)類,以便訪問環(huán)境中的特定供應商數(shù)據(jù)庫。具體操作:選擇左邊菜單-》 JDBC -》 JDBC 提供程序,如下圖:

選擇新建操作,系統(tǒng)切換到配置頁面,輸入名稱、類路徑或本機庫路徑、實現(xiàn)類名,以新建 ORACLE 提供 JDBC 程序為例,名稱為: Oracle JDBC Driver 、類路徑為: ${oracle_jdbc_driver_path}/ojdbc14.jar 或本機路徑為: C:\oracle\ora92\jdbc\lib\ojdbc14.jar 、實現(xiàn)類名為: oracle.jdbc.pool.OracleConnectionPoolDataSource ,其中 ${oracle_jdbc_driver_path} 為前面設置的 websphere 變量名稱,如下圖:

點確定,系統(tǒng)提示保存頁面,如下圖:

點保存后,系統(tǒng)返回 JDBC 提供程序列表,如下圖:

2.? 數(shù)據(jù)源配置

使用此頁面來編輯與所選 JDBC 提供程序相關聯(lián)的數(shù)據(jù)源設置。數(shù)據(jù)源對象為應用程序提供用于訪問數(shù)據(jù)庫的連接。具體操作:選擇左邊菜單-》資源-》 JDBC -》數(shù)據(jù)源,如下圖:

選擇新建,系統(tǒng)切換到數(shù)據(jù)源配置頁面。

第一步:輸入數(shù)據(jù)源名稱: oracle74 JNDI 名稱: jdbc/oracle74 ,點下一步,如下圖:

第二步:選擇 JDBC 提供程序:選擇現(xiàn)有的 JDBC 提供程序,從下拉列表中選擇 Oracle JDBC Driver ,點下一步,如下圖:

第三步:輸入數(shù)據(jù)源的特定于數(shù)據(jù)庫的屬性: URL 輸入: jdbc:oracle:thin:@10.243.194.73:1521:trustel ,點下一步,如下圖:

第四步:總結以上配置信息,點完成,如下圖:

點完成按鈕后,系統(tǒng)提示是否需要保存,如下圖:

點保存后,系統(tǒng)返回數(shù)據(jù)源列表,如下圖:

最后一步:定制數(shù)據(jù)源屬性,這部分比較關鍵,是初學者比較困惑的地方。我們看到,界面上并沒有輸入用戶名、口令的地方,而沒有用戶名稱、口令是無法連接數(shù)據(jù)庫的,為了成功連接數(shù)據(jù)庫,需要我們手工定制數(shù)據(jù)源的屬性。具體操作如下:

在數(shù)據(jù)源列表中,點擊選擇對應的數(shù)據(jù)源配置信息,系統(tǒng)切換到該配置源信息的頁面,如下圖:

點定制屬性,系統(tǒng)切換到屬性定制列表頁面,具體操作主要分幾步:

1.? 選擇 driverType ,值輸入 oracle.jdbc.driver.OracleDriver 如下圖:

確定后保存即可。

2.? 同樣得方法設置 databasename 的值 trustel servername 的值 10.243.194.74

3.? 其他值采用默認值。

4.? 設置 user ,點新建按鈕,系統(tǒng)切換到常規(guī)屬性定制頁面,名稱輸入 user ,值輸入 gmccadmin ,如下圖:

點確定之后保存。

5.? 同樣得方法設置 password 屬性。設置完畢之后,我們看到,“定制屬性”中多了兩個我們自定義的屬性 user password

返回數(shù)據(jù)源設置頁面,點測試連接,提示連接成功,如下圖:

?

WAS V61 中部署基于 Spring 的企業(yè) /WEB 應用

Spring 與底層 J2EE 應用服務器還是存在一些需要結合的地方,這里通過圖文并茂的方式給出 WAS 中的一些結合點,包括如何使用 WAS 的數(shù)據(jù)源、 JTA 事務管理、加載 Spring jar 包、部署基于 Spring web 應用。

使用 WAS 數(shù)據(jù)源

Java 應用程序中,數(shù)據(jù)庫的連接一般有兩種方式來得到。一種是通過 java.sql.DriverManager 的方式來得到數(shù)據(jù)庫連接。這種方式 不依賴于應用服務的支持,但是也不提供數(shù)據(jù)庫連接池的功能。另外一種方式是通過 javax.sql.DataSource 的方式來得到數(shù)據(jù)庫連接。在傳統(tǒng) 基于 J2EE 的應用需要通過 JNDI 來得到數(shù)據(jù)源( javax.sql.DataSource )對象,然后再通過數(shù)據(jù)源來得到相應的數(shù)據(jù)庫連接。常見的應 用服務器都支持這種方式,且一般都提供了數(shù)據(jù)庫連接池的支持。雖然說我們一般推薦使用數(shù)據(jù)庫連接池,但是也有一些時候我們需要脫離開應用服務器的環(huán)境使用 數(shù)據(jù)庫(比如單元測試,比如應用移植等)。然而應用程序使用這兩種方式的時候代碼是不一樣的,因此只能通過代碼來應變。 Spring 提供了一個統(tǒng)一使用數(shù) 據(jù)源的解決方案,然后通過控制反轉的機制用外部配置文件來指定使用的數(shù)據(jù)源。這樣一方面可以統(tǒng)一這兩種得到數(shù)據(jù)庫連接的方式,另一方面也不需要像通常的 J2EE 應用通過繁瑣的 JNDI 代碼來得到數(shù)據(jù)源。這樣應用程序也就不需要知道使用的何種數(shù)據(jù)源。

 ( 1 Spring 提供了一個 DriverManagerDataSource 類來統(tǒng)一第一種方式的數(shù)據(jù)源獲取。如果使用 WAS 中的 Cloudscape 數(shù)據(jù)庫,用外部配置文件可配置如下:

<bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource">

<property name="driverClassName">

<value>oracle.jdbc.driver.OracleDriver</value>

</property>

<property name="url">

<value>jdbc:oracle:thin:@10.243.194.73:1521:trustel </value>

</property>

</bean>

?  ( 2 Spring 提供了 JndiObjectFactoryBean 類來支持第二種方式的數(shù)據(jù)源獲取。對于部署在 WAS 上的 Web 應用,在生產(chǎn)環(huán)境中推薦使用 WAS 實現(xiàn)的數(shù)據(jù)庫連接池。一方面是因為連接池實現(xiàn)地比較完善。另一方面,使用 WAS 提供的 數(shù)據(jù)庫連接池可以很完善地支持 JTA 事務。在 12580 系統(tǒng)中,我們推薦使用這種方式連接數(shù)據(jù)源,如果使用環(huán)境發(fā)生變化,那么只需要修改 Spring 的配置文件即可。假設 WAS 中已經(jīng)配置好的數(shù)據(jù)源名稱為 jdbc /oracle ,那么我們?nèi)绾芜B接到 WAS 定義好的數(shù)據(jù)源呢?由于 Spring 無法直接從 JndiObjectFactoryBean 類獲取到 WAS 配置的數(shù)據(jù)源,我們只能先通過 WEB 應用利用目標資源 JNDI 名稱引用 WAS 的數(shù)據(jù)源,然后 Spring 再通過 WEB 應用獲取到 WAS 的數(shù)據(jù)源,從而實現(xiàn)了數(shù)據(jù)源的獲取。具體配置片斷如下:

web 應用的 web.xml 中配置如下:

?????? <resource-ref>

????????????? <res-ref-name>jdbc/oracle</res-ref-name>

????????????? <res-type>javax.sql.DataSource</res-type>

????????????? <res-auth>Container</res-auth>

?????? </resource-ref>

?????? spring 的配置文件 applicationContext.xml 中配置如下:

??? < bean id = "dataSource"

?????? class = "org.springframework.jndi.JndiObjectFactoryBean" >

?????? < property name = "jndiName" value = "java:comp/env/jdbc/oracle" />

?????? < property name = "lookupOnStartup" value = "false" />

?????? < property name = "cache" value = "true" />

?????? < property name = "proxyInterface" value = "javax.sql.DataSource" />

??? </ bean >

使用 WAS JTA

   Web 應用程序在使用事務的時候常常會涉 及一個事務類型的選擇。是選擇像 JDBC 事務這樣的本地事務呢還是使用 JTA 支持的全局事務。這個與應用程序需要涉及到的事務管理器類型和個數(shù)密切相關。 Spring 本身不支持分布式事務,因此分布式事務需要底層的 JTA 。但是 Spring 提供了事務的抽象,即底層真正事務實現(xiàn)可以切換而不影響應用程序代 碼。這樣應用程序可以依賴于底層 WAS ,也可以輕易地脫離開應用服務器的環(huán)境。這一點與前面數(shù)據(jù)源的抽象非常類似。因此在 12580 系統(tǒng)中也建議使用 WAS JTA 事務管理。

   WAS 本身對于事務劃分有兩種支持方式,一種是聲明式的,當然這種管理方式需要 EJB 容器的支持,即所謂的容器管理事務( CMT )。另外一種方式是編程式的,通過程序代碼 來直接使用 JTA 編程接口。 Spring 對于事務的劃分也可以分為聲明式和編程式兩種方式。對于 Spring 編程式的事務劃分方式,總體上可以分為兩大類。一類是通過直接使用實現(xiàn) PlatformTransactionManager 接口的類。另一類是通過使用 TransactionTemplate 模板類,模板類的使用可以簡化事務控制代碼。 Spring 對于聲明式事務劃分的支持實際上是利用了它的 AOP 機制。相對于編程式事務劃分,這種基于 AOP 的方式比較靈活,而且對代碼的侵入性幾乎為零。因此,如果沒有特殊需要推薦使用這種事務劃分方式。基于 AOP 的常用事務劃分方式可以使用 ProxyFactoryBean TransactionInterceptor 方式,或者使用 TransactionPorxyFactoryBean 的方式。前一種方式相對比較靈活,而后一種則對使用相對比較簡單。

  無論是哪一種事務劃分方式,底層都需要一個事務管理機制作為支撐。如果是單一的事務資源管理器,那么根據(jù)所使用的后臺事務管理資源不同的類型,可以選擇的 PlatformTransactionManager 實現(xiàn)有 DataSourceTransactionManager HibernateTransactionManager JdoTransactionManager PersistenceBrokerTransactionManager ,和 JmsTransactionManager 等。無論是單個還是多個事務資源管理器,都可以使用 JtaTransactionManager 類。如果使用 JtaTransactionManager ,那么所有事務管理實際都會委 托給底層應用服務器的 JTA 實現(xiàn)。

   使用 WAS JTA 支持,我們需要在 Spring 的配置文件 applicationContext.xml 配置如下:

<bean id="wasTxMgr"class="org.springframework.transaction.jta.WebSphereTransactionManagerFactoryBean" />

<bean id="transactionManager"class="org.springframework.transaction.jta.JtaTransactionManager><property name="transactionManager"><ref local="wasTxMgr" /></property></bean>

   通過采用 Spring 的事務支持,底層事務采用何種方式的決定就不必在一開始開發(fā)就做出決定。因為我們能夠通過 Spring 的外部配置文件來進行切換真 正的事務支持。不過,雖然也有第三方的 JTA 支持,但是 WAS 能夠提供非常穩(wěn)定的 XA 支持,因此推薦使用 WAS JTA ,尤其是當應用涉及到分布事務處理 的時候。這樣無論應用涉及幾個事務資源都可以統(tǒng)一解決。

如何加載 Spring JAR

Spring 架的核心 JAR 包是 spring.jar ,但是根據(jù)實際使用情況需要一些擴展 JAR 包和依賴 JAR 包。那在 WAS 中如何處理這些 JAR 包文件呢?在 Web 應用中一個簡單而直接的處理方式放是把這些使用到的 JAR 文件都拷貝到對應的 WEB-INF/lib 目錄下面。這種方法雖然簡單,但是當有多個 Spring 應用程序的時候這種處理方式就需要在每個應用的 WEB-INF/lib 目錄下都拷貝一份相同的 JAR 文件。這里可以通過共享庫的方式來統(tǒng)一解 決類庫共享這個問題。

  共享庫就是 WAS 專門用來解決不同應用程序之間共享 JAR 或本地庫文件的一種機制。共享庫由一個名字、一個 JAVA 類路徑和 / 或一個裝載 JNI 庫本地庫路徑組成。它可以分別在單元,節(jié)點和服務器級別定義。但是共享庫定義了并不意味著它會被裝載,只有當這個共享 庫與某個應用程序或應用服務器關聯(lián)之后,它才會被加載。如果一個共享庫與一個應用程序關聯(lián),那么這個共享庫由應用程序類加載器加載。如果一個共享庫與應用 服務器關聯(lián),那么這個共享庫就需要一個專門定義的類加載器來加載。這個類加載器需要用戶自己定義。其操作如下:選應用服務器比如 server1' 類加載器 ' 新建一個類加載器 ' 加載器與共享庫關聯(lián)。

  在創(chuàng)建這個類加載器之前一般都需要預先定義好共享庫。 根據(jù)上面的介紹可知,通過共享庫解決 Spring 應用的 JAR 包共享問題,主要就是兩個步驟。一是,把 Spring 應用中需要共享的 JAR 包定義成為一個 共享庫。二是,選定相應的 WAS 服務器實例,把它與上面創(chuàng)建的共享庫關聯(lián)起來。這樣此 WAS 服務器實例上的所有應用都能夠使用共享庫中定義的 JAR 包。使 用共享庫這種方式的時候要注意理解類的裝載次序和方式。如果是這種與 WAS 服務器實例關聯(lián)的共享庫 JAR 包,其類加載器在層次結構上在應用程序類加載器上 面,即是它的父加載器。

如何在 WAS 部署基于 Spring WEB 應用

要在 WAS 部署基于 Spring Web 應用,必須嚴格按照以上的配置來進行,配置完畢之后,必須將 Web 應用依賴到的 Jar 包加載到 WAS 的服務器中,加載 Jar 包的方式有兩種,一種是通過共享庫的方式來加載,一種則是直接將 Web 應用所依賴的 jar 包拷貝到 C:\IBM\WebSphere6.1\AppServer\lib\ext 目錄下,同時導出 WAR 文件。啟動 WAS ,打開管理控制臺,如下圖:

左邊菜單選擇應用程序-》安裝新的應用程序,在右邊的工作區(qū)頁面中選擇導出的 WAR 文件,輸入上下文根,如下圖:

點下一步,采用默認設置,一直到步驟 3 將資源引用映射至資源時,需要輸入 web 應用引用到的 WAS 的資源,如下圖:

點下一步采用默認設置,最后點完成, WAS 開始加載 Web 應用,如果加載成功,在提示如下頁面:

?

點保存后,通過左邊菜單應用程序-》應用程序查看已安裝的 Web 應用,發(fā)現(xiàn)是一個小紅×,這表示尚未啟動該 web 應用,如下圖:

勾上該 Web 應用,啟動它, WAS 最后提示啟動成功,如下圖:

查看后臺日志,發(fā)現(xiàn)該 web 應用中 Spring ContextLoader 初始化 WebApplicationContext 成功,同時加載了 applicationContext.xml 配置的所有 bean 資源、 O/R 映射、數(shù)據(jù)源連接等,啟動成功的日志片斷如下:

看到日志無日常,則表示 web 啟動成功,可以通過網(wǎng)頁訪問 web 應用,如下圖:

MyEclipse5 下配置 WAS V6.1

MyEclipse 為我們提供了在超過 20 幾種的不同應用服務器上無縫部署、執(zhí)行、測試 MyEclipse J2EE 應用的便利,然而,在 MyEclipse 上正確配置 WebSphere 6.1 應用服務器需要比配置其他應用服務器花費更多的時間,本文檔以圖文并茂的方式一步一步教你配置一個基于 MyEclipse WebSphere 服務器實例,同時將你開發(fā)的 web 應用通過 MyEclipse 快速的部署到 WAS 中。

通過 MyEclipse 的應用服務器連接器參數(shù)配置,你在 MyEclipse 直接控制本地的 J2EE 服務器實例,因此,對于 WASV6.1 來說,你需要重新建一個基于 MyEclipse 的應用服務器實例,具體操作如下。

新建 WAS 服務器實例

第一步:打開概要管理工具,如下圖:

?

概要文件管理工具啟動后,點下一步,選擇高級概要文件創(chuàng)建,如下圖:

點下一步,采用默認設置直到系統(tǒng)提示輸入概要文件名、概要文件目錄,輸入你喜歡的概要文件名、概要文件目錄,構選使用開發(fā)模板創(chuàng)建服務器,如下圖:

點下一步,輸入你喜歡的節(jié)點名稱,主機名一般不建議修改。如下圖:

點下一步,輸入你喜歡的管理控制臺帳號、密碼,如下圖:

點下一步,修改 WAS 的端口值,一般默認即可,如下圖:

采用建議的端口值之后,點下一步,記住哦,千萬不要作為 window 服務運行,省得無謂耗用自己電腦資源,如下圖:

點一下步,一般不需要創(chuàng)建 web 服務器創(chuàng)建,沒那個必要嘛,如下圖:

點下一步,最后點創(chuàng)建 WAS 服務器用例,等待成功中。

終于看到成功界面了,點完成即可。

修改 WAS 配置

該部分詳細描述了如何配置一個 WAS 開發(fā)實例使之能在 MyEclipse 中運行、部署、監(jiān)控日志等。

第一步:要想見到控制臺,當然要先啟動服務器。如下圖:

第二步:打開管理控制臺,用管理員帳號登錄,如下圖:

第三步:登錄成功后,需要對 server1 進行配置。具體操作如下,左邊菜單-》服務器-》應用服務器,如下圖:

第四步:現(xiàn)在為了保證 WAS 的輸入日志、錯誤提示能在 MyEclipse 中顯示,則需要對 server1 進行修改配置。如下圖:

點記錄和跟蹤-》 JVM 日志,如下圖:

將應用程序服務器 > server1 > 記錄和跟蹤 > JVM 日志中的 System.out 以及 System.err 文件名修改為 console ,如下圖:

點確定之后,保存即可,注銷退出,停掉 WAS 服務器。

MyEclipse 中配置 WAS

在配置 MyEclipse 之前,你需要確定新建 WAS 服務器實例之后的節(jié)點名稱、單元名稱,可以查看 WAS 目錄如下:

其中節(jié)點名為: gd12580 ,單元名稱為 lidNode03Cell ,在 myeclipse 中需要正確配置對應的名稱。具體配置如下:

第一步:啟動 myeclipse ,在 MyEclipse 運行 WAS 需要配置 IBM JDK 。找到 Window > Preferences >Java>Installed JREs ,如下圖:

add ,輸入 JRE name 、指向本地 websphere java home ,確定即可,如下圖:

第二步:找到 WebSphere 6.1 的連接器設置,在 Window > Preferences > MyEclipse > Application Servers > WebSphere 6.1 中, ? Once you have navigated to the WebSphere 6.1 preference window, first be sure to Enable the application server, then fill in the WebSphere installation location.? Most of the remaining fields will be defaulted for you. All of the fields should be straight forward, the only two that might be a little tricky are the Node Name and Server Name fields that are shown below. The Node Name field is the value you used during the Profile creation wizard, in our example it was gd12580 and the Cell Name is the directory name you had to lookup in the step above. When you are done, click the JDK node under the WebSphere 6.1 node on the left. Here we will configure the IBM JDK that MyEclipse will use to launch WebSphere. 不翻譯了,不懂的請拿金山詞霸出來照吧,如下圖:

配置成功之后的 was 服務器可以在 myeclipse 中看到,啟動,出現(xiàn)一下信息,則恭喜你,成功咯!如下圖:

MyEclipse 中部署 EAR/WAR

該部分主要描述在 MyEclipse 中部署 EAR WAR ,包括快速部署、熱部署等,具體細節(jié)在此不一一描述,有興趣的請參考 MyEclipse 的幫助。