此規則包含移轉至 Jakarta EE 9 的一般資訊, 以及 WebSphere Migration Toolkit for Application Binaries(二進位掃描器)偵測不到的問題相關資訊。
Jakarta:套件名稱空間已變更
由於 Jakarta EE 9 中的套件名稱空間變更,請確定 應用程式使用的所有相依關係和程式庫都 已更新至支援 Jakarta EE 9 的版本。
Liberty 特性:特性名稱已變更
在 Liberty 中,一些特性已在 Jakarta EE 8
和 Jakarta EE 9 之間重新命名。 例如,
jaxrs
特性現在
是 restfulws
。 如需已重新命名特性的完整清單,請參閱
Jakarta EE 9.1 特性更新。 二進位掃描器所產生的
特性清單將包含已更新的特性名稱。
Liberty 特性:平台特性不再啟用技術
jakartaee-9.1
平台特性不會啟用一些
先前由平台特性所啟用的技術,例如
jakartaee-8.0
或
javaee-7.0
。
jaxws
,現在是
xmlws
和
jaxb
,現在是
xmlbinding
,平台特性不再啟用這些特性。 如果您使用
平台特性,且您的應用程式使用這些技術,
請將特性新增至 server.xml。 或者,您可以使用
二進位掃描器所產生的特性清單。
Servlet:enablePostOnlyJSecurity 檢查內容預設值已變更
com.ibm.ws.webcontainer.enablePostOnlyJSecurityCheck
Servlet 內容的預設行為已在 Jakarta EE 9 中從
false
變更為
true
。 如果您的應用程式在 html 或 jsp 檔案中使用
j_security_check
測試此變更是否會影響您的應用程式。
Servlet:回應輸出串流現在已自動關閉
當應用程式包裝回應物件並在分派轉遞中
使用它時,在 Jakarta EE 9 之前,
結束轉遞之前未關閉回應的輸出串流。 Servlet 規格
需要這項關閉。 當應用程式在轉遞之後繼續寫入時,
會將其他資料寫入回應中。
在 Jakarta EE 9 中,此行為已變更,
因此輸出串流現在已關閉。
webcontainer
內容
closeWrappedResponseOutputAfterForward
已新增來切換此行為。 如果您的應用程式需要先前的行為,請將內容設為
false
。
Enterprise Bean:已從規格中移除分散式交互作業能力
在 Jakarta EE 9 中,分散式交互作業能力已從 Enterprise Bean 規格中移除。 Liberty 繼續支援 RMI over IIOP,但請注意, 由於套件重新命名,遠端伺服器也必須使用 Jakarta EE 9。 雖然 Liberty 繼續支援 Jakarta EE 9 中的 分散式交互作業能力,但 其他伺服器提供者可能會移除支援。