WebSphere Application Server 5.x 版移轉 Web 應用程式元件

WebSphere® Application Server 舊版中所部署的 Web 應用程式不需要移轉。 除非 Servlet 3.1 或 JSP 2.3 規格的行為有了改變,否則,Java™ Servlet 2.2 版以及更新版本的規格,以及 JavaServer Pages (JSP) 1.2 和 1.4 版的規格,仍受到支援。 相應的規格中通常會更詳細說明這些變更。

關於這項作業

在下列實例中,可能需要考慮移轉 Servlet:

  • 實作 WebSphere Application Server 內部 Servlet 來略過 WebSphere Application Server 4.x 版單一應用程式路徑限制
  • 延伸 PageListServlet,而它依賴 Servlet 配置 XML 檔中的配置資訊
  • 利用 encodeRedirectURL 函數或從非環境定義根目錄內開始,呼叫 Servlet 的 response.sendRedirect 方法
  • 取決於設定預設的 Content-Type 回應標頭,或呼叫 getWriter 之後,setContentType 呼叫的行為。 這個行為是由 WebSphere Application Server 版本層次,利用 Web 儲存器自訂內容 com.ibm.ws.webcontainer.contenttypecompatibility 來設定,其值為 V4、V5、V6 或 V7。 表 1 說明每一個版本的行為。
    表 1. Web 儲存器自訂內容。. 說明每一個版本的版本行為。
      第 4 版 第 5 版 第 6 版 第 7 版
    預設 Content-Type text/html text/html; charset= <default_ encoding>
    如果 Charset 不存在於 Content-Type,則在 getWriter 上附加此內容

    範例:response.setCharacterEncoding("UTF-8"); response.setContentType("text/xml"); response.getWriter();

    text/html text/html text/xml; charset=UTF-8 text/xml; charset=UTF-8
    如果 getWriter 之後使用 ";charset=" 部分呼叫 setContentType 內容,則從 Content-Type 內容中移除 charset

    範例:setContentType("text/html;charset=ISO-8859-7"); getWriter(); setContentType("text/xml;charset=UTF-8");

    text/html text/html text/html text/xml; charset=ISO-8859-7

[AIX Solaris HP-UX Linux Windows][IBM i]如果應用程式參照未命名套件中的 JSP 頁面實作類別,或您將 WebSphere Application Server 4.x 版 EAR 檔(利用 JSP Precompile 選項部署在 4.x 版中)安裝在 5.x 版中,可能需要考慮移轉 JSP。 從 WebSphere Application Server 5.x 版移轉時,您需要重新編譯所有 JSP 頁面。

[z/OS]如果應用程式參照未命名套件中的 JSP 頁面實作類別,或您將 WebSphere Application Server 4.0.1 版 EAR 檔(利用 JSP Precompile 選項部署在 4.0.1 版中)安裝在 5.x 版中,可能需要考慮移轉 JSP。 從 WebSphere Application Server 5.x 版移轉時,您需要重新編譯所有 JSP 頁面。

支援的配置 支援的配置: 對於 IBM® 延伸和連結檔而言,.xmi 或 .xml 副檔名取決於您是使用 Java EE 5 之前的應用程式或模組,或 Java EE 5 或更新版本的應用程式或模組。 IBM 延伸或連結檔稱為 ibm-*-ext.xmi 或 ibm-*-bnd.xmi,其中 * 是延伸或連結檔的類型,例如:app、application、ejb-jar 或 web。 適用的條件如下:
  • 如果應用程式或模組使用第 5 版之前的 Java EE,副檔名必須是 .xmi。
  • 如果應用程式或模組使用 Java EE 5 或更新的版本,副檔名必須是 .xml。 如果 .xmi 檔是隨附在應用程式或模組,則本產品會忽略 .xmi 檔。

不過,即使應用程式含有 Java EE 5 之前的檔案,且所用的副檔名是 .xmi,其中也可以有 Java EE 5 或更新版本的模組。

ibm-webservices-ext.xmiibm-webservices-bnd.xmiibm-webservicesclient-bnd.xmiibm-webservicesclient-ext.xmiibm-portlet-ext.xmi 檔會繼續使用 .xmi 副檔名。

sptcfg

如果 Web 應用程式發生移轉問題,請遵循這些步驟:

程序

  1. IBM 內部 Servlet 用於啟用特殊行為,例如檔案提供和依類別名稱來提供 Servlet。 如果移轉的應用程式參照這些內部 Servlet,最佳作法是透過每一個 Web 模組 WEB-INF 目錄中的 IBM WebSphere 延伸 XMI 檔 ibm-web-ext.xmi,或使用組合工具,以啟用或停用這項功能。
  2. 如果這些配置選項不可行,請確認下列內部 Servlet 的套件名稱符合第 7 版 Web 部署描述子中所用的套件名稱。
    特性 配置選項 Servlet 類別
    目錄瀏覽 directoryBrowsingEnabled="true" com.ibm.ws.webcontainer.servlet.DirectoryBrowsingServlet
    自動對映 Servlet 路徑 serveServletsByClassnameEnabled="true: com.ibm.ws.webcontainer.servlet.SimpleFileServlet
    檔案提供 fileServingEnabled="true" com.ibm.ws.webcontainer.servlet.FilterProxyServlet
  3. [z/OS]如果 Servlet 延伸 PageListServlet 且依賴相關聯 XML Servlet 配置檔中的配置資訊,則移轉 Servlet。 在 4.0.1 版中,XML Servlet 配置檔提供頁面清單的配置資料,並擴增 Servlet 配置資訊。 此檔案的名稱為 servlet_class_name.servletservlet_name.servlet,而且與 Servlet 類別檔儲存在相同的目錄中。
  4. 新增 Web 儲存器自訂內容 com.ibm.ws.webcontainer.contenttypecompatibility,值為 V4、V5、V6、V7 等等。這個值取決於應用程式所依賴的版本。 如需如何修改此自訂內容的詳細資料,請參閱「修改預設 Web 儲存器配置」主題。因為此內容是廣域設定,您必須考慮到對於其他應用程式造成的影響。

指出主題類型的圖示 作業主題



時間戳記圖示 前次更新: last_date
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=tweb_migrate2
檔名:tweb_migrate2.html