我正在使用Windows 7計算機上的Portal 8.0.0.1,並已按照步驟創建基於Portal 8.0主題的自定義主題。我已經設置了我認爲需要的所有屬性,以便對HTML和JSP文件進行編輯,然後可以通過門戶進行識別,而無需重新啓動主題應用程序或門戶,但它不起作用。我試圖瞭解我在定製過程中可能錯過了什麼。爲什麼靜態和動態資源更改未反映在自定義Portal 8.0主題中?
我也跟着在這裏兩地描述的步驟:http://www-10.lotus.com/ldd/portalwiki.nsf/dx/Deploying_and_developing_IBM_WebSphere_Portal_8_themes_A_step-by-step_guide
這裏:
這些指示基本上是相同的,但我不知道這集是原來的;我還找到了相同說明的PDF文件。這些指示非常好,有很多詳細的步驟,但缺乏幾個地方,我質疑我的新定製主題的完整性。這些指令假設我不知道的兩件事:
我正在使用RAD。
附加了用於向門戶註冊主題的示例XML訪問文件。
的指令依賴於RAD的,我不能與Eclipse重現一個主要步驟 - 創建IBM的web-ext.xmi文件和IBM的web-bnd.xmi文件。這些是IBM文件,只有RAD會創建它們。我必須從其他項目中找到這些文件的副本,並嘗試對這些說明中創建的靜態和動態Eclipse項目進行定製。我知道ibm-web-ext.xmi文件是允許通過「reloadingEnabled」屬性重新加載JSP的關鍵,因此我確保按照指示啓用該屬性。此外,設置的說明指出,該行需要被添加到動態項目的Default.jsp文件:
--%><r:param name="max-age" value="2"/>
所以我做了一定要添加該行。
靜態項目的IBM的web-bnd.xmi文件的內容是:
<?xml version="1.0" encoding="UTF-8"?>
<webappbnd:WebAppBinding xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:webappbnd="webappbnd.xmi" xmi:id="WebAppBinding_FpmTheme8Static" virtualHostName="default_host">
<webapp href="WEB-INF/web.xml#WebApp_ID"/>
</webappbnd:WebAppBinding>
和靜態項目的IBM-web-ext.xmi文件的內容是:
<?xml version="1.0" encoding="UTF-8"?>
<webappext:WebAppExtension xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:webappext="webappext.xmi" xmi:id="WebAppExtension_FpmTheme8Static" reloadInterval="3" reloadingEnabled="true" additionalClassPath="" fileServingEnabled="true" directoryBrowsingEnabled="false" serveServletsByClassnameEnabled="false" preCompileJSPs="false">
<webApp href="WEB-INF/web.xml#WebApp_ID"/>
</webappext:WebAppExtension>
和動態項目的IBM的web-bnd.xmi文件的內容是:
<?xml version="1.0" encoding="UTF-8"?>
<webappbnd:WebAppBinding xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:webappbnd="webappbnd.xmi" xmi:id="WebAppBinding_FpmTheme8Dynamic" virtualHostName="default_host">
<webapp href="WEB-INF/web.xml#WebApp_ID"/>
</webappbnd:WebAppBinding>
和動態項目的IBM的Web-EXT的內容。XMI文件是:
<?xml version="1.0" encoding="UTF-8"?>
<webappext:WebAppExtension xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:webappext="webappext.xmi" xmi:id="WebAppExtension_FpmTheme8Dynamic" reloadInterval="3" reloadingEnabled="true" additionalClassPath="" fileServingEnabled="true" directoryBrowsingEnabled="false" serveServletsByClassnameEnabled="false" preCompileJSPs="false">
<webApp href="WEB-INF/web.xml#WebApp_ID"/>
</webappext:WebAppExtension>
你看那些東西是否有效?是否有任何其他位置需要進行一些配置設置才能允許JSP重新加載?
指令的第二個問題是示例XML訪問文件未附加。我創建了一個爲盡我所能,它看起來像這樣:
<?xml version="1.0" encoding="UTF-8"?>
<!-- IBM WebSphere Portal/8.0.0.1 build wp8001CF12_001_15 exported on Mon Apr 20 22:51:09 EDT 2015 from BF904V1/192.168.7.89 -->
<request build="wp8001CF12_001_15" type="update" version="8.0.0.1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="PortalConfig_8.0.0.xsd">
<portal action="locate">
<skin action="update" active="true" context-root="/FpmTheme8" default="true" domain="rel" resourceroot="Hidden" type="default" uniquename="FpmThem8.Hidden">
<localedata locale="en">
<title>FPM Theme8 - Hidden</title>
</localedata>
<parameter name="com.ibm.portal.skintype" type="string" update="set"><![CDATA[template]]></parameter>
<parameter name="com.ibm.portal.skin.template.file.name.html" type="string" update="set"><![CDATA[skin.html]]></parameter>
<parameter name="com.ibm.portal.skin.template.ref" type="string" update="set"><![CDATA[war:FpmTheme8Static/themes/Portal8.0/skins/Hidden/]]></parameter>
</skin>
<skin action="update" active="true" context-root="/FpmTheme8" default="false" domain="rel" resourceroot="Standard" type="default" uniquename="FpmTheme8.Standard">
<localedata locale="en">
<title>FPM Theme8 - Standard</title>
</localedata>
<parameter name="com.ibm.portal.skintype" type="string" update="set"><![CDATA[template]]></parameter>
<parameter name="com.ibm.portal.skin.template.file.name.html" type="string" update="set"><![CDATA[skin.html]]></parameter>
<parameter name="com.ibm.portal.skin.template.ref" type="string" update="set"><![CDATA[war:FpmTheme8Static/themes/Portal8.0/skins/Standard/]]></parameter>
</skin>
<skin action="update" active="true" context-root="/FpmTheme8" default="false" domain="rel" resourceroot="NoSkin" type="default" uniquename="FpmTheme8.NoSkin">
<localedata locale="en">
<title>FPM Theme8 - No Skin</title>
</localedata>
<parameter name="com.ibm.portal.skintype" type="string" update="set"><![CDATA[template]]></parameter>
<parameter name="com.ibm.portal.skin.template.file.name.html" type="string" update="set"><![CDATA[skin.html]]></parameter>
<parameter name="com.ibm.portal.skin.template.ref" type="string" update="set"><![CDATA[war:FpmTheme8Static/themes/Portal8.0/skins/NoSkin/]]></parameter>
</skin>
<theme action="update" active="true" context-root="/FpmTheme8" default="false" domain="rel" resourceroot="dynamicSpots" uniquename="FpmTheme8">
<localedata locale="en">
<title>FPM THEME8</title>
</localedata>
<parameter name="com.ibm.portal.theme.dnd.sources" type="string" update="set"><![CDATA[ibmDndColumn:com.ibm.pb.dnd.layout.LayoutColumnSource:vertical,ibmDndRow:com.ibm.pb.dnd.layout.LayoutRowSource:horizontal]]></parameter>
<parameter name="ibm.portal.shelf.category.json.socialrendering" type="string" update="set"><![CDATA[system/SocialCategory.json,label:shelf_communicationsCategory]]></parameter>
<parameter name="com.ibm.portal.layout.template.href" type="string" update="set"><![CDATA[war:FpmTheme8Static/themes/Portal8.0/layout-templates/1Column/]]></parameter>
<parameter name="com.ibm.portal.theme.aggregationmodes" type="string" update="set"><![CDATA[ssa]]></parameter>
<parameter name="resourceaggregation.profile" type="string" update="set"><![CDATA[profiles/profile_full.json]]></parameter>
<parameter name="com.ibm.portal.theme.template.ref" type="string" update="set"><![CDATA[war:FpmTheme8Static/themes/Portal8.0/]]></parameter>
</theme>
</portal>
<status element="all" result="ok"/>
</request>
我記得在以前的安裝,我已經設置了「resourceaggregation.development.mode」屬性(在WP ConfigService的資源環境提供者)按照指示在從Portal 8.0主題複製靜態資源之前指示爲true - 這是我認爲可能與此問題有關的唯一其他配置。
我已經將這個自定義主題分配給了一些頁面,而且看起來他們的行爲是正確的。我沒有看到使用這個新的自定義主題的任何功能或行爲問題,但我根本無法根據需要使JSP重新加載工作。
你有什麼建議我應該看看調試嗎?
感謝您的時間。