IBM Rational Web Developer for Windows 和 Linux 6.0 版移轉手冊
第 1 章 從 WebSphere Studio 5.1、5.1.1 或 5.1.2 移轉
第 2 章 從 Rational Web Developer 6.0 版更新 Web 專案的 Faces 執行時期資源
第 3 章 移轉 J2EE 專案
第 4 章 WebSphere 測試環境的變更
這份文件提供從 WebSphere(R) Studio Site Developer 5.1.x
版移轉至 Rational(R) Web Developer 6.0 版的指示。
其他資訊可於下列主題取得:
如果需要使用 Rational Web Developer 的相關資訊,請參閱線上說明。
請參閱 www.ibm.com/developerworks/rational,以取得更新的文件。
如果需要從舊版 WebSphere Studio 移轉至 5.x 版,或從 VisualAge(R)
for Java(TM) 移轉至 WebSphere Studio 的相關資訊,請移至 www.ibm.com/software/awdtools/studioappdev/support/,搜尋「移轉手冊」。
如果要從 WebSphere Studio 5.1.x 版移轉,請執行下列動作:
- 安裝之前,請先閱讀與 Eclipse 2.x 版和
WebSphere Studio 5.1.x 版的相容性的相關資料。 請注意,從
Portal Toolkit 5.0.2.2 版移轉的 Portlet
應用程式專案沒有與 WebSphere Studio 5.1.2 版的舊版相容性支援。
- 備份您的 WebSphere Studio 5.1.x 版工作區。
- 安裝 Rational Web
Developer。請參閱安裝手冊(install.html 檔),它在第一片產品
CD 的根目錄中。
- 建議:依預設,第一次啟動 Rational Web Developer
時,會提示您確認您要使用稱為 rationalsdp6.0\workspace
的工作區。也就是說,「工作區啟動程式」對話框會指向不是您的 WebSphere Studio
工作區的目錄。如果要在移轉舊工作區之前探索新環境,在啟動 Rational Web
Developer
時,請接受預設值,或指定某個其他新目錄名稱。您可能會這麼做,比方說,以便能夠建立一、兩個測試專案,閱讀新增功能的相關資訊(說明
-> 歡迎使用),執行某些新的指導教學(說明 ->
指導教學展示區),或體驗某些新範例(說明 ->
範例展示區)。
- 將專案移轉至 6.0 版。您可以依照下列方式,將 WebSphere Studio
5.1.x 版中所建立的專案自動移轉至 6.0 版:
- 移轉工作區:當您準備好永久移轉 5.1.x
版工作區時,請利用舊工作區來啟動 Rational Web
Developer。這時會出現一個進度指示器,確認正在自動移轉您的專案。
附註:在工作區移轉期間,會開啟問題對話框,其中含有下列訊息:無法還原工作台佈置。原因:還原工作台時,發生問題。這個錯誤訊息不會影響工作區的順利移轉。
請按一下錯誤對話框中的詳細資料按鈕來記下無法還原的視景名稱,再按一下確定來關閉對話框。
如果要還原視景,請執行下列動作:
- 選取視窗 -> 關閉視景來關閉視景
- 選取視窗 -> 開啟視景來重新開啟視景。
- 註:
- 對於在 WebSphere Studio 5.1.2 版中使用 EGL Web 視景的
Enterprise Generation Language (EGL) 專案:Rational Web Developer
6.0 版已移除了這個視景。所有 EGL 專案已在沒有這個視景的情況下,在
Rational Web Developer 6.0 版中安全移轉。如果您使用 EGL Web
視景,請執行下列動作:
- 關閉 EGL Web 視景。
- 在「喜好設定」中啟用 EGL 功能(視窗 ->
喜好設定)。請參閱線上說明,以取得啟用 EGL 功能的詳細資料。
- 選取視窗 -> 開啟視景,再選擇 Web 視景。
- 移轉從 SCM(原始碼管理)系統中載入的專案:當 SCM 系統中的
WebSphere Studio 5.1.x 專案載入 Rational Web Developer
時,會自動移轉至 6.0 版。
- 移轉利用專案交換匯入的專案:從 WebSphere Studio
5.1.2 或 5.1.1 匯出,再利用專案交換特性匯入
Rational Web Developer 6.0 版的專案會自動移轉至 6.0 版。
WebSphere Studio 5.1.2 版提供了專案交換特性,在
5.1.1 版中,它是一個選用的外掛程式。
附註:
- 對於每個移轉至 6.0 版的 5.1.x
版專案,移轉程式會自動將 .compatibility 檔新增至 6.0
版的專案資料夾中。 使用這個檔案是為了 WebSphere Studio 5.1.x
版的舊版相容性。請勿編輯或刪除這個檔案。請參閱與
WebSphere Studio 5.1.x 版的相容性一節,以取得詳細資訊。
重要事項:
- 如果您在移轉的工作區有相關的除錯啟動配置,您應該注意部分啟動配置不會自動移轉。
如果需要如何將啟動配置還原至已移轉的工作區的相關資訊,請參閱 6.0 版的除錯器變更。
- 如果您在已移轉的工作區中,在專案上使用 XSLT 除錯器或 EGL
除錯器,您必須變更 Rational Web Developer 6.0 版所安裝的 Java Run-time
Environment (JRE)。請參閱 6.0 版的除錯器變更,以取得如何進行這項變更的詳細資料。
- 如果您有利用已移轉至 6.0 版的 Enterprise Generation Language
來開發的程式,請注意,6.0 版有新的 EGL 保留字。
如果您在變數或組件名稱中使用這些單字,您就必須改變它們。請參閱 6.0 版中的 EGL 保留字
- Rational Web Developer 6.0 版不支援 DB2(R) Net JDBC
Driver。如果您利用 DB2 Net JDBC Driver 建立了 JDBC 連線,您將無法在 Rational
Web Developer 6.0 版中重新連線。您必須變更連線來使用其中一種支援的 JDBC
驅動程式。請參閱線上說明,以取得 6.0 版的 JDBC 驅動程式的詳細資訊。
- 如果您有從 WebSphere Studio Site Developer 5.1.x 版移轉的
Web 或 XML 檔使用 Shift_JIS 字集且包括供應商選取的字元,您必須另行指定
Windows-31J 字集。
- 如果您在 WebSphere Studio Site Developer 5.1.x
版中安裝了任何供應商外掛程式,您必須取得 6.0
版的對應外掛程式,再重新安裝它們。
- 如果您使用需要 Agent Controller 的特性,請安裝 Rational Web Developer
所提供的版本來升級它。 如果需要詳細資料,請參閱安裝手冊。
- 如果要從 VisualAge Generator 移轉,請參閱 VisualAge Generator to
Enterprise Generation Language (EGL) Migration Guide 一書, 您可以在
"Accessing the VisualAge Generator to EGL Migration Guide"
說明主題之下,在線上說明的 "Installing and migrating" 一節中找到它的 PDF
檔。您可以從 http://www.ibm.com/developerworks/rational/library/egldoc.html
取得最新的版本。
當您第一次在 Rational Web Developer 中開啟任何 WebSphere Studio
5.1.x 版工作區時,都會自動移轉它。移轉工作區之後,您就不能在
WebSphere Studio Site Developer
中開啟它。不過,您仍可以利用專案交換匯入和匯出專案來使用原始碼管理 (SCM)
系統(如 Rational ClearCase(R)), 或匯入保存檔和匯出專案,而與 WebSphere
Studio 5.1.x 版共用 6.0
版工作區中的專案。重要事項:已移轉至 Rational Web Developer
6.0 版之入口網站工具的 Portal Toolkit 5.0.2.2
版中的 Portlet 應用程式與舊版不相容。
- 註:
- 以下內容不適合 Portlet 應用程式專案。
如果您沒有執行下列中的任何動作,利用專案交換,從 SCM
系統或另一位開發人員載入 6.0 版的現有 5.1.x
版專案都是相容的,能夠與 5.1.x 版共用:
- 變更新增至
.project 檔中的相容性 Meta 資料和移轉工具所建立的
.compatiblity 檔。
- 從這些專案中刪除
.compatibility 檔。
當在 Rational Web Developer 6.0 版工作區中開啟 5.1.x
版專案時,會自動在專案目錄中建立 .compatibility
檔。當移轉這些資源時,Rational Web Developer 會利用
.compatibility 檔來追蹤專案資源的時間戳記。 您不應該編輯或刪除它。
如果需要停用與 WebSphere Studio Site Developer 5.1.x
版之相容性的相關資訊,請參閱停用與 WebSphere Studio 5.1.x 版的相容性。
Eclipse 考量
Rational Web Developer 的這個版本以 Eclipse 3.0 版為基礎。
如果您要開發您自己的外掛程式,您應該在移轉之前閱讀平台變更的相關資訊。
如果需要詳細資料,請參閱 Rational Web Developer 6.0 版安裝位置之
eclipse\readme 子目錄中的 Readme 檔。Readme
檔中有關移轉的章節如下:
J2EE 專案相容性
WebSphere Studio 5.1.x 版所建立之專案與 Rational Web
Developer 6.0 版的相容性是利用移轉 5.1.x
版工作區時自動新增至
.project 檔中的 Meta 資料來啟用的。同樣地,如果您在 Rational Web
Developer 6.0 版中建立新的 J2EE 1.2 或 1.3
模組或應用程式,建置 Meta 資料會自動新增至 .project 檔中,以便與
5.1.x 版相容。 請勿直接編輯或刪除這項資訊。
- 註:
- 當在 WebSphere Studio Site Developer 5.1.x 版中使用
6.0 版所建立的新 J2EE 1.2 和 J2EE 1.3
模組或應用程式,且沒有 6.0 版建置器時,這個相容性 Meta
資料會造成顯示或記載「遺漏建置器」的訊息。 這些訊息是正常的;您可以忽略它們。
只要這個相容性 Meta 資料存在,當在 WebSphere Studio 5.1.x
版中重新載入 Rational Web Developer 6.0
版專案時,都會出現「遺漏建置器」的訊息。 以下是「遺漏建置器」訊息的範例:
!ENTRY org.eclipse.core.resources 2 1 Sep 06, 2004 19:55:20.592
!MESSAGE 跳過 Test60EARWeb 專案的 com.ibm.wtp.j2ee.LibCopyBuilder 建置器。
可能是安裝時遺漏建置器,或是建置器所屬的專案本質遺漏或停用。
這些訊息是正常的;您可以忽略它們。當您確定已不需要在 WebSphere Studio
5.1.x 版中使用給定的專案時,您可以停用這個專案的舊版相容性來停止這則訊息。
重要事項:在 6.0 版中建立的新 J2EE 1.2 或
1.3 規格專案相容於 WebSphere Studio 5.1.x 版,但專案載入
WebSphere Studio
之後,您必須先手動執行一些步驟,之後,才能使用這個專案。這些步驟是必要的,因為在
6.0 中建立的新 J2EE 1.2 或 1.3
規格專案上的執行時期目標,不直接相容於舊的 5.1.x
版目標伺服器。以下是在 5.1.x 版中載入新的 6.0
版專案之後的手動步驟:
- 開啟每個有
.classpath 檔的 J2EE 專案的 .classpath 檔。
- 從 .classpath 檔中刪除下列類別路徑項目,再儲存和關閉檔案。
-
<classpathentry kind="con"
path="org.eclipse.jdt.launching.JRE_CONTAINER/
org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/WebSphere v5.1 JRE"/>
-
<classpathentry kind="con"
path="com.ibm.wtp.server.java.core.container/
com.ibm.etools.websphere.runtime.core.runtimeTarget.v51/was.base.v51"/>
- 確定已在 J2EE 喜好設定頁面中啟用鎖定目標伺服器支援。 選取視窗
-> 喜好設定 ->
J2EE,確認已在「鎖定目標伺服器支援」之下,選取啟用鎖定目標伺服器支援。
- 用滑鼠右鍵按一下專案,選取內容 -> J2EE。
- 選取專案執行時期目標的對應目標伺服器(如使用 JDK 1.4 執行時期環境的
WebSphere Application Server 5.1 版),再按一下確定。
- 您選取的目標伺服器將相容於 Rational Web Developer 6.0 版和
WebSphere Studio Site Developer 5.1.x 版。在 SCM
系統中確定變更之後,J2EE 專案就無法利用 SCM 系統在 5.1.x 版和
6.0 版之間交互作業。
- 註:
- 如果在 Rational Web Developer 6.0 版之中重新設定目標伺服器,將會失去
J2EE 專案相容性,必須重新建立。
您可以從 Rational Web Developer 6.0
版所建立的企業應用程式專案中,或從移轉自舊版 WebSphere Studio
的企業應用程式專案中,完全移除與 WebSphere Studio Site Developer
5.1.x 版的相容性。只有在確定企業應用程式專案應不再具有與
5.1.x 版交互作業或相容的功能時,您才應停用與 WebSphere Studio
5.1.x 版的相容性。
如果要移除與 WebSphere Studio Site Developer 5.1.x
版的相容性,請執行下列動作:
- 用滑鼠右鍵按一下企業應用程式專案,從蹦現視窗中選取移除相容性功能表選項。
- 這時會開啟一個對話框,要求您確認要移除企業應用程式專案以及這個專案之下的所有巢狀模組和公用程式專案的舊版相容性。
- 按一下是繼續執行「移除相容性」作業。
執行「移除相容性」作業之後,企業應用程式專案以及企業應用程式專案下的所有巢狀模組和公用程式專案都不再相容於
WebSphere Studio Site Developer 5.1.x 版。
原來在 WebSphere Studio Site Developer 5.1.x 版中所附的
JavaServer Faces 執行時期資源, 在 Rational Web Developer 6.0.1
版已更新。如果您要繼續在以這個舊產品版本建立的 Web 專案上進行開發,建議您將
Faces 執行時期資源更新到最新的層次。
在 Rational Web Developer 6.0.1 版中,當匯入的 Web
專案或開啟的工作區含有過期的資源時,Faces 執行時期資源即會自動更新。 在從
WebSphere Studio Site Developer 5.1.x 版匯入 Web
專案或開啟工作區至 Rational Web Developer 6.0.1
版之後,系統會提示您將 Faces 執行時期資源更新到最新的層次。
自動更新執行時期資源
若要自動更新 Web 專案的 Faces 執行時期資源,請執行下列動作:
- 從 WebSphere Studio Site Developer 5.1.x 版匯入含有 Faces
內容的 Web 專案(或工作區)。這時會開啟「專案移轉」視窗。
- 註:
- 如果「專案移轉」視窗未開啟,您的自動建置喜好設定可能已停用。請在專案瀏覽器中,
用滑鼠右鍵按一下 Web 專案,然後選取建置 ->
專案;重新建置專案的程序即會開啟「專案移轉」視窗。
- 如果工作區中有其他 Web 專案含有 Faces
內容,請勾選將這個選項套用到任何其他需要升級的專案,則所有的 Web
專案都會更新。
- 按下列其中一項:
- 是來自動完成更新。
- 稍後來延遲更新。在選取稍後之後,如果要自動更新執行時期資源,
您必須先關閉再重新開啟 Web 專案,或重新啟動工作台,才能重新建置 Web
專案。如果您已關閉自動建置, 請用滑鼠右鍵按一下 Web
專案,然後選取建置專案。
- 絕不來維持執行時期資源為舊版。
如果您選擇絕不並有意留在舊版的執行時期資源,
系統即不再提示您進行更新。將來您需要執行時期資源時,您必須手動加以更新。
- 註:
- 如果您建立了含有「Faces 用戶端」元件的 Faces JSP, 您必須將「Faces
用戶端」元件執行時期資源個別更新到最新的層次。請參閱更新 Web 專案中的 Faces 用戶端執行時期資源。
手動更新執行時期資源
若要手動更新 Web 專案的 Faces 執行時期資源,請執行下列動作:
- 將含有 Faces 內容的現有 Web 專案匯入 Rational Web Developer
6.0.1 版工作區。
- 建立名稱為 JSF601 的新 Web 專案(或者如果您使用的是
EGL,則建立新的 EGL Web 專案)。這個專案只會用來作為最新執行時期資源的來源;
其在更新完成之後即可刪除。
- 在專案瀏覽器中,用滑鼠右鍵按一下 JSF601
專案,然後從功能表中選取內容。
- 按一下 Web 專案特性,然後選取新增 Faces
基本元件和新增 Faces
用戶端組織架構,然後按一下確定。
- 如果您在使用 EGL,請依照下列方式來建立 JSF 頁面檔:
- 用滑鼠右鍵按一下新 EGL Web 專案的 WebContent 資料夾。
- 選取新建 -> 其他 -> Faces JSP
檔。
eglintdebug.jar 和
eglintdebugsupport.jar 檔會加入專案中。
- 對您要更新的每一個現有的 Faces 專案,執行下列動作:
- 在專案瀏覽器中,展開現有的專案來顯示 WebContent/WEB-INF/lib/
資料夾中的檔案。找出並刪除這個目錄中下列所有的 JAR 檔:
- eglintdebug.jar(限 EGL)
- eglintdebugsupport.jar(限 EGL)
- fda.jar(限 EGL)
- fdaj.jar(限 EGL)
- jsf-api.jar
- jsf-ibm.jar
- jsf-impl.jar
- odc-jsf.jar
- 找出並開啟 WebContent/WEB-INF/faces-config.xml
檔。將下列元素加入這個配置檔中(如果尚未存在):
<lifecycle>
<phase-listener>com.ibm.faces.webapp.ValueResourcePhaseListener</phase-listener>
</lifecycle>
<application>
<variable-resolver>com.ibm.faces.databind.SelectItemsVarResolver</variable-resolver>
<property-resolver>com.ibm.faces.databind.SelectItemsPropResolver</property-resolver>
</application>
- 對您已刪除的任何 JAR 檔,從 JSF601 專案的
WebContent/WEB-INF/lib 目錄中複製相同名稱的 JAR
檔,將它貼到原始專案的相同位置。 某些配置並不需要所有這些 JAR
檔都存在於專案中;如果特定的 JAR 檔不在原始專案中,請不要複製這些檔案。
- 開啟原始專案中的 web.xml 部署描述子,將下列內容加入配置中:
<context-param>
<param-name>com.ibm.ws.jsf.JSP_UPDATE_CHECK</param-name>
<param-value>true</param-value>
</context-param>
<context-param>
<param-name>com.ibm.ws.jsf.LOAD_FACES_CONFIG_AT_STARTUP</param-name>
<param-value>true</param-value>
</context-param>
- 如果原始專案是利用 WebSphere 資料物件 (WDO)
來進行任何資料存取,請執行下列其他步驟:
- 在原始專案中,按一下檔案 -> 新建 ->
Faces JSP 檔來建立新的暫時 Faces JSP 檔。
- 從選用區的資料抽屜中,將關聯式記錄清單元件拖曳至頁面中。
- 挑選任一連線和資料來源,然後按一下完成。
所選的資料並不重要。這個程序會產生任何必要的配置,以便繼續在這個專案中使用
WDO。
- 刪除暫時 JSP 檔。
- 如果您在使用 EGL,請用滑鼠右鍵按一下各 EGL Web
專案的名稱,再按一下產生;之後,如果您並未自動建置專案,請按一下專案
-> 全部建置。
- 刪除 JSF601 Web 專案。
原來在 WebSphere Studio Site Developer 5.1.x 版中所附的
JavaServer Faces 用戶端執行時期資源, 在 Rational Web Developer
6.0.1 版已更新。如果您要繼續在以這個舊產品版本建立的 Web
專案上進行開發,建議您將 Faces 用戶端執行時期資源更新到最新的層次。
在 Rational Web Developer 6.0.1 版中,當匯入的 Web
專案或開啟的工作區含有過期的資源時,Faces 用戶端執行時期資源即會自動更新。
在從 WebSphere Studio Site Developer 5.1.x 版匯入 Web
專案或開啟工作區至 Rational Web Developer 6.0.1
版之後,系統會提示您將 Faces 用戶端執行時期資源更新到最新的層次。
自動更新執行時期資源
若要自動更新 Web 專案的 Faces
用戶端執行時期資源,請執行下列動作:
- 從 WebSphere Studio Site Developer 5.1.x 版匯入含有 Faces
用戶端內容的 Web 專案(或工作區)。這時會開啟「專案移轉」視窗。
- 註:
- 如果「專案移轉」視窗未開啟,您的自動建置喜好設定可能已停用。請在專案瀏覽器中,
用滑鼠右鍵按一下 Web 專案,然後選取建置 ->
專案;重新建置專案的程序即會開啟「專案移轉」視窗。
- 如果工作區中有其他 Web 專案含有 Faces
用戶端內容,請勾選將這個選項套用到任何其他需要升級的專案,則所有的
Web 專案都會更新。
- 按下列其中一項:
- 是來自動完成更新。
- 稍後來延遲更新。在選取稍後之後,如果要自動更新執行時期資源,
您必須先關閉再重新開啟 Web 專案,或重新啟動工作台,才能重新建置 Web
專案。如果您已停用自動建置, 請用滑鼠右鍵按一下 Web
專案,然後選取建置專案。
- 絕不來維持執行時期資源為舊版。
如果您選擇絕不並有意留在舊版的執行時期資源,
系統即不再提示您進行更新。將來您需要執行時期資源時,您必須手動加以更新。
- 從 Web 專案的 Java 資源 -> JavaSource
資料夾中,刪除命名慣例為
com.ibm.dynwdo4jsmediators.<client-data-name>
的所有用戶端資料調節器類別套件。 請勿刪除名稱為
com.ibm.dynwdo4jsmediators
的套件。這個套件含有專案中用來重新產生調節器之用戶端資料的 Meta 資料(ecore 和
emap 檔)。
- 從 Web 專案的 Java 資源 -> JavaSource
資料夾中,開啟 OdysseyBrowserFramework.properties 檔,然後刪除
EMAP_FILES 和 ECORE_FILES 的項目。
- 對「用戶端資料」視圖中的每一個資料物件,執行下列動作:
- 按一下滑鼠右鍵來選取配置。
- 在進階標籤中,按一下從伺服器端資料重新產生來重新產生資料物件的所有調節器。
手動更新執行時期資源
若要手動更新 Web 專案的 Faces
用戶端執行時期資源,請執行下列動作:
- 完成更新 Web 專案中的 Faces 執行時期資源中的手動更新執行時期資源步驟。
- 完成上述自動更新執行時期資源一節的步驟 4-6。
將含有 Faces 用戶端元件之專案的目標伺服器從 WebSphere Application
Server 5.1 版改成 6.0 版時,可能會發生問題。
將含有 Faces 用戶端元件之專案的目標伺服器從 WebSphere Application Server
5.1 版改成 6.0 版時,可能會發生兩個問題:
- 已產生的用戶端資料調節器類別不會再編譯。 您必須一次處理一個 JSP
來重新產生:
- 開啟位於根 Java 程式檔資料夾中的 OdysseyBrowserFramework.properties
檔。 將內容儲存起來,供日後使用。
- 在 OdysseyBrowserFramework.properties 檔中,針對 Web 專案中含有
Faces 用戶端資料的每一個 JSP, 找出內容 EMAP_FILES 和 ECORE_FILES 的
<client-data-name>.ecore 與 <client-data-name>.emap
項目。
- 在 JSP 中只保留用戶端資料的相符項目,並刪除所有其他項目。
比方說,如果現行頁面有稱為 ACCOUNT
的用戶端資料,且您的內容檔有類似下列中的項目:
EMAP_FILES=com\\ibm\\dynwdo4jsmediators/account.emap com\\ibm\\dynwdo4jsmediators/orders.emap
您應該從項目中刪除
com\\ibm\\dynwdo4jsmediators/orders.emap。
這時項目應該看起來如下:
EMAP_FILES=com\\ibm\\dynwdo4jsmediators/account.emap
- 儲存內容檔。
- 在 JSP 中選取用戶端資料物件,然後按一下滑鼠右鍵來選取配置。
- 在進階標籤中,按一下全部重新產生。如此會重新產生現行
JSP 中所有用戶端資料所需的所有成品。
- 針對 Web 專案中含有用戶端資料的每一個 JSP,重複這些步驟 2-6。
- 在重新產生用戶端資料調節器類別之後,仍會留下一些調節器類別未編譯。這些是不再用於
6.x 版的「服務資料物件」(SDOs) 中之綱目元素的調節器,其命名慣例為
*_DataGraphSchema_wdo4js_*.java 和
*_RootDataObject_wdo4js_*.java。 請從 Web
專案中刪除這些調節器類別,以避免發生這些編譯錯誤。
- 在順利完成更新之後,還原 OdysseyBrowserFramework.properties
檔的原始內容。
- 在將專案的目標伺服器改成 WebSphere Application Server 6.0 版之後,
連結至 WDO 的樹狀視圖 Faces 用戶端元件即無法在該伺服器上執行。
暫行解決方法是修改 JSP 的程式碼視圖,將所有 className 標示都改成使用 SDO
DataObject 類別,而非 WDO DataObject 類別。比方說,針對名稱為
account 的 WDO:
- 將根物件的 className 標示從
className="com.ibm.etools.wdo.DataObject(DynWDO`account`RootDataObject)"
改成
className="commonj.sdo.DataObject(DynWDO`account`DataGraphRoot)"。
- 將所有子項節點的 className 標示從
className="com.ibm.etools.wdo.DataObject(DynWDO`account`ACCOUNT)"
改成
className="commonj.sdo.DataObject(DynWDO`account`ACCOUNT)",其中
ACCOUNT 是資料節點的名稱。
升級至自動化的 Diff 處理常式和處理器
Diff 處理器和處理常式現在會自動產生。如果您在 WebSphere Studio
5.1.x 版中撰寫 Faces 用戶端元件的 Diff 處理常式和處理器,
建議您捨棄該程式碼,改用自動產生的處理器和處理常式:
- 針對 Web 專案中的每一個用戶端資料物件,產生新的 Diff 處理常式和處理器。
- 選取用戶端資料物件,按一下滑鼠右鍵來選取配置。
- 在進階標籤中,按一下全部重新產生。
- 移除您撰寫來呼叫 Diff
處理器和處理常式的程式碼,原因是系統會自動呼叫產生的處理器和處理常式。使用這種程式碼的典型例子是「指令按鈕」元件的指令事件,如:
String Diff = getClientData1().getDiffStr();
if (DiffProcessor.Synch(getRoot(), Diff) == true)
return "";
return "failure";
- 從 Web 專案中移除您建立的舊自訂處理常式和處理器所對應的檔案。
保留對 5.1.x 版所撰寫的自訂 Diff 處理常式和處理器
雖然不建議您這麼做,但如果您決定需要保留 5.1.x 版的 Diff
處理常式和處理器, 您必須加以修改才能在 6.0 版中運作,因為 DiffHandler
介面和 DiffInfo 類別已變更。
- DiffHandler 介面已改變如下:
- handle 方法現在除了會擲出 DiffException,也會擲出 Exception。
- 新的 find 方法供組織架構用來尋找物件。
- 新的 getId 方法用來進行除錯,可讓組織架構列印物件的值。
find 和 getId 方法是在內部供產生的 DiffHandler 使用。對於您的自訂
DiffHandlers,您可以只是為了符合介面規格而實作空的方法。
組織架構不會呼叫這些方法。
現在,DiffHandler 介面是:
public interface DiffHandler
{
public void handle(DiffInfo Diff) throws DiffException, Exception;
public Object find (DiffInfo Diff) throws DiffException, Exception;
public String getId (DiffInfo Diff, boolean Original);
}
- DiffInfo 類別已改變如下:
- DiffInfo getParent() 方法已取代了 ArrayList getAncestors()
方法,它提供一種較簡單的方法來依遞迴方式存取上代樹狀結構中各個物件的資訊。
- getCurrent() 和 getOriginal() 方法現在會傳回 DataObject 物件,而不是
EObject 物件。您不一定要變更程式碼來使用 DataObject 物件。不過,相較於使用
EObject,DataObject 介面比較簡單,也比較符合直覺。 您可以很容易地將 DataObject
物件強制轉型成現有程式碼的 EObject 物件。
- 已新增新的 String getPropertyName() 方法來識別這個物件所適用的內容名稱。
當發生例如給定的類別有兩個同類型內容的情況時,這非常重要。 先前在 DiffInfo
類別中,程式碼無法區分這兩個內容。
現在,DiffInfo 類別如下:
public class DiffInfo
{
public char getCrud()
public DataObject getCurrent()
public String getEClassName()
public DataObject getOriginal()
public String getPropertyName()
public DiffInfo getParent()
}
- 註:
- 已不支援在公開用途上使用 DiffInfo 類別,因為現在會自動產生 Diff
處理器和處理常式。
保留舊的處理常式只是暫時的解決方案,強烈建議您使用自動化的處理常式。
6.0 版之 Faces 用戶端元件的變更
- WebSphere Application Server 6.0 版的支援。
- WebSphere Application Server 6.0 版上「服務資料物件」(SDO) 的支援。
- 現在,支援用戶端資料使用 EGL 資料。
- 會自動產生 Diff 處理器和處理常式。
- 下列元件有新的事件:
- TabbedPanel:onInitialPageShow
- Tree:onNodeExpand、onNodeCollapse、onExpand、onCollapse
- DataGrid:onPage、onSort、onFilter
針對 WebSphere Studio 5.1.x 版中建立的 Struts Web
專案,您必須稍微修改 Web 專案的部署描述子,才能在 WebSphere Application Server
6.0 版執行 EAR 專案。您可能也想要將現有的 Struts 1.0.2 或
Struts 1.1 測試版(2 或 3)Web 專案,手動轉換至 Struts 1.1。
修改現有 Struts Web 專案的部署描述子
當 Struts 專案是在 WebSphere Studio 5.x 版中建立時,Web
專案之部署描述子中的 config 參數 (<param-name>config</param-name>)
會設為 WEB-INF/struts-config.xml。WebSphere Application Server
6.0 版這個參數的開頭需要有 "/"。如果您在 WebSphere Application Server
6.0 版執行於 WebSphere Studio 5.1.x 版建立的 Struts Web
專案,您可能會在啟動 EAR 專案時收到
java.net.MalformedURLException 異常狀況。
- 註:
- Rational Web Developer 6.0 版會在建立新的
Struts 專案時加入 "/";不過,在從 WebSphere Studio 5.1x
版移轉時,必須手動加入。
請遵循下列步驟在 6.0 版中,更正 WebSphere Studio 5.1.x
版建立之 Struts Web 專案的部署描述子:
- 在「專案瀏覽器」中開啟 Struts Web 專案。
- 在「專案瀏覽器」中,按兩下 Web 專案的 Web 部署描述子檔。
這時會開啟 Web 部署描述子編輯器。
- 按一下程式碼標籤來開啟「程式碼」頁面。
- 變更下面這一行
<param-value>WEB-INF/struts-config.xml</param-value>(這位於
<servlet></servlet> 標示內)
to
<param-value>/WEB-INF/struts-config.xml</param-value>。
- 儲存 Web 部署描述子
當 EAR 專案重新啟動時,不應發生
java.net.MalformedURLException 異常狀況。
將 Struts 1.1 測試版 Web 專案轉換至 Struts 1.1
在 WebSphere Studio 5.1.x 版中,Struts 執行時期程式庫會從
5.0.x 版中的 Struts 1.1 測試版(2 或 3)逐步升級到 Struts
1.1(最終版)。 如果您有現有的 Struts 1.1 測試版(2 或 3)Web
專案,且要轉換至 Struts 1.1(最終版),您可能要手動轉換。
(附註:您不需要將 Struts 1.1 測試版(2 或 3)專案轉換至
Struts 1.1。)
若要將 Struts 1.1 測試版(2 或 3)專案轉換至 Struts
1.1,請執行下列動作:
- 將 Struts 1.1 測試版專案載入 Rational Web Developer 6.0
版工作區中。
- 建立新的 Struts 1.1 Web 專案,比方說,名稱為 Struts11。
您需要建立這個暫時專案,以便存取在轉換實際的專案時,所需的 Struts 1.1
執行時期檔案。完成之後,您可以刪除這個專案。
- 針對要轉換至 Struts 1.1 的 Struts 1.1
測試版專案,執行下列動作:
- 從您專案的 Web Content/WEB-INF/lib 目錄刪除下列 JAR 檔:
- commons-*.jar.
- struts.jar.
- 將下列 JAR 檔從 Struts11/WebContent/WEB-INF/lib 目錄複製到您專案的 Web
Content/WEB-INF/lib 目錄中:
- commons-*.jar.
- struts.jar.
- 從專案的 Web Content/WEB-INF 目錄刪除下列「標示庫描述子」(TLD)
檔案:struts-*.tld。
- 將下列 TLD 檔從 Struts11/WebContent/WEB-INF 目錄複製到專案的 Web
Content/WEB-INF 目錄中:struts-*.tld。
將 Struts 1.0.2 Web 專案轉換至 Struts 1.1
在 WebSphere Studio 5.1.x 版(和 5.0.x
版)中,當您新增 Struts 支援到 Web 專案時,您可以選擇 Struts
1.0.2。 如果您有現有的 Struts 1.0.2 Web
專案,且要轉換至 Struts 1.1,您可能要手動轉換。
(附註:您不需要將 Struts 1.1 測試版(2 或 3)專案轉換至
Struts 1.1。)
若要將 Struts 1.0.2 專案轉換至 Struts
1.1,請執行下列動作:
- 將 Struts 1.0.2 專案載入 Rational Web Developer 6.0
版工作區中。
- 建立新的 Struts 1.1 Web 專案,比方說,名稱為 Struts11。
您需要建立這個暫時專案,以便存取在轉換實際的專案時,所需的 Struts 1.1
執行時期檔案。完成之後,您可以刪除這個專案。
- 針對要轉換至 Struts 1.1 的 Struts 1.0.2
專案,執行下列動作:
- 從您專案的 Web Content/WEB-INF/lib 目錄刪除 struts.jar 檔。
- 將下列 JAR 檔從 Struts11/WebContent/WEB-INF/lib 目錄複製到您專案的 Web
Content/WEB-INF/lib 目錄中:
- commons-*.jar.
- struts.jar.
- jarkarta-oro.jar.
- 從您專案的 Web Content/WEB-INF 目錄刪除下列「標示庫描述子」(TLD)
檔案:struts-*.tld。
- 將下列 TLD 檔從 Struts11/WebContent/WEB-INF 目錄複製到您專案的 Web
Content/WEB-INF 目錄中:struts-*.tld。
Rational Web Developer 6.0 版的除錯工具有些改變。
您必須知道這些改變,您的專案才能在移轉之後使用這些工具。您可能需要變更或還原設定。
移轉工作區和啟動配置
當在 Rational Web Developer 6.0 版開啟 WebSphere Studio Site
Developer 的 5.1.x
版工作區時,不會自動移轉關聯於工作區的下列除錯器啟動配置:
- 在伺服器中除錯:先前利用「在伺服器中除錯」動作來建立的啟動配置不會移轉至
6.0 版。如果要啟動應用程式,以便在 6.0
版的伺服器中除錯,請重新選取應用程式,選擇在伺服器中除錯。
這會建立應用程式的新啟動配置。
- 伺服器連接:先前為了某項伺服器連接而建立的 WebSphere
Application Server 除錯啟動配置不會移轉至 6.0 版。WebSphere Application
Server 除錯啟動配置已不存在。 如果要執行在 6.0
版中除錯的伺服器連接,請利用在伺服器中除錯動作,再建立 5.x
的 WebSphere 第 5 版伺服器連接,或 6.0 的 WebSphere 6.0
版伺服器連接。
- SQLJ 除錯器:SQLJ 除錯啟動配置已不存在,先前所建立的 SQLJ
啟動配置不會移轉至 6.0 版。如果要啟動 SQLJ 程式,以便在 6.0
版中除錯,請利用 Java 應用程式啟動配置。
- 儲存程序除錯器:先前所建立的儲存程序除錯器啟動配置會移轉至
Rational Web Developer 6.0
版,且可供除錯啟動配置對話框使用。移轉之後,如果您使用「資料定義」視圖蹦現功能表中的除錯動作,便會自動建立新的啟動配置。
- 註:
- 如果您移轉含有儲存程序的工作區,再重新建置除錯的儲存程序,移轉後的儲存程序相關啟動配置將無法運作。
- EGL 除錯器:移轉工作區之後,您必須在現有 EGL
除錯器啟動配置上執行下列步驟:
- 修改已安裝的 Java Runtime Environment (JRE)
來指向正確的位置。在移轉工作區之後,它已安裝的 JRE 會指向舊版 WebSphere Studio
Site Developer 的 JRE。 如果要加以改變,請依照下列方式來指向新的 JRE 位置:
- 從工作台功能表中,選取視窗 -> 喜好設定。
- 在出現的喜好設定對話框中,展開 Java 節點,再選取已安裝的
JRE。
- 在右側中,將已安裝的 JRE 設成指向隨著本產品的現行版本而安裝的 JRE。 JRE
的位置是 Rational Web Developer 6.0 版安裝目錄的子目錄 \eclipse\jre。
- 在啟動配置中,在啟動之前選取程式碼標籤(如果無法執行這個動作,就會出現「找不到程式碼」的錯誤)。
如果您已在 5.1.x
版工作區將程式碼位置新增至啟動配置中,您必須用手動方式,將這些位置重新加入已移轉的啟動配置中。
- 編譯語言除錯器:移轉工作區之後,您必須執行下列步驟來處理現有的編譯語言除錯器啟動配置:
- 如果您已在已編譯的應用程式啟動配置的系統環境標籤中設定環境變數,您必須用手動方式,將它們重新加入已移轉的啟動配置中。
- 如果您已將程式碼位置新增至已編譯的應用程式或連接至執行中的程序啟動配置中,您必須用手動方式,將它們重新加入已移轉的啟動配置中。
「除錯」視圖
「儲存體」和「儲存體對映」視圖已不存在。「記憶體」和「記憶體呈現」視圖已取代了它們。
XSLT 除錯器
在 6.0 版中,XSLT
除錯器已有了改變,它的許多視圖和動作都有了大幅的變更。如果需要進一步的資訊,請參閱資訊中心的
XSLT 除錯器文件。
XSLT 除錯器最重要的變更之一,是相依於隨著 Rational Web Developer 6.0
版而安裝的 JRE。如果您移轉 WebSphere Studio Site Developer 5.1.x
版中的工作區,您必須先修改已安裝的 JRE 來指向正確的位置,之後,才能啟動它的
XSLT 除錯階段作業。如果要執行這個動作,您可以先執行下列動作之一:
- 執行下列步驟來變更整個工作區的 JRE,使它指向新的 JRE 位置:
- 從工作台功能表中,選取視窗 -> 喜好設定。
- 在「喜好設定」對話框中,展開 Java 節點,再選取已安裝的
JRE。
- 在右側中,將已安裝的 JRE 設成指向隨著本產品的現行版本而安裝的 JRE。JRE
的位置是 Rational Web Developer 6.0 版安裝目錄的子目錄 \eclipse\jre。
- 如果您要利用「除錯啟動配置」對話框來啟動除錯階段作業,您可以變更啟動配置的
JRE,使它指向新的 JRE 位置。
如果要執行這個動作,請在「除錯啟動配置」對話框中開啟啟動配置。
請選取 JRE 標籤,在替代的 JRE 欄位中,指定新的 JRE
位置。
如果您在 Web 專案中建立程式碼,且這個 Web 專案的目標是使用 WebSphere
資料物件 (WDO) 關聯式記錄或關聯式記錄清單的 WebSphere Application Server
5.1 版,當您將這些應用程式的目標鎖定 WebSphere Application Server
6.0 版時,現在,您會使用服務資料物件 (SDO)
關聯式記錄和關聯式記錄清單。當您將應用程式的目標伺服器從 WebSphere Application
Server 5.1 版改成 WebSphere Application Server 6.0 版時,WDO 至
SDO 的移轉作業會自動進行。
變更目標伺服器的方式有兩種:
- 您可以利用專案的內容對話框來修改目標伺服器。請在「專案瀏覽器」視圖中,用滑鼠右鍵按一下專案,選取專案
-> 服務 -> 目標伺服器。
- 在利用 J2EE 移轉精靈來進行 J2EE
移轉期間,您可以重設應用程式目標來使用另一個伺服器。
- 註:
- 您只能移轉至較高的 J2EE 規格層次。
請參閱 Rational Web Developer 的線上說明,以取得變更目標伺服器和使用 J2EE
移轉精靈的說明主題。
相容性考量
- 6.0 版支援任何根據 WDO Access Bean 的公用應用程式程式設計介面 (API)
來撰寫的程式碼(不過,實作類別已改成將目標鎖定 SDO 執行時期)。
- 為了 WebSphere Application Server 6.0 版而產生的新程式碼都不會使用
WDO Access Bean,而會產生純 SDO API 的程式碼。
- 任何針對專案而產生但目標鎖定 6.0 版的程式碼都不會在 5.1
版伺服器中執行,即使將目標重新鎖定伺服器來向後移轉也是如此。
- 為了 5.1 版而撰寫的程式碼可以將目標鎖定 5.1
版伺服器而向前或向後移轉。
從 WDO 移轉至 SDO 之後,可能會發生類型衝突錯誤
在利用 WDO 的專案移轉至 SDO 型的專案之後,如果您將 SDO 資料新增至含現有 WDO
資料的現有 JSP 頁面,就可能發生類型衝突的錯誤。 發生這個情況是因為混合了現有的
WDO Access Bean 和獨立式 SDO API。比方說,您可能會見到類似下列中的 JSP 之 Java
程式檔編譯錯誤:
import com.ibm.websphere.sdo.mediator.exception.MediatorException
與另一個匯入的類型衝突
您可以依照下列方式來更正這些類型衝突錯誤:
- 從 Java 程式檔中移除衝突的 import 陳述式。
當使用上述範例時,您會從程式檔中移除下列 import 陳述式:
import com.ibm.websphere.wdo.mediator.exception.MediatorException;
- 修改參照這個類型來使用完整類別名稱的 Java 程式檔。
根據上述範例,MediatorException 類型必須改成
com.ibm.websphere.wdo.mediator.exception.MediatorException。
比方說,撰寫成
catch ( MediatorException e1 ) {
的程式碼必須改成
catch ( com.ibm.websphere.wdo.mediator.exception.MediatorException e1 ) {
將目標伺服器從 5.1 版改成 6.0 版(WDO 至 SDO)之後的 Web
專案變更
當目標伺服器從 5.1 版改成 6.0 版時,會自動進行下列變更:
- 從專案中移除 Java 保存檔 (JAR) wdo_web.jar 和
wdo_jdbc_access.jar。
- 從專案的類別路徑中移除下列 JAR 檔:
- emf-runtime.jar
- emf-event.jar
- wdo-interface.jar
- wdo.jar
- jdbcmediator.jar
- wdo.xmlmediator.jar
- sdo_web.jar 和 sdo_access_beans.jar 檔會新增至專案中(SDO
執行時期 JAR 檔會自動新增至任何 6.0 版專案類別路徑中)。
- 從專案中移除任何 JavaServer Pages 標示庫 (JSTL) 1.0 JAR 檔。(JSTL
1.1/JSP 2.0 JAR 檔會自動新增至任何 6.0
版專案的類別路徑中)。
- 任何 Java 程式檔中的下列 import 陳述式都會改變:
- com.ibm.websphere.wdo.access.connections.ConnectionManager
改成
com.ibm.websphere.sdo.access.connections.ConnectionManager。
- com.ibm.websphere.wdo.mediator.rdb.ConnectionWrapper
改成
com.ibm.websphere.sdo.mediator.jdbc.ConnectionWrapper。
將伺服器目標從 6.0 版改成 5.1 版(SDO 至 WDO)之後的 Web
專案變更
當目標伺服器從 6.0 版改成 5.1 版時,會自動進行下列變更:
- 從專案中移除 JAR 檔 sdo_web.jar 和 sdo_access_beans.jar。
- 將 JAR 檔 wdo_web.jar 和 wdo_jdbc_access.jar 新增至專案中。
- 將下列 JAR 檔新增至專案的類別路徑中:
- emf-runtime.jar
- emf-event.jar
- wdo-interface.jar
- wdo.jar
- jdbcmediator.jar
- wdo.xmlmediator.jar
- 將 JSTL 1.0 JAR 檔新增至專案中。(從專案的類別路徑中移除 JSTL
1.1/JSP 2.0 JAR)。
- 任何 Java 程式檔中的下列 import 陳述式都會改變:
- com.ibm.websphere.sdo.access.connections.ConnectionManager
改成
com.ibm.websphere.wdo.access.connections.ConnectionManager。
- com.ibm.websphere.sdo.mediator.jdbc.ConnectionWrapper
改成
com.ibm.websphere.wdo.mediator.rdb.ConnectionWrapper。
將應用程式的 J2EE 層次從 1.3 改成 1.4 之後的 Web
專案變更
除了將伺服器目標改成 WebSphere Application Server 6.0 版時,從 WDO
移轉至 SDO 所發生的變更之外,將應用程式的 J2EE 規格層次從 1.3 改成
1.4,會將 JavaServer Pages (JSP) 中的任何標示庫 (taglib) 參照從使用
WDO、JSTL 1.0 標示庫改成使用 SDO、JSTL 1.1/jsp 2.0
標示庫。下表顯示從 J2EE 1.3 移至 J2EE 1.4 時,JSP taglib
參照中的變更。
表 1. J2EE 1.3 和 J2EE 1.4 中的 JSP taglib 參照。
| J2EE 1.3 taglib (WDO)
| J2EE 1.4 taglib (SDO)
|
| http://www.ibm.com/websphere/wdo/core
| http://www.ibm.com/websphere/sdo/core
|
| http://java.sun.com/jstl/core
| http://java.sun.com/jsp/jstl/core
|
| http://java.sun.com/jstl/fmt
| http://java.sun.com/jsp/jstl/fmt
|
| http://java.sun.com/jstl/xml
| http://java.sun.com/jsp/jstl/xml
|
| http://java.sun.com/jstl/sql
| http://java.sun.com/jsp/jstl/sql
|
這些是 Enterprise Generation Language (EGL) 在 Rational Web Developer
中的新保留字。
下列為新的保留字:
- as
- isa
- like
- matches
- money
- openUI
- ref
- self
- string
- this
在利用這些單字作為變數或組件名稱的 6.0 版工作區中匯入和建置的
WebSphere Studio 5.1.x 版 EGL
程式,都會標示下列訊息:IWN.SYN.2002.e 39/2 輸入
"variableName" 語法錯誤。您可以重新命名變數來更正這個問題。
原來在 Rational Web Developer 6.0 版中所附的 JavaServer Faces 和
Faces 用戶端執行時期資源, 在 Rational Web Developer 6.0.1
版已更新。如果您要繼續在以這個舊產品版本建立的 Web 專案上進行開發,建議您將
Faces 和 Faces 用戶端執行時期資源更新到最新的層次。
在 Rational Web Developer 6.0.1 版中,當匯入的 Web
專案或開啟的工作區含有過期的 Faces 或 Faces 用戶端執行時期資源時,Faces 和
Faces 用戶端執行時期資源即會自動更新。 在從 Rational Web Developer 6.0
版匯入 Web 專案或開啟工作區至 Rational Web Developer 6.0.1
版之後,系統會提示您將這些執行時期資源更新到最新的層次。
自動更新執行時期資源
若要自動更新 Web 專案的 Faces 和 Faces
用戶端執行時期資源,請執行下列動作:
- 從 Rational Web Developer 6.0 版匯入含有 Faces 或 Faces
用戶端內容的 Web 專案(或工作區)。 這時會開啟「專案移轉」視窗。
- 註:
- 如果「專案移轉」視窗未開啟,您的自動建置喜好設定可能已停用。請在專案瀏覽器中,
用滑鼠右鍵按一下 Web 專案,然後選取建置 ->
專案;重新建置專案的程序即會開啟「專案移轉」視窗。
- 如果工作區中有其他 Web 專案含有 Faces 或 Faces
用戶端內容,請勾選將這個選項套用到任何其他需要升級的專案,則所有的
Web 專案都會更新。
- 按下列其中一項:
- 是來自動完成更新。
- 稍後來延遲更新。在選取稍後之後,如果要自動更新執行時期資源,
您必須先關閉再重新開啟 Web 專案,或重新啟動工作台,才能重新建置 Web
專案。如果您已停用自動建置, 請用滑鼠右鍵按一下 Web
專案,然後選取建置專案。
- 絕不來維持執行時期資源為舊版。
如果您選擇絕不並有意留在舊版的執行時期資源,
系統即不再提示您進行更新。將來您需要執行時期資源時,您必須手動加以更新。
手動更新執行時期資源
若要手動更新 Web 專案的 Faces 和 Faces
用戶端執行時期資源,請執行下列動作:
- 建立名稱為 JSF601 的新 Web 專案(或者如果您使用的是
EGL,則建立新的 EGL Web 專案)。這個專案只會用來作為最新執行時期資源的來源;
其在更新完成之後即可刪除。
- 在專案瀏覽器中,用滑鼠右鍵按一下 JSF601
專案,然後從功能表中選取內容。
- 按一下 Web 專案特性,然後選取新增 Faces
基本元件和新增 Faces
用戶端組織架構,然後按一下確定。
- 如果您在使用 EGL,請依照下列方式來建立 JSF 頁面檔:
- 用滑鼠右鍵按一下新 EGL Web 專案的 WebContent 資料夾。
- 選取新建 -> 其他 -> Faces JSP
檔。
eglintdebug.jar 和
eglintdebugsupport.jar 檔會加入您的專案中。
- 對您要更新的每一個現有的 Faces 專案,執行下列動作:
- 在專案瀏覽器中,展開現有的專案來顯示 WebContent/WEB-INF/lib/
資料夾中的檔案。找出並刪除這個目錄中下列所有的 JAR 檔:
- eglintdebug.jar(限 EGL)
- eglintdebugsupport.jar(限 EGL)
- fda6.jar(限 EGL)
- fdaj6.jar(限 EGL)
- jsf-api.jar
- jsf-ibm.jar
- jsf-impl.jar
- odc-jsf.jar
- 對您已刪除的任何 JAR 檔,從 JSF601 專案的
WebContent/WEB-INF/lib 目錄中複製相同名稱的 JAR
檔,將它貼到原始專案的相同位置。 某些配置並不需要所有這些 JAR
檔都存在於專案中;如果特定的 JAR 檔不在原始專案中,請不要複製這些檔案。
- 如果您在使用 EGL,請用滑鼠右鍵按一下各 EGL Web
專案的名稱,再按一下產生;之後,如果您並未自動建置專案,請按一下專案
-> 全部建置。
- 刪除 JSF601 Web 專案。
Rational Web Developer 6.0 版的 J2EE 移轉精靈已更新,以便將 J2EE
專案移轉至 J2EE 1.4 規格層次。J2EE 移轉精靈支援將所有的 J2EE
模組類型,從 J2EE 1.2 和 1.3 這兩個規格移轉至 J2EE 1.4
規格層次。
請參閱 J2EE 1.3 至 1.4 規格層次移轉和 J2EE 1.2 至 1.4 規格層次移轉,以取得將 J2EE 1.3 和 1.2
規格層次成品移轉至 J2EE 1.4 規格層次的詳細資料。
- 註:
- 在使用 J2EE 移轉精靈之前,強烈建議您執行下列步驟:
- 備份整個工作區。
- 如果您使用某個共用儲存庫,請移出或鎖定所有對應的專案。
您可以依照下列方式來存取 J2EE 移轉精靈:
- 在 J2EE 視景的 J2EE
階層視圖中,用滑鼠右鍵按一下您要移轉的企業應用程式專案。
- 從蹦現功能表中,選取移轉 -> J2EE 移轉精靈。
- 在繼續移轉程序之前,遵循 J2EE 移轉精靈「歡迎使用」頁面中的指示。
附註:
- 移轉安全 Web 服務(J2EE 1.3 至
1.4)需要手動移轉來安全連結和延伸規格檔。請參閱移轉安全 Web 服務,以取得詳細資料。
請參閱線上說明,以取得使用 J2EE 移轉精靈的完整詳細資料。Rational Web Developer 6.0 版中 J2EE 移轉精靈的變更有精靈的變更說明。
請參閱 J2EE 1.3 至 1.4 規格層次移轉和 J2EE 1.2 至 1.4 規格層次移轉,以取得 J2EE 1.3 和 1.2
規格層次成品移轉至 J2EE 1.4 時所進行之變更的詳細資料。
當 Web 服務從 J2EE 1.3 移轉至 J2EE 1.4 時,J2EE
移轉精靈不會移轉安全 Web 服務。安全 Web 服務的移轉作業需要手動步驟。
在 J2EE 移轉之後,您必須依照下列方式,將安全連結和延伸規格檔手動移轉至 J2EE
1.4:
- 按兩下 webservices.xml 檔來開啟 Web 服務編輯器。
- 選取連結配置標籤來編輯連結檔。
- 在新的區段要求消費者連結配置詳細資料和回應產生者連結配置詳細資料之下,新增所有必要的連結配置。
- 選取延伸規格標籤來編輯延伸規格檔。
- 在新的區段要求消費者服務配置詳細資料和回應產生者服務配置詳細資料之下,新增所有必要的延伸規格配置。
- 儲存和結束編輯器。
J2EE 專案可以從 J2EE 1.3 移轉至 J2EE 1.4 規格層次。這一節說明
J2EE 移轉精靈從 J2EE 1.3 移轉至 J2EE 1.4 的各類型 J2EE
專案的成品。
當 J2EE 1.3 層次的 Web 專案移轉至 J2EE 1.4 時,J2EE
移轉精靈會移轉 Web 部署描述子的成品。
會移轉的 Web 應用程式成品如下:
鑑別限制
J2EE 1.4 包含一個 Description
物件,它有兩個屬性:language 和 value。J2EE 1.3
沒有這個 Description 物件;description 是鑑別限制的屬性。因此,當 Web
部署描述子的成品移轉至 J2EE 1.4 時,Description 物件的 value
會取自鑑別限制的 description 屬性。
安全限制
同樣地,在 J2EE 1.3 中,description 也是安全限制的屬性。在 J2EE
1.4 中,有一個新的 Description 物件,它含有 language 和
value 屬性。因此,Description 物件的 value
會取自安全限制的 description 屬性。
Web 應用程式
J2EE 1.3 規格層次之 ContextParam 物件的說明字串屬性已移至 J2EE
1.4 之 ParamValue 中的 Description 物件。
J2EE 1.3 中的 TagLib 物件已移至 J2EE 1.4 中的 JSPConfig
物件。JSPConfig 物件屬於 1.3 中的 Web 根物件。
J2EE 移轉精靈會將 J2EE 連接器架構 (JCA) 1.0 描述子的成品移轉至 JCA
1.5。 移轉後的成品會和 ResourceAdaptor
物件的元素相關,因為有兩個新物件(OutboundResourceAdaptor 和
ConnectionDefinition)已加入連接器專案之 J2EE 1.4 規格層次的
ResourceAdaptor 物件中。
已移轉之元素的對映說明如下。
- 下列元素會從 ResourceAdaptor 物件移至 OutboundResourceAdaptor 物件:
- reauthenticationSupport
- transactionSupport
- 下列元素會從 ResourceAdaptor 物件移至 ConnectionDefinition 物件:
- managedConnectionFactoryClass
- connectionFactoryInterface
- connectionFactoryImplClass
- connectionInterface
- connectionImplClass
- outboundResourceAdaptor 物件包含一份 ConnectionDefinition
定義清單。因此,ConnectionDefinition 會加入 OutboundResourceAdaptor 所保留的
ConnectionDefinition 清單中。
- OutboundResourceAdaptor 物件包含在 ResourceAdaptor 物件中。
- JCS 1.5 的 AuthenticationMechanism 物件已經過一些變更,其中
customAuthMechType 元素已被 authenticationMechanism 取代,authenticationType
元素則被 authenticationMechanism 取代
- ResourceAdaptor 物件中的 description 屬性已被 Description 物件取代,其中
description 屬性字串設為下列物件之 Description 物件中的 value 元素:
- SecurityPermission
- AuthenticationMechanism
- ConfigurationProperties
J2EE 1.4 規格透過新的 JAX-RPC 1.0 API 增加了 Web 服務的支援。
JAX-RPC API 透過下列項目支援服務端點:
- 含 JAXR-RPC 的 Servlet
- 含直接 SOAP 的 Servlet
- Stateless Session Bean
J2EE 1.4 規格支援 J2EE 規格 (JSR 109) 的 Web 服務。JSR 109 定義了
Web 服務的部署需求並利用 JAX-RPC 程式設計模型。
利用 J2EE 移轉精靈移轉的 Web 服務成品如下:
- Web 服務描述子
- Web 服務用戶端描述子
- JAX-RPC 對映描述子
移轉 Web 服務部署描述子
移轉至 J2EE 1.4 規格層次的 J2EE 1.3 專案所包含的任何 Web
服務部署描述子都會從 JSR-109 1.0 版(用於 J2EE 1.3)移轉至 J2EE
1.4。
JSR-109 1.0 版所定義的 Web 服務部署描述子是由 webservices.xml
檔、webservicesclient.xml 檔,以及 webservices.xml 和
webservicesclient.xml 檔所參照的所有 JAX-RPC 對映部署描述子所組成。
如同其他 J2EE 部署描述子,移轉作業會修改描述子中所包含的資訊結構,以符合 J2EE
1.4 規格。Web
服務部署描述子特有的一項結構變更是完整名稱表示方式的改變。 在 JSR-109
1.0 版中,完整名稱是使用兩個連續的元素 <namespaceURI>
和 <localpart> 來表示,其分別包含名稱的名稱空間 URI
和本端部分。J2EE 1.4 中的完整名稱是以 XMLSchema QName 類型(使用 XML
名稱空間)為基礎。
以下提供移轉各 Web 服務部署描述子的進一步的詳細資料。
- Web 服務描述子 (webservices.xml)
webservices.xml 部署描述子在包含 J2EE Web 服務的 Web
專案中。<wsdl-port> 元素和 <soap-header>
元素都包含完整名稱, 且其內容會移轉成 J2EE 1.4 格式。
比方說,如果 <wsdl-port>
在移轉之前的表示法如下:
<wsdl-port>
<namespaceURI>http://addressbook.webservice</namespaceURI>
<localpart>AddressBook</localpart>
</wsdl-port>
移轉之後,<wsdl-port>
的表示法如下:
<wsdl-port xmlns:pfx="http://addressbook.webservice">pfx:AddressBook</wsdl-port>
"pfx" 字首用來作為所有已移轉的完整名稱之名稱空間字首。
- Web 服務用戶端描述子 (webservicesclient.xml)
webservicesclient.xml 部署描述子在包含 J2EE Web 服務用戶端的 J2EE
1.3 Web 專案及應用程式用戶端專案中。在從 J2EE 1.3 移轉至
1.4 的期間,webservicesclient.xml
的內容會移轉並移至專案的部署描述子。所發生的程序如下:
- 如果是 Web 專案,webserivcesclient.xml 中的所有
<service-ref> 元素都會移至 web.xml 的
<web-app> 元素之下。
- 如果是應用程式用戶端專案,webservicesclient.xml 中的所有
<service-ref> 元素都會移至 application-client.xml 的
<application-client> 元素之下。
- Webservicesclient.xml 會被刪除。
<service-qname> 元素和 <soap-header>
元素都包含完整名稱,且其內容會移轉成 J2EE 1.4 格式。比方說,如果
<service-qname>
在移轉之前的表示法如下:
<service-qname>
<namespaceURI>http://addressbook.webservice</namespaceURI>
<localpart>AddressBookService</localpart>
</service-qname>
移轉之後,<service-qname>
的表示法如下:
<service-qname xmlns:pfx="http://addressbook.webservice">pfx:AddressBookService</service-qname>
"pfx" 字首用來作為所有已移轉的完整名稱之名稱空間字首。
- JAX-RPC 對映描述子
webservices.xml 和 webservicesclient.xml
部署描述子都可以參照一或多個 JAX-RPC 對映部署描述子。
在 webservices.xml 檔中,這些參照是包含在每個
<webservice-description> 元素之下的
<jaxrpc-mapping-file> 元素中。在 webservicesclient.xml
檔中,這些參照是包含在每個 <service-ref> 元素之下的
<jaxrpc-mapping-file> 元素中。
在從 J2EE 1.3 移轉至 1.4 的期間,webservices.xml 和
webservicesclient.xml 中所有的 JAX-RPC
對映部署描述子都會被移轉。移轉作業包括將所有完整名稱移轉成 J2EE 1.4
格式(請參閱上節的 webservices.xml 和
webservicesclient.xml,以取得移轉後的完整名稱範例)。
J2EE 模組可以從 J2EE 1.2 規格層次移轉至 J2EE 1.4。這一節說明
J2EE 移轉精靈從 J2EE 1.2 移轉至 J2EE 1.4 規格層次的 J2EE
專案成品。
如果需要使用 J2EE 移轉精靈的詳細資料,請參閱第 3 章, 移轉 J2EE 專案。
當 J2EE 1.2 Web 專案移轉至 J2EE 1.4 規格層次時,J2EE
移轉精靈會移轉 Web 部署描述子的成品。
會移轉的 Web 應用程式成品如下:
鑑別限制
J2EE 1.4 包含一個 Description
物件,它有兩個屬性:language 和 value。J2EE 1.2
沒有這個 Description 物件;description 是鑑別限制的屬性。因此,當 Web
部署描述子的成品移轉至 J2EE 1.4 時,Description 物件的 value
會取自鑑別限制的 description 屬性。
安全限制
同樣地,在 J2EE 1.2 中,description 也是安全限制的屬性。在 J2EE
1.4 中,有一個新的 Description 物件,它含有 language 和
value 屬性。因此,Description 物件的 value
會取自安全限制的 description 屬性。
Web 應用程式
J2EE 1.2 規格層次之 ContextParam 物件的說明字串屬性已移至 J2EE
1.4 之 ParamValue 中的 Description 物件。
J2EE 1.2 中的 TagLib 物件已移至 J2EE 1.4 中的 JSPConfig
物件。JSPConfig 物件屬於 1.2 中的 Web 根物件。
Rational Web Developer 6.0 版中的 J2EE 移轉精靈(適用於所有 J2EE
規格層次之移轉作業)已有所變更。
專案結構的移轉是選用的
在 WebSphere Studio 5.1.x 版到 5.1.2
版,專案結構的移轉會和 J2EE 規格層次的移轉同時發生。在移轉 J2EE
規格層次時,專案結構的移轉並不是選用項目。
在 Rational Web Developer 6.0 版的 J2EE
移轉精靈中,移轉專案結構是一個與移轉專案 J2EE
規格層次分開的選用選項。J2EE 規格層次和專案結構都可以獨立移轉。
需要目標伺服器
在 Rational Web Developer 6.0 版中,如果要將新的和現有的 J2EE
專案移轉至較高的 J2EE 規格層次,專案需要設定目標伺服器。
鎖定目標伺服器是如何在 6.0 版的 J2EE 專案上設定類別路徑的預設機制。
如果需要設定目標伺服器和使用 J2EE 移轉精靈的資訊,請參閱線上說明。
在 Rational Web Developer 6.0 版中,產品所包含的 WebSphere
Application Server 測試環境已變更,與舊版的 WebSphere Studio Site Developer
所包含者有所不同。
以下是 Rational Web Developer 6.0 版 WebSphere Application Server
測試環境的變更摘要:
- WebSphere Application Server 4.x
版伺服器不再是支援的測試環境。不過,您仍可以手動匯出和部署 J2EE 1.2
規格層次的應用程式,以在遠端 4.x 版伺服器中進行測試。
- WebSphere Application Server 6.0
版伺服器已新增為可安裝的測試環境。其支援執行 J2EE 1.4
規格層次的應用程式。
下表顯示不同版本的 WebSphere Studio Site Developer 和 Rational Web
Developer 所包含的 WebSphere Application Server 測試環境層次。
表 2. WebSphere Studio Site Developer 和 Rational Web Developer 中的 WebSphere Application Server 測試環境
| WebSphere Application Server 4.x 版 AE
| WebSphere Application Server 5.x 版 Base
| WebSphere Application Server Express 5.x 版
| WebSphere Application Server 6.0 版
|
| WebSphere Studio Site Developer 5.1 版
| 4.0.6 版
| 5.0.2 版
| 5.0.2 版
| N/A
|
| WebSphere Studio Site Developer 5.1.1 版
| 4.0.7 版 + PQ78374
| 5.0.2 版 + PQ78374 +PQ78419,5.1 版
| 5.0.2 版和 5.1 版
| N/A
|
| WebSphere Studio Site Developer 5.1.2 版
| 4.0.7 版 + PQ78374
| 5.0.2 版 + PQ78374 + PQ78419,5.1.0.3
版
| 5.0.2 版和 5.1.0.3 版
| N/A
|
| Rational Web Developer 6.0 版
| N/A
| 5.0.x 版,5.1.1 版
| 5.0.2 版和 5.1.1 版
| 6.0 版
|
版權和注意事項