J2EE應用程式的部署對於部署人員是一件很有意義的事情。現有的應用伺服器一般都支援基於Web,或熱部署,或透過部署工具的方式來完成應用程式的部署。 WebSphere Application Server 5.x提供了應用程式介面實作J2EE應用的部署與管理。
一、WebSphere部署概述
一般情況下,部署基於J2EE的應用需要做這樣幾件事情:首先,創建資料來源,其中需要指定JNDI名;其次,修改企業應用.ear文件的資源JNDI名和資源參考;第三,修改企業應用. ear檔案的EJB JNDI名稱和引用參考;第四,自動部署修改後的企業應用程式.ear檔案。最後,重起WebSphere伺服器。
這樣幾個步驟如果手工完成,在EJB組件不是很多、資源參考和引用參考不是很多的情況下,基本上能夠很快完成。但是,大家試想,如果同樣的一套應用程式要運行在同一個WebSphere應用伺服器上,而且其中的EJB元件、涉及的JNDI名修改和資源(引用)修改很多時,我們就需要藉助於程式自動完成整個過程了。借助於WebSphere提供的Java介面(基於JMX技術)能夠很好的處理其中的流程。這裡就根據部署過程給出大體過程(由於整個過程比較複雜,這裡只是給出主要思路)。
二、資料來源的自動創建
這個過程將主要涉及到這樣幾方面的內容:
第一:找出WebSphere伺服器上所具有的資料來源,看看其名稱是否和我們將要配置的有衝突。
第二:如果沒有,則我們程式建立所需的資料來源。
第三:如果待建立資料來源的JDBC ProvIDEr都不存在,則在第一、二步驟之前應該先建立。
透過這樣幾步過程,我們能夠實現資料來源的自動創建。
下面給出範例程式碼:
建立AdminClient:
定位現有的JDBC ProvIDEr:
儲存建立資料來源操作:
三、J2EE應用(.ear)的自動修改
這一部分一般可以透過以下步驟完成:
第一:修改JNDI相關內容。
第二:取得AppDeploymentTask任務。
第三:儲存AppDeploymentTask任務。
第四:修改web-context。利用JAXP、JDOM等都可以完成。
四、J2EE應用(.ear)的自動部署
這一部分一般可以透過以下步驟完成:
第一,實作NotificationListener。
第二,部署.ear應用程式。
實作NotificationListener:
這樣我們就實作了J2EE應用的自動部署。 ■