從舊版雲端基礎架構移轉 Oracle Content Management 執行處理

如果您的 Oracle Content Management 執行處理在舊版雲端基礎架構上執行且使用非計量付費訂閱,Oracle 建議您將這些執行處理移轉到新的原生 Oracle Cloud Infrastructure (OCI) 環境 — 第二代 OCI (亦即使用「基礎架構主控台」管理服務執行處理)。這可確保您享有未來 Oracle 雲端平台的優點與進階功能。

若要起始移轉,您必須先執行一些步驟,才能進行移轉並透過 Oracle 客戶服務部排定移轉事宜。

  1. 將您的訂閱移轉至通用點數訂閱。請洽詢 Oracle 業務代表,協助您完成此作業。
  2. 使用「基礎架構主控台」在 OCI 上為 Oracle Content Management 建立新執行處理。此執行處理將會是您移轉資料的目標執行處理。在移轉完成之前,請勿使用此執行處理。
  3. 移轉傳統雲端帳戶的使用者Oracle Identity Cloud Service (IDCS) 帳戶。請務必保留使用者名稱,以便在移轉處理作業中可以適當地指定角色和權限。在匯出的 CSV 檔案中,使用者名稱項目稱為「使用者登入」。將會根據使用者對應指定使用者角色。
  4. 準備移轉包括收集服務要求所需要的資訊,並針對移轉之後將需要採取的步驟建立所有整合清單。
  5. 送出移轉服務要求,以及確認移轉日期與時間。
  6. 監看移轉的進度。服務要求將會隨著移轉進度更新,當移轉完成後,系統將會要求您確認新的執行處理是否如預期般運作。
  7. 完成執行處理中所有與其他服務或應用程式整合的移轉所需步驟,即可完成移轉
  8. 移轉包含資產的網站並將它們設為符合多語言網站。
  9. 移轉您的資產 (移轉期間排除的資產)。
  10. 向使用者告知變更。

使用者對應

此表格說明 Oracle Content Management 權限群組與 OCI 應用程式角色的對應。

Oracle Content Management 權限群組 OCI 應用程式角色
DocumentsServiceUser CECStandardUser
DocumentsServiceAdmin CECServiceAdministrator
SitesServiceVisitor CECSitesVisitor
SitesServiceAdmin CECSitesAdministrator
ContentAdministratorRole CECContentAdministrator
CECSStandardUser CECStandardUser
CECSEnterpriseUser CECEnterpriseUser

註:

如果目標 IDCS 網域已經包含相同使用者名稱的使用者,就會為使用者指定與使用者 Oracle Content Management 權限群組相應的 OCI 應用程式角色。

準備移轉

  • 記下建立之新執行處理 (目標) 的 URL,將它包含在您的移轉要求中。
  • 記下舊的執行處理 (來源) URL,將它包含在您的移轉要求中。
  • 以直接或透過 REST API 呼叫的方式,為舊執行處理中所有與任何其他服務或應用程式的整合建立產品目錄。若有任何此類的整合,您都必須在移轉之後採取某些動作。

送出移轉服務要求

準備好進行移轉後,您必須送出移轉要求,才能開始進行處理作業:

  1. 登入 Oracle Cloud 支援。
  2. 建立新的服務要求。
  3. 針對問題類型選取服務執行處理移轉,然後選擇從非計量付費訂閱至 OCI-Gen2
  4. 在服務要求中提供下列資訊:
    • 來源執行處理 (從該執行處理進行移轉) 的 URL
    • 目標執行處理 (要移轉至該執行處理) 的 URL
    • 如果您使用 Oracle 提供的 Akamai,請於服務要求中註明,以便我們在移轉後協調時間以更新 Akamai 組態中的 URL
  5. 提供希望開始進行移轉的偏好日期。
  6. 送出服務要求。

    Oracle 客戶服務部在收到您的移轉服務要求後,將會依據您要求的日期排定移轉,並以移轉的開始日期與時間更新此服務要求。

  7. 在服務要求中確認您同意此移轉的開始日期與時間。

系統將會更新此服務要求以顯示移轉的進行狀況。資料移轉會在後端執行;除了配合所有的服務要求更新進度,以及在移轉完成後進行驗證之外,您無須採取任何動作。

移轉處理作業

以下是移轉過程中會發生的情況:

  1. Oracle 客戶服務部會在移轉開始之後更新服務要求。

    重要:

    此時,請不要對舊的 (來源) 執行處理進行任何變更。在移轉開始後所做的任何變更都不會移轉到新的執行處理。
  2. 內容與組態資料會從舊的執行處理 (來源) 匯出,然後匯入新的執行處理 (目標) 中。
  3. 移轉完成後,Oracle 客戶服務部便會更新服務要求,系統也會要求您驗證新的執行處理,以確定一切都如預期般運作。
  4. 若發現任何問題,請在服務要求中註明。Oracle 客戶服務部將致力解決您的問題,並透過服務要求讓您知道執行處理已可進行驗證。
  5. 若一切都如預期般運作,請在服務要求中註明您接受已移轉的執行處理。

註:

舊的執行處理將會維持一段時間,讓您可以返回進行驗證。您在移轉所有使用資產的網站移轉所有其他資產時 (移轉期間排除了這兩項作業),也會用到舊的執行處理。

完成移轉

如果舊的執行處理已直接或透過 REST API 呼叫與其他服務或應用程式整合或進行通訊,您可能需要執行移轉後工作。

下列各項適用於整個服務:

  • 檢視 OCI 應用程式角色,並指定來源執行處理中並未存在的角色,例如 CECRepositoryAdministrator 應用程式角色。
  • 針對用到使用者證明資料的所有整合,重新設定這些證明資料。證明資料不會被移轉。
  • Oracle Content Management URL 樣式不同,因此您需要更新使用這些 URL 之整合中的 URL。

    舊的 URL 使用的樣式如下:

    https://<service-name>-<account-name>.<region>.oraclecloud.com/documents

    新的 URL 使用的樣式如下:

    https://<service-name>-<account-name>.<service-type>.ocp.oraclecloud.com/documents

  • 重新設定 CORS內嵌的內容設定值。目標服務設定值不會移轉。
  • 標準網站將會進行移轉,但企業網站則不會進行移轉。為每個企業網站建立樣板,以手動方式移轉企業網站及所有與網站關聯的數位資產和內容項目,從來源執行處理匯出樣板,並匯入樣板至目標執行處理。
  • 移除或更新移轉網站中使用的所有自訂控制器。
整合 移轉後待辦事項
Oracle Integration
  • 重新設定證明資料。
  • 更新 Oracle Integration Cloud 中的 Oracle Content Management URL。
Oracle Commerce Cloud
  • 重新設定證明資料。
  • 更新 Oracle Commerce Cloud 中的 Oracle Content Management URL。
Oracle Process Cloud Service
  • 重新設定證明資料。
Oracle Eloqua Cloud Service
  • 重新設定證明資料。
Oracle Intelligent Advisor
  • 重新設定證明資料。
Oracle Cobrowse Cloud Service
  • 重新設定證明資料。
Responsys
  • 重新設定證明資料。
Visual Builder Cloud Service (VBCS)
  • 重新設定證明資料。
  • 更新 VBCS 元件中的 Oracle Content Management URL。
CDN/Akamai
  • 如果您使用 Oracle 提供的 Akamai,請與 Oracle 客戶服務部協調時間以更新 Akamai 組態中的 Oracle Content Management URL。否則,您必須自行更新 CDN 組態中的 URL。
REST API 呼叫
  • 更新所有 REST API 呼叫中的 Oracle Content Management URL。
從屬端 SDK/CLI 使用
  • 如果 URL 被保存/快取至從屬端本機,則請更新組態中的 Oracle Content Management URL。
連線器
  • 重新設定證明資料。

註:

舊執行處理中的任何內容書籤將不再有作用,因為新執行處理的 URL 已變更。

移轉包含資產的網站

包含資產的網站將會自動移轉,但包含資產的網站則需要執行一些額外的步驟,才能夠讓這些資產在新的 Oracle Content Management 執行處理中運作。

安裝 OCE 工具程式

"cec migrate-site" 是新的命令,因此您將需要從 Webclient Git 儲存區域安裝 OCE 工具程式,即使您先前已下載且已安裝也是如此。

依照Sites 工具程式頁面中的指示下載並安裝 OCE 工具程式。

註冊目標伺服器

註冊目標伺服器的連線詳細資訊 (要將網站移轉至該伺服器):

> cec register-server <target_server_name>
          -e http://<target_server>:<target_port>
          -u <target_username> -p <target_password>
          -t pod_ec
  • <target_server_name> 主要用於識別目標端點,可以是選擇的任意名稱。
  • <target_server> 和 <target_port> 構成供用於存取目標伺服器的 URL。
  • <target_username> 和 <target_password> 必須是將從來源伺服器匯出網站樣板之人員的使用者名稱和密碼,如此在移轉期間匯入樣板時才不會發生權限問題。
  • "pod_ec" 值是目標伺服器類型,用來識別建置執行處理的伺服器類型。

移轉您的網站

若要移轉您的網站,請執行下列步驟:

  1. 在來源伺服器上,從每個包含資產的網站建立樣板
  2. 在來源伺服器上,匯出每個樣板。請確定以您註冊目標伺服器時所參照的使用者身分執行此步驟。
  3. 在目標伺服器上,以儲存區域管理員 (具備 CECRepositoryAdministrator 角色的使用者) 身分登入。然後,為將與樣板一起匯入的資產建立儲存區域
  4. 針對每個下載的樣板,執行下列命令,並將 <site_name> 取代為您希望網站在目標伺服器上的名稱:
    > cec migrate-site <site_name> --template <template_path_and_name> 
    --destination <registered_target_server_name> --repository <repository_name>
  5. 在目標伺服器上,適當地共用移轉的網站和資產。

移轉後步驟

移轉您的網站後,將會使用 Content REST v1.1 呼叫來執行網站。這可能會導致一些問題,需要先解決這些問題才能正確地執行網站。請查看下列幾點事項來判斷您需要執行的作業:

  • 如果您使用的是 ContentSDK,您的呼叫將會自動更新為使用 v1.1 Content REST 呼叫。
  • 如果您的內容版面配置沒有顯示支援 v1.1,ContentSDK 將會在回應中新增只會指向 "fields" 項目 (v1.1) 的 "data" 項目 (v1.0),因此您的樣板可以繼續作業,不會有任何變更。
  • 如果您在其他查詢字串中使用 "fields.type.equals=" v1.0 Content REST 語法,我們會嘗試剖析並將此語法修改為 v1.1 語法,但您應該加以驗證。
  • 如果您進行任何直接 (而不是透過 ContentSDK) Content REST v1.0 呼叫,將會失敗。您將需要修正自訂程式碼並升級這些呼叫。
  • 同樣地您也需要自訂內容查詢,將 "fields.type.equals=" v1.0 語法修改為 "q=(type eq "..")" 語法。
  • "updateddate" 與 "updatedDate":CaaS 應該會修正這類內容,但您需要將 "updateddate" 值變更為 camelCase 的 "updatedDate" 值,直到我們取得 Content REST v1.1 支援這兩個值的 EC 建構為止。

讓您移轉的網站符合多語言網站 (MLS)

您的網站正確執行之後,接著需要讓您的網站符合 MLS。若要在外部運算伺服器中建立企業網站,則需要預設語言和本地化規定。由於是將您的網站整個複製,它並不是 MLS 網站,因此您需要將網站升級為 MLS 網站,以確保網站能夠支援未來的功能。

下列表格顯示 MLS 和非 MLS 網站的差異。

網站物件 MLS 網站 非 MLS 網站
內容項目 將會顯示內容項目語言變異,而非拖放至頁面的內容項目。語言可以根據呈現網站時所要求的語言而改變。 一律顯示拖放至頁面的內容項目。
內容版面配置 「內容版面配置」必須支援 v1.1 API。若不支援,則不會出現內容項目,而是顯示警告。這是因為所有的 v1.1 API 呼叫都新增了 v1.0 API 不支援的 "locale"。 內容版面配置可以是 v1.0 或 v1.1。如果內容版面配置僅支援 v1.0,則 ContentSDK 將會在回應中新增 "data" 項目以符合 "fields" 項目。可能仍有其他問題,所以這不應視為未升級內容版面配置的支援功能。
內容清單 只會顯示要求語言變異中的內容項目。 無論語言為何,將會顯示所有內容項目。使用者可以選擇內容清單中的選項來固定特定語言結果,因此在以不同語言顯示結果的頁面中,您可以擁有兩個內容清單。MLS 網站無法使用這個用以選擇語言的設定值面板選項。
defaultLocale MLS 網站具有預設網站地區設定。這表示所有內容查詢只會傳回在此地區設定 (或不可翻譯) 的內容項目。 在非 MLS 網站中沒有預設地區設定,因此,無論語言為何,使用的內容查詢均會傳回所有內容項目。
本地化規定

定義網站可使用的語言清單。產生器中會有本地化規定的下拉式清單。

此外,在管理 UI 中,也會有語言的下拉式清單,讓您以要求的語言開啟/預覽。

因為沒有本地化規定,產生器將移除用以切換語言的下拉式清單。

在管理 UI 中,不會列出語言,包括沒有「預設」語言。這是在管理 UI 中分辨非 MLS 與 MLS 網站的方式。

翻譯/可翻譯 管理 UI 中的相關內容功能表具有「翻譯」選項。這可讓您建立翻譯工作來翻譯網站。

管理 UI 中的相關內容功能表具有「可翻譯」選項。非 MLS 實際上是不可翻譯網站,因此您需要先將網站設為可翻譯 (MLS) 網站,才能進行翻譯。

這也是您將網站從非 MLS 升級為 MLS 的方式。

注意:此作業只能單向操作。網站無法降級為不可翻譯網站。

您需要執行下列作業,才能將網站設為 MLS 網站:

  • 將所有內容版面配置元件升級以支援 Content REST API v1.1
  • 升級網站中所有內容清單的「其他查詢字串」,以便與 Content REST API v1.1 相容

接者,如果您碰巧擁有可進行 Content REST 呼叫的自訂元件程式碼,也需要將其升級以進行 v1.1 呼叫。這不是常見的狀況,因為大部分情況都是從內容版面配置進行內容呼叫。

升級內容版面配置

指定支援的 Content REST API 版本

內容版面配置需要指定他們所支援的 Content REST API 版本。這是為了確保會進行適當的 Content REST 呼叫,以便將預期回應資料傳回給版面配置。

如果您未指定支援的任何版本,系統將假設內容版面配置僅支援 v1.0。

主控台會列出仍使用 v1.0 的內容版面配置。

若要讓您的內容版面配置支援其他版本,請將 "contentVersion" 特性新增至內容版面配置物件。

在以下範例中,它顯示支援 v1.0 且小於 2.0 的所有版本 (備註:2.0 並不存在,主要版本變更可能會引進重大變革)

// Content Layout
          definition.ContentLayout.prototype = {    // Specify the versions of
          the Content REST API that are supported by the this Content Layout.    // The value for contentVersion follows Semantic Versioning
          syntax.    // This allows applications that use the
          content layout to pass the data through in the expected format.    contentVersion: ">=1.0.0
          <2.0.0",     // Main rendering function:    // - Updates the data to handle any required additional requests and
          support both v1.0 and v1.1 Content REST APIs    // - Expand the Mustache template with the updated data
            // - Appends the expanded template HTML to the
          parentObj DOM element    render: function (parentObj)
          {

處理 v1.1 回應變更

您至少需要將處理 Content REST API 回應從 "data" 變更為 "fields"。最簡單的方式就是加回 "data" 特性,並指向新的 "fields" 特性:

render: function (parentObj)
          {    ...    if(!content.data) {        content.data =
          content.fields;    }

更好的方式是在內容版面配置中全部改用 v1.1 "fields" 值。這將與更新 JavaScript 和樣板程式碼有關。

若要完整支援 v1.1,您將需要處理下列 v1.0 和 v1.1 之間的 Content REST API 差異:

內容 REST API 變更 v1.1 v1.0
"fields" vs. "data"
"items": [{    "type": "Starter-Blog-Author",    "name": "Alex Read",    "id": "COREB62DBAB5CEDA4915A9C9F6050E554F63",    "fields":
          {        "starter-blog-author_bio": "Alex's bio",        "starter-blog-author_name": "Alex Read"        }    },
"items": [{    "type": "Starter-Blog-Author",    "name": "Alex Read",    "id": "COREB62DBAB5CEDA4915A9C9F6050E554F63",    "data":
          {        "starter-blog-author_bio": "Alex's bio",        "starter-blog-author_name": "Alex Read"        }    },
camelCase 特性名稱 "updatedDate" "updateddate"
查詢格式 /items?q=(type eq "Starter-Blog-Author") /items?fields.type.equals="Starter-Blog-Author"
API 版本 /content/management/api/v1.1/items /content/management/api/v1/items
特定語言查詢 /content/management/api/v1.1/items?q=((type eq "Promo") and (language eq "en-US" or translatable eq "false"))

不支援。

您需要移轉所有自訂 v1 呼叫以包含「語言」選項。

如此能確保以特定語言檢視時,結果與 MLS 網站所傳回的內容保持一致。

升級內容查詢字串

您可能會以任何自訂程式碼進行 Content API 呼叫,因此您需要驗證網站中用來進行 Content REST API 呼叫的所有自訂程式碼。

  • 自訂元件:檢查下列元件:
    • 內容版面配置
    • 本機元件
    • 區段版面配置
    • 遠端元件
  • 主題:JavaScript:雖然可能性不大,不過您的主題可能具有進行自訂 Content REST API 呼叫的 JavaScript,因此也需要驗證這些 JavaScript。
  • 網站特性:其他查詢字串:確認您已經將所有進行 Content REST API 呼叫的自訂程式碼升級之後,也需要將網站中任何頁面之任何「內容清單」元件中的「其他查詢字串」升級。當我們在程式實際執行嘗試剖析及轉換這些字串時,這些字串也應升級為與 v1.1 Content REST 呼叫相容以繼續取得支援。

將非 MLS 網站轉換為 MLS 網站

當您已將網站轉換為完整支援 v1.1 Content REST API,您可以藉由變更為 MLS 網站來新增語言支援。

如果在網站管理 UI 中選取您的網站,您將會看到「可翻譯」內容功能表選項。選取此選項將會顯示一個對話方塊,要求您從本地化規定的必要語言清單中選擇網站的本地化規定與預設語言。如果沒有任何本地化規定,您將無法完成此步驟,且您必須先前往內容管理畫面,然後至少使用一個必要語言建立本地化規定。

完成此步驟之後,您的網站現在將會以預設地區設定呈現。也能讓您切換至本地化規定中指定的其他地區設定。

您需要確認網站是否如預期以預設的地區設定呈現。

移轉您的資產

移轉您的網站時,也會移轉與網站關聯的資產;網站中若有用到未與網站建立關聯的資產,則需要個別進行移轉。

開始進行移轉之前,請先考量下列幾點:

  • 只有與集合關聯的資產能夠進行移轉。如果想要移轉未與集合建立關聯的資產,您必須先將他們新增至集合,才能夠進行移轉。
  • 非計量付費執行處理中的資產不支援多種語言,所以當您移轉資產時,預設語言將會繼承自儲存區域的預設語言。在移轉您的資產之前,請確定儲存區域的預設語言設為所需的預設語言。
  • 只有已發布的項目會進行移轉。如果您在移轉之後遺漏項目,請確認是否已在來源執行處理中發布遺漏的項目。
  • 若有任何一個已發布項目具有草稿版本,該草稿版本將成為目標執行處理上的已發布版本,而來源執行處理的原始發布版本將會遺失。
  • Oracle Content Management 非計量付費版本中,使用者可以在檢視內容項目時選擇「內容版面配置」檢視或「內容」檢視。在目前的 Oracle Content Management 版本中,「內容」檢視已被取代為內容表單檢視,而且已將「內容版面配置」檢視移除。

若要移轉您的資產,請執行下列步驟:

  1. 如果您尚未安裝,請安裝 OCE 工具程式。
  2. 註冊來源與目標伺服器。
  3. 移轉資產的集合。

註冊來源與目標伺服器

註冊來源與目標伺服器的連線詳細資訊。

註冊來源伺服器 (要從該伺服器移轉資產):

> cec register-server <source_server_name>
          -e http://<source_server>:<source_port>
          -u <source_username> -p <source_password>
          -t pod_ic
  • <source_server_name> 主要用於識別來源端點,可以是選擇的任意名稱。
  • <source_server> 和 <source_port> 構成供用於存取來源伺服器的 URL。
  • <source_username> 和 <source_password> 必須是可以存取來源伺服器上資產之人員的使用者名稱和密碼。
  • "pod_ic" 值是來源伺服器類型,用來識別建置執行處理的伺服器類型。

註冊目標伺服器 (要將資產移轉至該伺服器):

> cec-install % cec register-server <target_server_name>
          -e http://<source_server>:<source_port>
          -u <target_username> -p <target_password>
          -t pod_ec
  • <target_server_name> 主要用於識別目標端點,可以是選擇的任意名稱。
  • <target_server> 和 <target_port> 構成供用於存取目標伺服器的 URL。
  • <target_username> 和 <target_password> 必須是將擁有目標伺服器上資產之人員的使用者名稱和密碼。
  • "pod_ec" 值是目標伺服器類型,用來識別建置執行處理的伺服器類型。

移轉資產的集合

執行以下命令移轉資產的集合:

> cec migrate-content <source_collection_name> --server  <source_server_name>
      --destination <target_server_name> --repository <target_repository_name> --collection  <target_collection_name> --channel
    <target_channel_name>

資產將會在指定儲存區域中的目標伺服器上建立,並會與集合和通道建立關聯。如有必要,將會自動建立集合和通道。所有移轉資產的預設語言將會是指定儲存區域中設定的預設語言。

向使用者告知變更

向您的使用者告知新服務 URL。桌面與行動裝置使用者將需要使用新帳戶設定裝置並重新同步所有內容。