當您使用「新建 Portlet」精靈來建立 JSR 168 API Portlet 時,Rational Software Development Platform 會自動指派一個 ID 屬性。ID 屬性應該併入 portlet.xml 檔的 <portlet-app/> 元素中,供伺服器唯一識別 Portlet。(這個屬性對應於 IBM Portlet API Portlet 所用的 UID 屬性。)
如果您的 JSR 168 API Portlet 沒有 portlet.xml 檔中 <portlet-app/> 元素的 ID 屬性,請在將 Portlet 匯入工具工作區之後,立即新增 ID 屬性及其唯一值。 如果要新增 ID 屬性,請開啟 Portlet 部署描述子,再使用「程式碼」視圖來編輯。 將 JSR 168 API Portlet 部署至 Portal Server 之後,或在入口網站專案中使用 JSR 168 API Portlet 專案之後,請勿變更 ID 值。
沒有 ID 屬性的 JSR 168 API Portlet 會有以下限制:
- 如果您在入口網站專案中使用沒有 ID 屬性的 JSR 168 API Portlet,就無法在測試環境中執行該 Portlet。
- 如果您讓二個以上不含 ID 屬性的 JSR 168 API Portlet 與 WebSphere Portal 5.1 測試環境產生關聯,測試環境將無法啟動。
- 將 JSR 168 API Portlet 部署至 Portal Server 之後,或在入口網站專案中使用 JSR 168 API Portlet 專案之後,便不應變更專案名稱。
由於 Portal Designer 不支援 WSRP Portlet,因此,停用了這些 Portlet 的相關編輯功能,例如:「複製」和「移動」。 即便如此,您還是可以從 WebSphere Portal 匯入 WSRP Portlet,以及將它部署回 WebSphere Portal 中。
當執行包含關聯式記錄清單或關聯式記錄 (SDO) 的 Portlet 時,伺服器日誌可能會出現下列錯誤:
[date and time] 4942fbd0 SystemOut O java.lang.LinkageError: Class org/eclipse/emf/ecore/EClass 類別違反載入器限制:母項和子項載入器的定義不符
您可以忽略這個錯誤。
當使用「新建入口網站專案」精靈來建立入口網站專案時,或從「範例展示區」中匯入範例入口網站專案時,「問題」視圖會出現中斷鏈結的警告訊息。
Portal Designer 只會將 HTML、cHTML 和 WML 顯示為支援的標記。 如果您在匯入的專案中,指定了其他支援的頁面或標籤標記,則會繼續維持。不過,您不能變更這些標記,而且這些標記不會顯示在「內容」視圖中。
在 WebSphere Portal 測試環境中執行時,入口網站專案比 Portlet 專案優先。如果您在測試環境中執行入口網站專案,就會在入口網站專案與伺服器配置之間建立關聯性。 因此,您必須先解除這項關聯,才能使用相同的伺服器配置來執行 Portlet 專案。
如果要更正這個關聯問題,請遵循下列步驟:
- 在「伺服器」視圖中,從伺服器的快速功能表中,選取新增和移除專案。
- 移除 wps 專案、任何入口網站專案 EAR 專案,以及入口網站專案的任何相關的 Portlet EAR 專案(如果它們與伺服器配置相關的話)。
就 WebSphere Portal 5.1 而言,若先前在 Web 瀏覽器中顯示了入口網站,之後又利用本產品來修改這個入口網站的預設主題,則您必須重新啟動伺服器,才能完整套用新的預設主題。
在 WebSphere Portal 測試環境中,無法藉由重新發佈入口網站配置來變更預設主題。您必須重新啟動測試環境。
您可以套用 PK00826 來更正 WebSphere Portal 5.1 的這個問題。這個修正程式將納入 WebSphere Portal 的未來版本中。
問題:無法在所匯入的入口網站專案中或是從測試環境建立的新入口網站專案中,使用 Page Designer 來開啟 license.html 或 privacy.html 檔,因為編碼不正確。
解決方案:將 APAR PQ93681 套用在 Portal Server 或測試環境上,然後分別從 Portal Server 重新匯入專案,或是從測試環境重建專案。
附註:在 WebSphere Portal 5.1 及 WebSphere Portal 5.0.2.3 中,已修正這個問題,但在 WebSphere Portal 5.0.2.2 中尚未修正。
當您執行或部署啟用了 Click-to-Action 的 Portlet 專案時,Click-to-Action 功能表不會顯示功能表標題。 相反地,它會顯示動作名稱。 如果您需要正確顯示功能表標題,您可以利用本產品來將您的 Portlet 專案匯出成 WAR 檔,然後再利用管理 Web 模組 Portlet 來將它安裝在 WebSphere Portal 中。
這個問題只會發生在 WebSphere Portal 5.1.0.0 中,更新為 WebSphere Portal 5.1.0.1 之後即可修正。
問題:在 JSR 168 Portlet 部署描述子中,您無法在 Portlet 集合區中編輯 Portlet 名稱。
解決方案:在「程式碼」頁面中,編輯 Portlet 名稱。
問題:如果類別路徑的長度太長,變更 Portlet API 層次會失敗。
解決方案:您必須更正所移轉之 Portlet 專案的 Java 建置路徑。針對必要的 Java 建置路徑,您可以參照「新建 Portlet 專案」精靈所產生的基本 Portlet 專案。 請將遺漏的必要 JAR 檔新增至已移轉的 Portlet 專案的 Java 建置路徑中。
問題:從 WebSphere Portal 匯入現有的入口網站時,或是從測試環境建立新的入口網站專案時,在針對所匯入或建立之入口站網站專案的「問題」視圖中,會出現與 WSRP 相關的驗證錯誤。
解決方案:先將 APAR PQ95638 套用在 WebSphere Portal 或 WebSphere Portal 測試環境,再匯入分別入口網站或建立新的入口網站專案。
附註:在 WebSphere Portal 5.1 及 WebSphere Portal 5.0.2.3 中,已修正這個問題,但在 WebSphere Portal 5.0.2.2 中尚未修正。
當您以所選取的 config 模式來建立 Struts JSR168 Portlet,並且在 Portal Server 或測試環境中執行這個 Portlet 時,Portlet 面板不會顯示可供選取 config 模式的選項(在 Portlet 面板上顯示一個板手)。
這個問題是出在 Portlet 的 config 模式設定不正確。如果要暫時解決這個問題,請執行下列動作:
- 在 Portlet 專案的 \WebContent\WEB-INF\ 目錄中,開啟 portlet.xml 檔案
- 尋找 Struts Portlet。這個 Portlet 的類別應該是 com.ibm.portal.struts.portlet.StrutsPortlet
- 將 Struts Portlet 中的支援區段從: <supports>
<supports>
<mime-type>text/html</mime-type>
<portlet-mode>view</portlet-mode>
<portlet-mode>edit</portlet-mode>
<portlet-mode>help</portlet-mode>
<portlet-mode>configure</portlet-mode>
</supports>
更新為:
<supports>
<mime-type>text/html</mime-type>
<portlet-mode>view</portlet-mode>
<portlet-mode>edit</portlet-mode>
<portlet-mode>help</portlet-mode>
<portlet-mode>config</portlet-mode>
</supports>
請注意,Portlet 模式是 "config",而不是 "configure"。- 此外,自訂的 Portlet 模式也要從:
<custom-portlet-mode>
<portlet-mode>configure</portlet-mode>
</custom-portlet-mode>更新為:
<custom-portlet-mode>
<portlet-mode>config</portlet-mode>
</custom-portlet-mode>
©Copyright IBM Corporation 2000, 2005. All Rights Reserved.