Enterprise Application and MyEclipse Project Overview
只有注冊用戶登錄后才能閱讀該文。閱讀全文posted @ 2007-08-23 13:24 youngturk 閱讀(104) | 評論 (0) | 編輯 收藏
posted @ 2007-08-23 13:24 youngturk 閱讀(104) | 評論 (0) | 編輯 收藏
posted @ 2007-08-10 11:23 youngturk 閱讀(107) | 評論 (0) | 編輯 收藏
轉換WebLogic EJB應用程序
在建立起使用MySQL的JBoss服務器之后,你現在必須把該WebLogic EJB應用程序轉換為JBoss EJB應用程序,這就涉及到部署文件的修改。WebLogic實體EJB應用程序由EJB部署文件(ejb-jar.xml、weblogic-ejb-jar.xml和weblogic-cmp-rdbms-jar.xml),bean類(CatalogBean.java)、遠程接口(Catalog.java)和home接口(CatalogHome.java)組成。為了在WebLogic服務器上部署實體EJB,需要建立一個EJB .jar文件,這個EJB .jar文件的結構如下:
META-INF/
ejb-jar.xml
weblogic-ejb-jar.xml
weblogic-cmp-rdbms-jar.xml
CatalogBean.class
Catalog.class
CatalogHome.class
EJB的結構信息和應用程序匯編信息都在部署文件中指定。結構信息包括說明EJB是對話EJB還是實體EJB。ejb-jar.xml部署文件中的應用程序匯編信息在assembly-descriptor元素中指定。WebLogic中該實體EJB部署文件包括ejb-jar.xml、weblogic-ejb-jar.xml和weblogic-cmp-rdbms-jar.xml。相應的JBoss部署文件是ejb-jar.xml、jboss.xml和jbosscmp-jdbc.xml。這些文件之間的轉換如下所示。
ejb-jar.xml部署文件對于WebLogic和JBoss來說都是一樣的,除了multiplicity元素之外。JBoss服務器的ejb-jar.xml中的multiplicity元素需要大寫,例如One或Many,而不是one或many。
示例實體EJB的ejb-jar.xml部署文件包含在示例代碼中。示例ejb-jar.xml定義了一個叫做"Catalog"的實體EJB。這個示例EJB擁有CMP字段catalogId、journal和publisher。其主鍵字段是catalogId。
把weblogic-ejb-jar.xml轉換為jboss.xml
weblogic-ejb-jar.xml和jboss.xml部署文件都是EJB廠商的特定部署文件。為了把WebLogic EJB應用程序部署到JBoss應用程序服務器上,必須把weblogic-ejb-jar.xml部署文件轉換為jboss.xml。
weblogic-ejb-jar.xml中的根元素是weblogic-ejb-jar。jboss.xml中的根元素是jboss。在jboss.xml和weblogic-ejb-jar.xml部署文件中指定某個EJB的JNDI名稱的元素是jndi-name或local-jndi-name。本文中的示例實體EJB的weblogic-ejb-jar.xml部署文件也包含在示例代碼中。weblogic-ejb-jar.xml部署文件的DOCTYPE元素是:
?。?DOCTYPE weblogic-ejb-jar PUBLIC
"-//BEA Systems, Inc.//DTD WebLogic 8.1.0 EJB//EN"
"http://www.bea.com/servers/wls810/dtd/weblogic-ejb-jar.dtd" >
jboss.xml部署文件的DOCTYPE是:
?。?DOCTYPE jboss PUBLIC "-//JBoss//DTD JBOSS 4.0//EN"
"http://www.jboss.org/j2ee/dtd/jboss_4_0.dtd">
我們通過一個自定義的XSLT樣式表jboss.xslt(包含在示例代碼中)把部署文件weblogic-ejb-jar.xml轉換為jboss.xml。該樣式表建立jboss.xml,它是與WebLogic的weblogic-ejb-jar.xml部署文件相當的JBoss文件。使用jboss.xslt樣式表所生成的jboss.xml文件也包含在示例代碼中。
把weblogic-cmp-rdbms-jar.xml轉換為jbosscmp-jdbc.xml
weblogic-cmp-rdbms-jar.xml部署文件指定了CMP實體EJB的數據庫持續信息。weblogic-cmp-rdbms-jar.xml文件包含實體EJB的表名稱、連接到數據庫的數據源和與該實體EJB CMP字段對應的列。示例實體EJB的weblogic-cmp-rdbms-jar.xml部署文件包含在可以下載的.zip文件中。指定CMP視圖EJB持續信息的JBoss部署文件是jbosscmp-jdbc.xml。
weblogic-cmp-rdbms-jar.xml的根元素是weblogic-rdbms-jar;jbosscmp-jdbc.xml的根元素是jbosscmp-jdbc。weblogic-cmp-rdbms-jar.xml文件中指定連接到數據庫的數據源的data-source-name元素與jbosscmp-jdbc.xml部署文件中的datasource元素功能相當。weblogic-cmp-rdbms-jar.xml指定實體EJB CMP字段與數據庫表的列之間映射關系的field-map元素與jbosscmp-jdbc.xml中的cmp-field元素功能相當。weblogic-cmp-rdbms-jar.xml中指定列名的dbms-column元素與jbosscmp-jdbc.xml中的column-name元素功能相當。weblogic-cmp-rdbms-jar.xml部署文件的DOCTYPE是:
<!DOCTYPE weblogic-rdbms-jar PUBLIC
'-//BEA Systems, Inc.//DTD WebLogic 8.1.0 EJB RDBMS Persistence//EN'
'http://www.bea.com/servers/wls810/dtd/weblogic-rdbms20-persistence-810.dtd'>
jbosscmp-jdbc.xml的DOCTYPE是:
<!DOCTYPE jbosscmp-jdbc PUBLIC "-//JBoss//DTD JBOSSCMP-JDBC 4.0//EN"
"http://www.jboss.org/j2ee/dtd/jbosscmp-jdbc_4_0.dtd">
我們使用自定義的XSLT樣式表jbosscmp-jdbc.xslt(包含在示例代碼中)把部署文件weblogic-cmp-rdbms-jar.xml轉換為jbosscmp-jdbc.xml。該樣式表建立jbosscmp-jdbc.xml,它是與WebLogic的weblogic-cmp-rdbms-jar.xml部署文件功能相當的JBoss文件。jbosscmp-jdbc.xml也包含下載在.zip文件中。
WebLogic部署文件的DTD與JBoss部署文件的不同。使用自定義的XSLT的時候,如果部署文件中還出現了一些額外的元素,可能還需要做進一步的修改,可以把WebLogic部署文件轉換為JBoss部署文件。在下面的部分中,我們將在JBoss服務器上部署這個EJB應用程序。
在JBoss中部署該EJB應用程序
把WebLogic EJB部署文件轉換為JBoss部署文件之后,你必須建立一個心的EJB .jar文件以部署到JBoss服務器上。該JBoss .jar文件的結構如下:
META-INF/
ejb-jar.xml
jboss.xml
jbosscmp-jdbc.xml
CatalogBean.class
Catalog.class
CatalogHome.class
編譯示例EJB類和接口:
java Catalog.java CatalogBean.java CatalogHome.java
把JBoss部署文件ejb-jar.xml、jboss.xml和jbosscmp-jdbc.xml復制到META-INF目錄中。使用jar工具從JBoss部署文件、類和接口中建立一個.jar文件。
jar cf CatalogEJB.jar CatalogBean.class
Catalog.class CatalogHome.class META-INF/*.xml
部署該JBoss實體EJB應用程序的過程是,把該.jar文件(EntityEJB.jar)復制到<JBoss>\server\default\deploy目錄(其中<JBoss>是JBoss安裝的目錄)中。當服務器啟動的時候,該EJB應用程序就在JBoss服務器上面部署好了。JBoss應用程序服務器中的部署(deploy)目錄與WebLogic應用程序服務器中的應用程序(applications)目錄對應。
結論
通過轉換部署文件可以把WebLogic中部署的實體EJB應用程序遷移到JBoss應用程序服務器上。使用相似的步驟,通過把weblogic.xml 部署文件轉換為jboss-web.xml ,也可以把WebLogic J2EE Web應用程序遷移到JBoss上。
posted @ 2007-08-08 17:05 youngturk 閱讀(251) | 評論 (0) | 編輯 收藏
posted @ 2007-08-08 17:02 youngturk 閱讀(1150) | 評論 (2) | 編輯 收藏
posted @ 2007-07-26 23:14 youngturk 閱讀(339) | 評論 (0) | 編輯 收藏
posted @ 2007-07-26 23:10 youngturk 閱讀(546) | 評論 (0) | 編輯 收藏
posted @ 2007-07-26 17:47 youngturk 閱讀(96) | 評論 (0) | 編輯 收藏
posted @ 2007-07-26 17:19 youngturk 閱讀(756) | 評論 (1) | 編輯 收藏
posted @ 2007-07-26 09:24 youngturk 閱讀(113) | 評論 (0) | 編輯 收藏