本章包含下列項目:
本節包含下列項目:
社群範本由一組服務 (通道) 和可視配置組成。不過,社群範本不一定會表示配置,例如在 wiki 社群範本中,配置由 wiki 自己表示。社群範本在角色顯示設定檔文件中定義社群可用的服務類型、每項服務的預設設定,以及連結服務的容器。
實際上,社群範本是由屬性檔案、影像以及一個或多個顯示設定檔文件組成。每個社群角色 (例如 OWNER、VISITOR、MEMBER) 都擁有顯示設定檔文件。每個角色範本定義了與特定角色關聯的服務和配置 (如需這些角色的詳細資訊,請參閱管理成員資格)。角色範本的內容會在顯示設定檔文件中顯示。實際上,社群範本包含處理不同角色 (每一角色各一個顯示設定檔文件) 以及取決於一個或多個角色的邏輯,您可取得一組不同的服務和不同的配置。將社群標記為刪除 (deleted.xml) 或停用 ( disable.xml) 時,也會產生可用於自訂內容的顯示設定檔文件。
可透過社群範本建立社群。系統可擁有任意數目的社群範本。在「企業範例」中,一般使用者可在建立社群時選擇社群範本。
社群範本儲存在檔案系統中。社群範本儲存在 PortalServer-DataDir/portals/portal-URI/communitytemplates 目錄中 (此目錄稱為 communityTemplateBaseDir)。請注意,這表示每個入口網站 (在多重入口網站部署環境中) 必須擁有一組自己的社群範本。communityTemplateBaseDir 中的資源束定義與每個範本相關的中介資料。此外,每個範本都擁有用來儲存角色範本的目錄。
communityTemplateBaseDir -+-- template1 -+-- deleted.xml | | | +-- disabled.xml | | | +-- member.xml | | | +-- owner.xml | | | +-- visitor.xml | -+-- template2 -+-- deleted.xml | | | +-- disabled.xml | | | +-- member.xml | | | +-- owner.xml | | | +-- visitor.xml | -+-- template3 -+-- deleted.xml | | | +-- disabled.xml | | | +-- member.xml | | | +-- owner.xml | | | +-- visitor.xml | +-- template1.properties | +-- template1_en.properties | +-- template1_fr.properties | +-- template2.properties | +-- template3.properties | +-- template3_en_US.properties | +-- ...
顯示設定檔 disabled.xml 和 deleted.xml 檔案會控制社群在被停用或被標記為刪除後的內容。如需詳細資訊,請參閱管理社群狀態。
入口網站管理員可在系統中新增社群範本、更新現有社群範本、歸檔及復原社群範本,以及將社群範本從一個入口網站實例匯出至其他實例,及/或使它們保持同步。
每個範本都由一個或多個 XML 格式的角色範本 (member.xml、owner.xml、 visitor.xml、deleted.xml、disabled.xml) 組成。範本目錄包含它所服務之角色的 XML 檔案,例如,用於社群成員的 member.xml、用於社群所有者的 owner.xml,以及用於社群訪客的 visitor.xml。
每個角色範本都是該角色的社群使用者的顯示設定檔文件。檔案必須以顯示設定檔 DTD 為基礎。
<?xml version="1.0" encoding="utf-8" standalone="no"?> <!DOCTYPE DisplayProfile SYSTEM "jar://resources/psdp.dtd"> <DisplayProfile version="1.0" priority="%COMMUNITY_DP_PRIORITY%"> <Properties/> <Channels> <Container name="%COMMUNITY_CONTAINER%" provider="JSPTableContainerProvider"> <Properties> <String name="title" value="%COMMUNITY_NAME%"/> <String name="description" value="%COMMUNITY_DESCRIPTION%"/> <Boolean name="compileToRealPath" value="true"/> </Properties> <Available>...</Available> <Selected>...</Selected> <Channels>...</Channels> </channels> <Providers/> </DisplayProfile>
在建立社群時,範本引擎會使用實際值動態替代顯示設定檔中的下述記號 (由 % 括住)。
為社群指定 (對使用者友善) 名稱。例如,tourists。
指定識別群組的唯一字串。此名稱僅用於內部表示,不會在使用者介面中公開。例如,jdo__tourists。
包含社群的描述。
指定社群的頂層容器。例如,jdo__touristsContainer。
指定合併了產生社群顯示設定檔的優先順序的顯示設定檔。會為每個角色提供不同的值。預設情況下,訪客角色、成員角色和所有者角色的值分別為 1000、1005、1010。
指定社群的搜尋伺服器 URL。
指定社群內容的搜尋資料庫。
指定討論資料庫。
指定入口網站的 ID。例如,portal1。
每個範本都包含資源束屬性檔案,用於定義與該範本相關的中介資料。資源束是可本土化的描述元檔案。每個範本描述元檔案 (必須) 定義下列屬性:
指定範本的唯一 ID。ID 必須符合範本目錄名稱。例如,若範本目錄名稱為 Baseball,且該目錄包含所有三個受支援角色的角色範本 (或 XML 檔案),則 ID 為 Baseball。
在使用者介面 (入口網站桌面) 中指定對使用者友善的名稱來識別範本。例如,Baseball Template。
詳細描述範本及其所提供的服務。例如,Baseball-themed template containing the following services: Player Statistics, Game Discussions, TV Schedule, and Online Chat。
包含範本角色檔案中所用的記號的清單。這僅供參考,並非必需。例如, %COMUNITY_ID% %COMMUNITY_DESCRIPTION% %COMMUNITY_CONTAINER%。
為入口網站環境指定絕對 URI 或相對 URI。例如,http://images.domain.com/images/baseball.jpg。相對 URI 必須相對於入口網站 web-app 環境路徑。
id=Baseball name=Baseball Template description=Baseball-themed template containing the following services: Player Statistics, Game Discussions, TV Schedule, and Online Chat tokens=%COMUNITY_ID% %COMMUNITY_DESCRIPTION% %COMMUNITY_CONTAINER% previewImageURI=http://images.domain.com/images/baseball.jpg |
可依照本節中的指示建立新範本或修改現有範本。您可使用下列三種方式之一建立範本:
使用 psadmin 公用程式匯出範本、新增內容以及匯入內容。
建立內容並匯入內容以覆寫現有範本。
將新檔案新增至現有範本。
移至 communityTemplateBaseDir。
建立:
新範本的新目錄
將現有範本複製到新的範本目錄
例如,鍵入:
cd PortalServer-DataDir/portals/portal-URI/communitytemplates mkdir NewTemplate cp 2column/* NewTemplate/ |
在新的範本目錄中,視需要修改以角色為基礎的顯示設定檔文件。
如需以角色為基礎之顯示設定檔文件的詳細資訊,請參閱範本語法和語義。
建立並編輯屬性檔案,以包含「範本描述元檔案」中所述的屬性,然後儲存檔案。
例如,要為新範本建立新的屬性檔案,請鍵入:
cp 2colimn.properties NewTemplate.properties |
或者,
touch NewTemplate.properties |
要查看新增的範本,可登出任何目前的入口網站階段作業,然後重新登入即可看到變更。
在多重入口網站環境中 (系統中有一個以上的入口網站),使用 PAR 機制 (而非直接編輯 communityTemplateBaseDir 中的檔案) 以跨多重入口網站套用社群範本的變更。如此會讓所有入口網站擁有一組相同的社群範本。如果不想使用跨入口網站的同步環境,請使用為單一入口網站環境建立新範本中的指示。
可使用 psadmin export --type desktop 匯出桌面資料 (包含社群範本),然後將它匯出以編輯內容;也可只使用社群範本 (而不使用任何其他桌面資料) 從頭開始建立新的 PAR 結構。
依照為單一入口網站環境建立新範本中的指示編輯內容。
建立包含下列內容的新 PAR 檔案:
-+-- META-INF -- MANIFEST.MF | +-- pbfiles -+-- communityTemplateBaseDir -+-- template1 -+-- deleted.xml | | | | | +-- disabled.xml | | | | | +-- member.xml | | | | | +-- owner.xml | | | | | +-- visitor.xml | | | +-- template1.properties | | | +-- template1_en.properties | | | +-- template1_fr.properties | | | +-- ... | +-- static -- community -- images -- template1.gif
視需要編輯或新增內容。
建立新 PAR 檔案。
使用 psadmin import 子指令跨所有入口網站匯入 PAR 內容。
如果您匯出所有桌面資料,請注意 psadmin export 子指令將匯出所有桌面資料;如果您只使用社群範本從頭開始建立新 PAR 結構,則該指令只會匯出社群範本。
如需詳細資訊,請參閱「Sun Java System Portal Server 7.2 Command-Line Reference」中的「psadmin export」。