IBM Rational Web Developer for Windows 和 Linux 6.0 版移轉手冊


目錄

第 1 章 從 WebSphere Studio 5.1、5.1.1 或 5.1.2 移轉

  • WebSphere Studio 5.1.x 版的相容性
  • 停用與 WebSphere Studio 5.1.x 版的相容性
  • 更新 Web 專案中的 Faces 執行時期資源
  • 更新 Web 專案中的 Faces 用戶端執行時期資源
  • 移轉 Struts Web 專案
  • 6.0 版的除錯器變更
  • WDO 至 SDO 移轉
  • 6.0 版中的 EGL 保留字
  • 第 2 章 從 Rational Web Developer 6.0 版更新 Web 專案的 Faces 執行時期資源

    第 3 章 移轉 J2EE 專案

  • 移轉安全 Web 服務
  • J2EE 1.3 至 1.4 規格層次移轉
  • Web 專案(Servlet 層次 2.3 至 Servlet 層次 2.4)
  • 連接器專案(JCA 1.0 至 JCA 1.5)
  • Web 服務(J2EE 1.3 至 J2EE 1.4)
  • J2EE 1.2 至 1.4 規格層次移轉
  • Web 專案(Servlet 層次 2.2 至 Servlet 層次 2.4)
  • Rational Web Developer 6.0 版中 J2EE 移轉精靈的變更
  • 第 4 章 WebSphere 測試環境的變更



    第 1 章 從 WebSphere Studio 5.1、5.1.1 或 5.1.2 移轉

    這份文件提供從 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 版移轉,請執行下列動作:

    1. 安裝之前,請先閱讀與 Eclipse 2.x 版和 WebSphere Studio 5.1.x 版的相容性的相關資料。 請注意,從 Portal Toolkit 5.0.2.2 版移轉的 Portlet 應用程式專案沒有與 WebSphere Studio 5.1.2 版的舊版相容性支援。
    2. 備份您的 WebSphere Studio 5.1.x 版工作區。
    3. 安裝 Rational Web Developer。請參閱安裝手冊(install.html 檔),它在第一片產品 CD 的根目錄中。
    4. 建議:依預設,第一次啟動 Rational Web Developer 時,會提示您確認您要使用稱為 rationalsdp6.0\workspace 的工作區。也就是說,「工作區啟動程式」對話框會指向不是您的 WebSphere Studio 工作區的目錄。如果要在移轉舊工作區之前探索新環境,在啟動 Rational Web Developer 時,請接受預設值,或指定某個其他新目錄名稱。您可能會這麼做,比方說,以便能夠建立一、兩個測試專案,閱讀新增功能的相關資訊(說明 -> 歡迎使用),執行某些新的指導教學(說明 -> 指導教學展示區),或體驗某些新範例(說明 -> 範例展示區)。
    5. 將專案移轉至 6.0 版。您可以依照下列方式,將 WebSphere Studio 5.1.x 版中所建立的專案自動移轉至 6.0 版:
      1. 移轉工作區:當您準備好永久移轉 5.1.x 版工作區時,請利用舊工作區來啟動 Rational Web Developer。這時會出現一個進度指示器,確認正在自動移轉您的專案。

        附註:在工作區移轉期間,會開啟問題對話框,其中含有下列訊息:無法還原工作台佈置。原因:還原工作台時,發生問題。這個錯誤訊息不會影響工作區的順利移轉。 請按一下錯誤對話框中的詳細資料按鈕來記下無法還原的視景名稱,再按一下確定來關閉對話框。

        如果要還原視景,請執行下列動作:

        1. 選取視窗 -> 關閉視景來關閉視景
        2. 選取視窗 -> 開啟視景來重新開啟視景。
        註:
        對於在 WebSphere Studio 5.1.2 版中使用 EGL Web 視景的 Enterprise Generation Language (EGL) 專案:Rational Web Developer 6.0 版已移除了這個視景。所有 EGL 專案已在沒有這個視景的情況下,在 Rational Web Developer 6.0 版中安全移轉。如果您使用 EGL Web 視景,請執行下列動作:
        1. 關閉 EGL Web 視景。
        2. 在「喜好設定」中啟用 EGL 功能(視窗 -> 喜好設定)。請參閱線上說明,以取得啟用 EGL 功能的詳細資料。
        3. 選取視窗 -> 開啟視景,再選擇 Web 視景。
      2. 移轉從 SCM(原始碼管理)系統中載入的專案:當 SCM 系統中的 WebSphere Studio 5.1.x 專案載入 Rational Web Developer 時,會自動移轉至 6.0 版。
      3. 移轉利用專案交換匯入的專案:從 WebSphere Studio 5.1.2 或 5.1.1 匯出,再利用專案交換特性匯入 Rational Web Developer 6.0 版的專案會自動移轉至 6.0 版。 WebSphere Studio 5.1.2 版提供了專案交換特性,在 5.1.1 版中,它是一個選用的外掛程式。

      附註:

      重要事項:

    6. Rational Web Developer 6.0 版不支援 DB2(R) Net JDBC Driver。如果您利用 DB2 Net JDBC Driver 建立了 JDBC 連線,您將無法在 Rational Web Developer 6.0 版中重新連線。您必須變更連線來使用其中一種支援的 JDBC 驅動程式。請參閱線上說明,以取得 6.0 版的 JDBC 驅動程式的詳細資訊。
    7. 如果您有從 WebSphere Studio Site Developer 5.1.x 版移轉的 Web 或 XML 檔使用 Shift_JIS 字集且包括供應商選取的字元,您必須另行指定 Windows-31J 字集。
    8. 如果您在 WebSphere Studio Site Developer 5.1.x 版中安裝了任何供應商外掛程式,您必須取得 6.0 版的對應外掛程式,再重新安裝它們。
    9. 如果您使用需要 Agent Controller 的特性,請安裝 Rational Web Developer 所提供的版本來升級它。 如果需要詳細資料,請參閱安裝手冊
    10. 如果要從 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 取得最新的版本。

    WebSphere Studio 5.1.x 版的相容性

    當您第一次在 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 版共用:

    當在 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 版專案之後的手動步驟:

    1. 開啟每個有 .classpath 檔的 J2EE 專案的 .classpath 檔。
    2. 從 .classpath 檔中刪除下列類別路徑項目,再儲存和關閉檔案。
    3. 確定已在 J2EE 喜好設定頁面中啟用鎖定目標伺服器支援。 選取視窗 -> 喜好設定 -> J2EE,確認已在「鎖定目標伺服器支援」之下,選取啟用鎖定目標伺服器支援
    4. 用滑鼠右鍵按一下專案,選取內容 -> J2EE
    5. 選取專案執行時期目標的對應目標伺服器(如使用 JDK 1.4 執行時期環境的 WebSphere Application Server 5.1 版),再按一下確定
    6. 您選取的目標伺服器將相容於 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 專案相容性,必須重新建立。

    停用與 WebSphere Studio 5.1.x 版的相容性

    您可以從 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 版的相容性,請執行下列動作:

    1. 用滑鼠右鍵按一下企業應用程式專案,從蹦現視窗中選取移除相容性功能表選項。
    2. 這時會開啟一個對話框,要求您確認要移除企業應用程式專案以及這個專案之下的所有巢狀模組和公用程式專案的舊版相容性。
    3. 按一下繼續執行「移除相容性」作業。

    執行「移除相容性」作業之後,企業應用程式專案以及企業應用程式專案下的所有巢狀模組和公用程式專案都不再相容於 WebSphere Studio Site Developer 5.1.x 版。


    更新 Web 專案中的 Faces 執行時期資源

    原來在 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 執行時期資源,請執行下列動作:

    1. 從 WebSphere Studio Site Developer 5.1.x 版匯入含有 Faces 內容的 Web 專案(或工作區)。這時會開啟「專案移轉」視窗。
      註:
      如果「專案移轉」視窗未開啟,您的自動建置喜好設定可能已停用。請在專案瀏覽器中, 用滑鼠右鍵按一下 Web 專案,然後選取建置 -> 專案;重新建置專案的程序即會開啟「專案移轉」視窗。
    2. 如果工作區中有其他 Web 專案含有 Faces 內容,請勾選將這個選項套用到任何其他需要升級的專案,則所有的 Web 專案都會更新。
    3. 按下列其中一項:
    註:
    如果您建立了含有「Faces 用戶端」元件的 Faces JSP, 您必須將「Faces 用戶端」元件執行時期資源個別更新到最新的層次。請參閱更新 Web 專案中的 Faces 用戶端執行時期資源

    手動更新執行時期資源

    若要手動更新 Web 專案的 Faces 執行時期資源,請執行下列動作:

    1. 將含有 Faces 內容的現有 Web 專案匯入 Rational Web Developer 6.0.1 版工作區。
    2. 建立名稱為 JSF601 的新 Web 專案(或者如果您使用的是 EGL,則建立新的 EGL Web 專案)。這個專案只會用來作為最新執行時期資源的來源; 其在更新完成之後即可刪除。
    3. 在專案瀏覽器中,用滑鼠右鍵按一下 JSF601 專案,然後從功能表中選取內容
    4. 按一下 Web 專案特性,然後選取新增 Faces 基本元件新增 Faces 用戶端組織架構,然後按一下確定
    5. 如果您在使用 EGL,請依照下列方式來建立 JSF 頁面檔:
      1. 用滑鼠右鍵按一下新 EGL Web 專案的 WebContent 資料夾。
      2. 選取新建 -> 其他 -> Faces JSP 檔
      eglintdebug.jareglintdebugsupport.jar 檔會加入專案中。
    6. 對您要更新的每一個現有的 Faces 專案,執行下列動作:
      1. 在專案瀏覽器中,展開現有的專案來顯示 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
      2. 找出並開啟 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>
        
      3. 對您已刪除的任何 JAR 檔,從 JSF601 專案的 WebContent/WEB-INF/lib 目錄中複製相同名稱的 JAR 檔,將它貼到原始專案的相同位置。 某些配置並不需要所有這些 JAR 檔都存在於專案中;如果特定的 JAR 檔不在原始專案中,請不要複製這些檔案。
      4. 開啟原始專案中的 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>
        
      5. 如果原始專案是利用 WebSphere 資料物件 (WDO) 來進行任何資料存取,請執行下列其他步驟:
        1. 在原始專案中,按一下檔案 -> 新建 -> Faces JSP 檔來建立新的暫時 Faces JSP 檔。
        2. 從選用區的資料抽屜中,將關聯式記錄清單元件拖曳至頁面中。
        3. 挑選任一連線和資料來源,然後按一下完成。 所選的資料並不重要。這個程序會產生任何必要的配置,以便繼續在這個專案中使用 WDO。
        4. 刪除暫時 JSP 檔。
      6. 如果您在使用 EGL,請用滑鼠右鍵按一下各 EGL Web 專案的名稱,再按一下產生;之後,如果您並未自動建置專案,請按一下專案 -> 全部建置
    7. 刪除 JSF601 Web 專案。

    更新 Web 專案中的 Faces 用戶端執行時期資源

    原來在 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 用戶端執行時期資源,請執行下列動作:

    1. 從 WebSphere Studio Site Developer 5.1.x 版匯入含有 Faces 用戶端內容的 Web 專案(或工作區)。這時會開啟「專案移轉」視窗。
      註:
      如果「專案移轉」視窗未開啟,您的自動建置喜好設定可能已停用。請在專案瀏覽器中, 用滑鼠右鍵按一下 Web 專案,然後選取建置 -> 專案;重新建置專案的程序即會開啟「專案移轉」視窗。
    2. 如果工作區中有其他 Web 專案含有 Faces 用戶端內容,請勾選將這個選項套用到任何其他需要升級的專案,則所有的 Web 專案都會更新。
    3. 按下列其中一項:
    4. 從 Web 專案的 Java 資源 -> JavaSource 資料夾中,刪除命名慣例為 com.ibm.dynwdo4jsmediators.<client-data-name> 的所有用戶端資料調節器類別套件。 請刪除名稱為 com.ibm.dynwdo4jsmediators 的套件。這個套件含有專案中用來重新產生調節器之用戶端資料的 Meta 資料(ecore 和 emap 檔)。
    5. 從 Web 專案的 Java 資源 -> JavaSource 資料夾中,開啟 OdysseyBrowserFramework.properties 檔,然後刪除 EMAP_FILESECORE_FILES 的項目。
    6. 對「用戶端資料」視圖中的每一個資料物件,執行下列動作:
      1. 按一下滑鼠右鍵來選取配置
      2. 進階標籤中,按一下從伺服器端資料重新產生來重新產生資料物件的所有調節器。

    手動更新執行時期資源

    若要手動更新 Web 專案的 Faces 用戶端執行時期資源,請執行下列動作:

    1. 完成更新 Web 專案中的 Faces 執行時期資源中的手動更新執行時期資源步驟。
    2. 完成上述自動更新執行時期資源一節的步驟 4-6。

    將含有 Faces 用戶端元件之專案的目標伺服器從 WebSphere Application Server 5.1 版改成 6.0 版時,可能會發生問題。

    將含有 Faces 用戶端元件之專案的目標伺服器從 WebSphere Application Server 5.1 版改成 6.0 版時,可能會發生兩個問題:

    升級至自動化的 Diff 處理常式和處理器

    Diff 處理器和處理常式現在會自動產生。如果您在 WebSphere Studio 5.1.x 版中撰寫 Faces 用戶端元件的 Diff 處理常式和處理器, 建議您捨棄該程式碼,改用自動產生的處理器和處理常式:

    1. 針對 Web 專案中的每一個用戶端資料物件,產生新的 Diff 處理常式和處理器。
      1. 選取用戶端資料物件,按一下滑鼠右鍵來選取配置
      2. 進階標籤中,按一下全部重新產生
    2. 移除您撰寫來呼叫 Diff 處理器和處理常式的程式碼,原因是系統會自動呼叫產生的處理器和處理常式。使用這種程式碼的典型例子是「指令按鈕」元件的指令事件,如:
      String Diff = getClientData1().getDiffStr();
      if (DiffProcessor.Synch(getRoot(), Diff) == true)
       return "";
      return "failure";
      
    3. 從 Web 專案中移除您建立的舊自訂處理常式和處理器所對應的檔案。

    保留對 5.1.x 版所撰寫的自訂 Diff 處理常式和處理器

    雖然不建議您這麼做,但如果您決定需要保留 5.1.x 版的 Diff 處理常式和處理器, 您必須加以修改才能在 6.0 版中運作,因為 DiffHandler 介面和 DiffInfo 類別已變更。

    6.0 版之 Faces 用戶端元件的變更


    移轉 Struts Web 專案

    針對 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 專案的部署描述子:

    1. 在「專案瀏覽器」中開啟 Struts Web 專案。
    2. 在「專案瀏覽器」中,按兩下 Web 專案的 Web 部署描述子檔。 這時會開啟 Web 部署描述子編輯器。
    3. 按一下程式碼標籤來開啟「程式碼」頁面。
    4. 變更下面這一行

      <param-value>WEB-INF/struts-config.xml</param-value>(這位於 <servlet></servlet> 標示內)

      to

      <param-value>/WEB-INF/struts-config.xml</param-value>

    5. 儲存 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,請執行下列動作:

    1. 將 Struts 1.1 測試版專案載入 Rational Web Developer 6.0 版工作區中。
    2. 建立新的 Struts 1.1 Web 專案,比方說,名稱為 Struts11。 您需要建立這個暫時專案,以便存取在轉換實際的專案時,所需的 Struts 1.1 執行時期檔案。完成之後,您可以刪除這個專案。
    3. 針對要轉換至 Struts 1.1 的 Struts 1.1 測試版專案,執行下列動作:
      1. 從您專案的 Web Content/WEB-INF/lib 目錄刪除下列 JAR 檔:
        • commons-*.jar.
        • struts.jar.
      2. 將下列 JAR 檔從 Struts11/WebContent/WEB-INF/lib 目錄複製到您專案的 Web Content/WEB-INF/lib 目錄中:
        • commons-*.jar.
        • struts.jar.
      3. 從專案的 Web Content/WEB-INF 目錄刪除下列「標示庫描述子」(TLD) 檔案:struts-*.tld。
      4. 將下列 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,請執行下列動作:

    1. 將 Struts 1.0.2 專案載入 Rational Web Developer 6.0 版工作區中。
    2. 建立新的 Struts 1.1 Web 專案,比方說,名稱為 Struts11。 您需要建立這個暫時專案,以便存取在轉換實際的專案時,所需的 Struts 1.1 執行時期檔案。完成之後,您可以刪除這個專案。
    3. 針對要轉換至 Struts 1.1 的 Struts 1.0.2 專案,執行下列動作:
      1. 從您專案的 Web Content/WEB-INF/lib 目錄刪除 struts.jar 檔。
      2. 將下列 JAR 檔從 Struts11/WebContent/WEB-INF/lib 目錄複製到您專案的 Web Content/WEB-INF/lib 目錄中:
        • commons-*.jar.
        • struts.jar.
        • jarkarta-oro.jar.
      3. 從您專案的 Web Content/WEB-INF 目錄刪除下列「標示庫描述子」(TLD) 檔案:struts-*.tld。
      4. 將下列 TLD 檔從 Struts11/WebContent/WEB-INF 目錄複製到您專案的 Web Content/WEB-INF 目錄中:struts-*.tld。

    6.0 版的除錯器變更

    Rational Web Developer 6.0 版的除錯工具有些改變。 您必須知道這些改變,您的專案才能在移轉之後使用這些工具。您可能需要變更或還原設定。

    移轉工作區和啟動配置

    當在 Rational Web Developer 6.0 版開啟 WebSphere Studio Site Developer 的 5.1.x 版工作區時,不會自動移轉關聯於工作區的下列除錯器啟動配置:

    「除錯」視圖

    「儲存體」和「儲存體對映」視圖已不存在。「記憶體」和「記憶體呈現」視圖已取代了它們。

    XSLT 除錯器

    在 6.0 版中,XSLT 除錯器已有了改變,它的許多視圖和動作都有了大幅的變更。如果需要進一步的資訊,請參閱資訊中心的 XSLT 除錯器文件。

    XSLT 除錯器最重要的變更之一,是相依於隨著 Rational Web Developer 6.0 版而安裝的 JRE。如果您移轉 WebSphere Studio Site Developer 5.1.x 版中的工作區,您必須先修改已安裝的 JRE 來指向正確的位置,之後,才能啟動它的 XSLT 除錯階段作業。如果要執行這個動作,您可以先執行下列動作之一:


    WDO 至 SDO 移轉

    如果您在 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 的移轉作業會自動進行。

    變更目標伺服器的方式有兩種:

    請參閱 Rational Web Developer 的線上說明,以取得變更目標伺服器和使用 J2EE 移轉精靈的說明主題。

    相容性考量

    從 WDO 移轉至 SDO 之後,可能會發生類型衝突錯誤

    在利用 WDO 的專案移轉至 SDO 型的專案之後,如果您將 SDO 資料新增至含現有 WDO 資料的現有 JSP 頁面,就可能發生類型衝突的錯誤。 發生這個情況是因為混合了現有的 WDO Access Bean 和獨立式 SDO API。比方說,您可能會見到類似下列中的 JSP 之 Java 程式檔編譯錯誤:

    import com.ibm.websphere.sdo.mediator.exception.MediatorException
    與另一個匯入的類型衝突
    

    您可以依照下列方式來更正這些類型衝突錯誤:

    1. 從 Java 程式檔中移除衝突的 import 陳述式。 當使用上述範例時,您會從程式檔中移除下列 import 陳述式:
      import com.ibm.websphere.wdo.mediator.exception.MediatorException;
      
    2. 修改參照這個類型來使用完整類別名稱的 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 版時,會自動進行下列變更:

    將伺服器目標從 6.0 版改成 5.1 版(SDO 至 WDO)之後的 Web 專案變更

    當目標伺服器從 6.0 版改成 5.1 版時,會自動進行下列變更:

    將應用程式的 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

    6.0 版中的 EGL 保留字

    這些是 Enterprise Generation Language (EGL) 在 Rational Web Developer 中的新保留字。

    下列為新的保留字:

    在利用這些單字作為變數或組件名稱的 6.0 版工作區中匯入和建置的 WebSphere Studio 5.1.x 版 EGL 程式,都會標示下列訊息:IWN.SYN.2002.e 39/2 輸入 "variableName" 語法錯誤。您可以重新命名變數來更正這個問題。


    第 2 章 從 Rational Web Developer 6.0 版更新 Web 專案的 Faces 執行時期資源

    原來在 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 用戶端執行時期資源,請執行下列動作:

    1. 從 Rational Web Developer 6.0 版匯入含有 Faces 或 Faces 用戶端內容的 Web 專案(或工作區)。 這時會開啟「專案移轉」視窗。
      註:
      如果「專案移轉」視窗未開啟,您的自動建置喜好設定可能已停用。請在專案瀏覽器中, 用滑鼠右鍵按一下 Web 專案,然後選取建置 -> 專案;重新建置專案的程序即會開啟「專案移轉」視窗。
    2. 如果工作區中有其他 Web 專案含有 Faces 或 Faces 用戶端內容,請勾選將這個選項套用到任何其他需要升級的專案,則所有的 Web 專案都會更新。
    3. 按下列其中一項:

    手動更新執行時期資源

    若要手動更新 Web 專案的 Faces 和 Faces 用戶端執行時期資源,請執行下列動作:

    1. 建立名稱為 JSF601 的新 Web 專案(或者如果您使用的是 EGL,則建立新的 EGL Web 專案)。這個專案只會用來作為最新執行時期資源的來源; 其在更新完成之後即可刪除。
    2. 在專案瀏覽器中,用滑鼠右鍵按一下 JSF601 專案,然後從功能表中選取內容
    3. 按一下 Web 專案特性,然後選取新增 Faces 基本元件新增 Faces 用戶端組織架構,然後按一下確定
    4. 如果您在使用 EGL,請依照下列方式來建立 JSF 頁面檔:
      1. 用滑鼠右鍵按一下新 EGL Web 專案的 WebContent 資料夾。
      2. 選取新建 -> 其他 -> Faces JSP 檔
      eglintdebug.jareglintdebugsupport.jar 檔會加入您的專案中。
    5. 對您要更新的每一個現有的 Faces 專案,執行下列動作:
      1. 在專案瀏覽器中,展開現有的專案來顯示 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
      2. 對您已刪除的任何 JAR 檔,從 JSF601 專案的 WebContent/WEB-INF/lib 目錄中複製相同名稱的 JAR 檔,將它貼到原始專案的相同位置。 某些配置並不需要所有這些 JAR 檔都存在於專案中;如果特定的 JAR 檔不在原始專案中,請不要複製這些檔案。
      3. 如果您在使用 EGL,請用滑鼠右鍵按一下各 EGL Web 專案的名稱,再按一下產生;之後,如果您並未自動建置專案,請按一下專案 -> 全部建置
    6. 刪除 JSF601 Web 專案。

    第 3 章 移轉 J2EE 專案

    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 移轉精靈:

    1. 在 J2EE 視景的 J2EE 階層視圖中,用滑鼠右鍵按一下您要移轉的企業應用程式專案。
    2. 從蹦現功能表中,選取移轉 -> J2EE 移轉精靈
    3. 在繼續移轉程序之前,遵循 J2EE 移轉精靈「歡迎使用」頁面中的指示。

    附註:

    請參閱線上說明,以取得使用 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 服務

    當 Web 服務從 J2EE 1.3 移轉至 J2EE 1.4 時,J2EE 移轉精靈不會移轉安全 Web 服務。安全 Web 服務的移轉作業需要手動步驟。

    在 J2EE 移轉之後,您必須依照下列方式,將安全連結和延伸規格檔手動移轉至 J2EE 1.4:

    1. 按兩下 webservices.xml 檔來開啟 Web 服務編輯器。
    2. 選取連結配置標籤來編輯連結檔。
    3. 在新的區段要求消費者連結配置詳細資料回應產生者連結配置詳細資料之下,新增所有必要的連結配置。
    4. 選取延伸規格標籤來編輯延伸規格檔。
    5. 在新的區段要求消費者服務配置詳細資料回應產生者服務配置詳細資料之下,新增所有必要的延伸規格配置。
    6. 儲存和結束編輯器。

    J2EE 1.3 至 1.4 規格層次移轉

    J2EE 專案可以從 J2EE 1.3 移轉至 J2EE 1.4 規格層次。這一節說明 J2EE 移轉精靈從 J2EE 1.3 移轉至 J2EE 1.4 的各類型 J2EE 專案的成品。

    Web 專案(Servlet 層次 2.3 至 Servlet 層次 2.4)

    當 J2EE 1.3 層次的 Web 專案移轉至 J2EE 1.4 時,J2EE 移轉精靈會移轉 Web 部署描述子的成品。

    會移轉的 Web 應用程式成品如下:

    鑑別限制

    J2EE 1.4 包含一個 Description 物件,它有兩個屬性:languagevalue。J2EE 1.3 沒有這個 Description 物件;description 是鑑別限制的屬性。因此,當 Web 部署描述子的成品移轉至 J2EE 1.4 時,Description 物件的 value 會取自鑑別限制的 description 屬性。

    安全限制

    同樣地,在 J2EE 1.3 中,description 也是安全限制的屬性。在 J2EE 1.4 中,有一個新的 Description 物件,它含有 languagevalue 屬性。因此,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 根物件。

    連接器專案(JCA 1.0 至 JCA 1.5)

    J2EE 移轉精靈會將 J2EE 連接器架構 (JCA) 1.0 描述子的成品移轉至 JCA 1.5。 移轉後的成品會和 ResourceAdaptor 物件的元素相關,因為有兩個新物件(OutboundResourceAdaptor 和 ConnectionDefinition)已加入連接器專案之 J2EE 1.4 規格層次的 ResourceAdaptor 物件中。

    已移轉之元素的對映說明如下。

    Web 服務(J2EE 1.3 至 J2EE 1.4)

    J2EE 1.4 規格透過新的 JAX-RPC 1.0 API 增加了 Web 服務的支援。

    JAX-RPC API 透過下列項目支援服務端點:

    J2EE 1.4 規格支援 J2EE 規格 (JSR 109) 的 Web 服務。JSR 109 定義了 Web 服務的部署需求並利用 JAX-RPC 程式設計模型。

    利用 J2EE 移轉精靈移轉的 Web 服務成品如下:

    移轉 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 服務部署描述子的進一步的詳細資料。


    J2EE 1.2 至 1.4 規格層次移轉

    J2EE 模組可以從 J2EE 1.2 規格層次移轉至 J2EE 1.4。這一節說明 J2EE 移轉精靈從 J2EE 1.2 移轉至 J2EE 1.4 規格層次的 J2EE 專案成品。

    如果需要使用 J2EE 移轉精靈的詳細資料,請參閱第 3 章, 移轉 J2EE 專案

    Web 專案(Servlet 層次 2.2 至 Servlet 層次 2.4)

    當 J2EE 1.2 Web 專案移轉至 J2EE 1.4 規格層次時,J2EE 移轉精靈會移轉 Web 部署描述子的成品。

    會移轉的 Web 應用程式成品如下:

    鑑別限制

    J2EE 1.4 包含一個 Description 物件,它有兩個屬性:languagevalue。J2EE 1.2 沒有這個 Description 物件;description 是鑑別限制的屬性。因此,當 Web 部署描述子的成品移轉至 J2EE 1.4 時,Description 物件的 value 會取自鑑別限制的 description 屬性。

    安全限制

    同樣地,在 J2EE 1.2 中,description 也是安全限制的屬性。在 J2EE 1.4 中,有一個新的 Description 物件,它含有 languagevalue 屬性。因此,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 移轉精靈的變更

    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 移轉精靈的資訊,請參閱線上說明。


    第 4 章 WebSphere 測試環境的變更

    在 Rational Web Developer 6.0 版中,產品所包含的 WebSphere Application Server 測試環境已變更,與舊版的 WebSphere Studio Site Developer 所包含者有所不同。

    以下是 Rational Web Developer 6.0 版 WebSphere Application Server 測試環境的變更摘要:

    下表顯示不同版本的 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 版

    版權和注意事項