建立資料夾

資料夾(資源集合)可用來將物件(檔案或資源)儲存在有組織的群組中。 資料夾可以包含資源和其他資料夾,也稱為子資料夾。 資源一次只能儲存在一個資料夾中。

檔案從資料夾繼承存取控制清單(ACL),子資料夾從其父資料夾繼承ACL。 因此,您必須先存在父資料夾,才能建立子資料夾。 IDE僅允許您逐個資料夾進行互動,而不是逐個檔案進行互動。 您無法設定資料夾的版本,因此不需要設定版本;資料夾本身並不包含資料。 相反地,它只是包含資料之資源的容器。 預設ACL是系統層級的許可權,這表示使用者必須具有系統層級的許可權(讀取、寫入、周遊、管理ACL),直到有人授予他們特定檔案夾的許可權為止。 ACL只能在IDE中運作。

注意
如需存放庫服務的詳細資訊,請參閱AEM Forms的服務參考

步驟摘要

若要建立資料夾,請執行下列步驟:

  1. 包含專案檔案。
  2. 建立服務使用者端。
  3. 建立資料夾。
  4. 將資料夾寫入存放庫。

包含專案檔

在您的開發專案中包含必要的檔案。 如果您使用Java建立使用者端應用程式,請包含必要的JAR檔案。 如果您使用Web服務,請包含Proxy檔案。

建立服務使用者端

您必須先建立連線並提供認證,才能以程式設計方式建立資源集合。 這是透過建立服務使用者端來完成。

建立資料夾

叫用存放庫服務方法建立資源集合,並以識別資訊(包括其UUID、資料夾名稱和說明)填入資源集合。

將資料夾寫入存放庫

叫用存放庫服務方法來寫入資源集合,指定目標資料夾的URI。

另請參閱

使用Java API建立資料夾

使用Web服務API建立資料夾

包含AEM Forms Java程式庫檔案

設定連線屬性

存放庫服務API快速入門

使用Java API建立資料夾

使用存放庫服務API (Java)建立資料夾:

  1. 包含專案檔案

    將專案檔案包含在Java專案的類別路徑中。

  2. 建立服務使用者端

    使用它的建構函式並傳遞包含連線屬性的ServiceClientFactory物件來建立ResourceRepositoryClient物件。

  3. 建立資料夾

    若要建立資源集合,您必須先建立com.adobe.repository.infomodel.bean.RepositoryInfomodelFactoryBean物件。

    叫用repositoryInfomodelFactoryBean物件的newResourceCollection方法,並傳入下列引數:

    • 要指派給資源的com.adobe.repository.infomodel.Id UUID識別碼。
    • 要指派給資源的com.adobe.repository.infomodel.Lid UUID識別碼。
    • 包含資源集合名稱的java.lang.String。 例如,FormsFolder

    此方法會傳回代表新資料夾的com.adobe.repository.infomodel.bean.ResourceCollection物件。

    使用setDescription方法設定資料夾的說明,並傳入下列引數:

    • 說明資源集合的String。 在此範例中,"test Folder"已使用.
  4. 將資料夾寫入存放庫

    叫用ResourceRepositoryClient物件的writeResource方法,並傳入資料夾和ResourceCollection物件的URI。 例如,資料夾的URI可以是下列值/Applications/FormsApplication/1.0/

    此方法會傳回新建立的com.adobe.repository.infomodel.bean.Resource物件的執行個體。 例如,您可以叫用com.adobe.repository.infomodel.bean.Resource物件的getId方法來擷取新資源的識別碼值。

使用Web服務API建立資料夾

使用存放庫服務API (Web服務)建立資料夾:

  1. 包含專案檔案

    • 使用base64建立使用存放庫WSDL的Microsoft .NET使用者端元件。
    • 參考Microsoft .NET使用者端元件。
  2. 建立服務使用者端

    使用Microsoft .NET使用者端元件,透過叫用其預設建構函式來建立RepositoryServiceService物件。 使用包含使用者名稱和密碼的System.Net.NetworkCredential物件設定其Credentials屬性。

  3. 建立資料夾

    使用ResourceCollection類別的預設建構函式建立資料夾,並傳入下列引數:

    • Id物件,這是透過叫用Id類別的預設建構函式所建立,並指派給Resource物件的id欄位。
    • Lid物件,這是透過叫用Lid類別的預設建構函式所建立,並指派給Resource物件的lid欄位。
    • 包含指派給Resource物件之name欄位之資源集合名稱的字串。 此範例中使用的名稱為"testfolder"
    • 包含已指派給Resource物件之description欄位之資源集合說明的字串。 此範例中使用的說明是"test folder"
  4. 將資料夾寫入存放庫

    叫用RepositoryServiceService物件的writeResource方法,並傳入下列引數:

    • 要建立資料夾的路徑。
    • 代表資料夾的ResourceCollection物件。
    • 為其他兩個引數傳遞null

另請參閱

建立資料夾

使用Base64編碼叫用AEM Forms

寫入資源

您可以在存放庫中的指定位置中建立資源。 自然檔案大小受資料庫限制和工作階段逾時的影響。 對於預設設定,檔案限製為25 MB。 若要提高或降低檔案大小上限,您必須變更資料庫組態。

寫入資源等同於將資料儲存在存放庫中。 將資源寫入存放庫後,存放庫生態系統中的所有使用者端都可以存取該資源。 將資源(例如XML結構描述、XDP檔案和XSD檔案)寫入存放庫時,會根據MIME型別來剖析內容。 如果支援MIME型別,剖析器會判斷是否與其他內容有隱含的關係。 例如,如果階層式樣式表(CSS)具有參照一般CSS的相對URL,您應該也會將一般CSS提交至存放庫。 兩個資源之間的關係會儲存為未決關係,為期30天的不可調整期間。 當您在30天內將通用CSS提交至存放庫時,就會建立關係。

當您建立資源時,存取控制清單(ACL)繼承自父資料夾。 在建立初始資源或資料夾之前,根資料夾具有系統層級的許可權,此時資源或資料夾會獲得預設ACL許可權。

您可以使用存放庫服務Java API或Web服務API,以程式設計方式編寫資源。

注意
如需存放庫服務的詳細資訊,請參閱AEM Forms的服務參考

步驟摘要

若要寫入資源,請遵循下列步驟:

  1. 包含專案檔案。
  2. 建立存放庫服務使用者端。
  3. 指定要讀取的資源的URI。
  4. 讀取資源。

包含專案檔

在您的開發專案中包含必要的檔案。 如果您使用Java建立使用者端應用程式,請包含必要的JAR檔案。 如果您使用Web服務,請包含Proxy檔案。

建立服務使用者端

您必須先建立連線並提供認證,才能以程式設計方式讀取資源。 這是透過建立服務使用者端來完成。

指定資源目標資料夾的URI

建立包含要讀取之資源的URI的字串。 語法包含正斜線,如同此範例: "/path/folder"。

建立資源

叫用存放庫服務方法來建立資源,並將識別資訊(包括其UUID、資源名稱和說明)填入資源。

指定資源內容

叫用存放庫服務方法來建立資源內容,並將該內容儲存在資源中。

將資源寫入目標資料夾

叫用存放庫服務方法來寫入資源,指定目標資料夾的URI。

另請參閱

使用Java API寫入資源

使用網站服務API寫入資源

包含AEM Forms Java程式庫檔案

設定連線屬性

存放庫服務API快速入門

使用Java API寫入資源

使用存放庫服務API (Java)編寫資源:

  1. 包含專案檔案

    在您的Java專案的類別路徑中包含使用者端JAR檔案。

  2. 建立服務使用者端

    使用它的建構函式並傳遞包含連線屬性的ServiceClientFactory物件來建立ResourceRepositoryClient物件。

  3. 指定資源目標資料夾的URI

    指定資源之目標資料夾的URI。 在此案例中,因為名為testResource的資源將儲存在名為testFolder的資料夾中,所以資料夾的URI為"/testFolder"。 URI會儲存為java.lang.String物件。

  4. 建立資源

    若要建立資源,您必須先建立com.adobe.repository.infomodel.bean.RepositoryInfomodelFactoryBean物件。

    叫用RepositoryInfomodelFactoryBean物件的newResource方法,這會建立com.adobe.repository.infomodel.bean.Resource物件。 此範例中提供下列引數:

    • com.adobe.repository.infomodel.Id物件,這是透過叫用Id類別的預設建構函式所建立。
    • com.adobe.repository.infomodel.Lid物件,這是透過叫用Lid類別的預設建構函式所建立。
    • 包含資源檔案名稱的java.lang.String

    若要指定資源的描述,請叫用Resource物件的setDescription方法,並傳遞包含描述的字串。 在此範例中,描述為"test resource"

  5. 指定資源內容

    若要建立資源的內容,請叫用RepositoryInfomodelFactoryBean物件的newResourceContent方法,此方法會傳回com.adobe.repository.infomodel.bean.ResourceContent物件。 將內容新增至ResourceContent物件。 在此範例中,這是透過執行下列工作來完成:

    • 正在叫用ResourceContent物件的setDataDocument方法並傳入com.adobe.idp.Document物件
    • 正在叫用ResourceContent物件的setSize方法,並傳入Document物件的大小(位元組)

    叫用Resource物件的setContent方法並傳入ResourceContent物件,以新增內容至資源。 如需詳細資訊,請參閱AEM Forms API參考

  6. 將資源寫入目標資料夾

    叫用ResourceRepositoryClient物件的writeResource方法,並傳入資料夾的URI和Resource物件。

使用網站服務API寫入資源

使用存放庫服務API (Web服務)寫入資源:

  1. 包含專案檔案

    • 使用base64建立使用存放庫WSDL的Microsoft .NET使用者端元件。
    • 參考Microsoft .NET使用者端元件。
  2. 建立服務使用者端

    使用Microsoft .NET使用者端元件,透過叫用其預設建構函式來建立RepositoryServiceService物件。 使用包含使用者名稱和密碼的System.Net.NetworkCredential物件設定其Credentials屬性。

  3. 指定資源目標資料夾的URI

    指定資源之目標資料夾的URI。 在此案例中,因為名為testResource的資源將儲存在名為testFolder的資料夾中,所以資料夾的URI為"/testFolder"。 使用與Microsoft .NET Framework相容的語言時(例如C#),請將URI儲存在System.String物件中。

  4. 建立資源

    若要建立資源,請叫用Resource類別的預設建構函式。 在此範例中,下列資訊儲存在Resource物件中:

    • com.adobe.repository.infomodel.Id物件,這是透過叫用Id類別的預設建構函式所建立,並指派給Resource物件的id欄位。
    • com.adobe.repository.infomodel.Lid物件,這是透過叫用Lid類別的預設建構函式所建立,並指派給Resource物件的lid欄位。
    • 包含指派給Resource物件之name欄位之資源的檔案名稱的字串。 此範例中使用的名稱為"testResource"
    • 包含指派給Resource物件之description欄位之資源描述的字串。 此範例中使用的說明是"test resource"
  5. 指定資源內容

    若要建立資源的內容,請叫用ResourceContent類別的預設建構函式。 然後將內容新增至ResourceContent物件。 在此範例中,這是透過執行下列工作來完成:

    • 正在指派包含檔案的BLOB物件至ResourceContent物件的dataDocument欄位。
    • 正在將BLOB物件的大小指派給ResourceContent物件的size欄位(位元組)。

    ResourceContent物件指派至Resource物件的content欄位,以新增內容至資源。

  6. 將資源寫入目標資料夾

    叫用RepositoryServiceService物件的writeResource方法,並傳入資料夾的URI和Resource物件。 為其他兩個引數傳遞null

列出資源

您可以透過列出資源來探索資源。 對存放庫執行查詢,以尋找與指定資源集合相關的所有資源。

組織資源後,您可以透過檢視結構的特定分支來檢查您建立的結構,就像在作業系統中一樣。

列出資源會依關係操作:資源是資料夾的成員。 成員資格由「成員」型別的關係表示。 當您在指定的資料夾中列出資源時,會透過關係「成員」查詢與指定資料夾相關的資源。 關係具有方向性:關係的成員具有作為目標成員的來源。 來源是資源;目標是父資料夾。

注意
如需存放庫服務的詳細資訊,請參閱AEM Forms的服務參考

步驟摘要

若要列出資源,請遵循下列步驟:

  1. 包含專案檔案。
  2. 建立服務使用者端。
  3. 指定資料夾路徑。
  4. 擷取資源清單。

包含專案檔

在您的開發專案中包含必要的檔案。 如果您使用Java建立使用者端應用程式,請包含必要的JAR檔案。 如果您使用Web服務,請包含Proxy檔案。

建立服務使用者端

您必須先建立連線並提供認證,才能以程式設計方式建立資源集合。 這是透過建立服務使用者端來完成。

指定資料夾路徑

建立包含資源之資料夾路徑的字串。 語法包含正斜線,如同此範例: "/path/folder"。

擷取資源清單

叫用存放庫服務方法來擷取資源清單,指定目標資料夾的路徑。

另請參閱

使用Java API列出資源

使用網站服務API列出資源

包含AEM Forms Java程式庫檔案

設定連線屬性

存放庫服務API快速入門

使用Java API列出資源

使用存放庫服務API (Java)列出資源:

  1. 包含專案檔案

    在您的Java專案的類別路徑中包含使用者端JAR檔案。

  2. 建立服務使用者端

    使用它的建構函式並傳遞包含連線屬性的ServiceClientFactory物件來建立ResourceRepositoryClient物件。

  3. 指定資料夾路徑

    指定要查詢之資源集合的URI。 在此案例中,其URI為"/testFolder"。 URI會儲存為java.lang.String物件。

  4. 擷取資源清單

    叫用ResourceRepositoryClient物件的listMembers方法,並傳入資料夾的URI。

    此方法傳回java.util.Listcom.adobe.repository.infomodel.bean.Resource物件,這些物件是型別Relation.TYPE_MEMBER_OFcom.adobe.repository.infomodel.bean.Relation的來源,且以資源集合URI為目標。 您可以逐一檢視此List,以擷取每個資源。 在此範例中,會顯示每個資源的名稱和說明。

使用網站服務API列出資源

使用存放庫服務API (Web服務)列出資源:

  1. 包含專案檔案

    • 建立使用存放庫WSDL的Microsoft .NET使用者端元件。
    • 參考Microsoft .NET使用者端元件。
  2. 建立服務使用者端

    使用Microsoft .NET使用者端元件,透過叫用其預設建構函式來建立RepositoryServiceService物件。 使用包含使用者名稱和密碼的System.Net.NetworkCredential物件設定其Credentials屬性。

  3. 指定資料夾路徑

    指定包含要查詢之資料夾URI的字串。 在此案例中,其URI為"/testFolder"。 使用與Microsoft .NET Framework相容的語言時(例如C#),請將URI儲存在System.String物件中。

  4. 擷取資源清單

    叫用RepositoryServiceService物件的listMembers方法,並將資料夾的URI傳入做為第一個引數。 為其他兩個引數傳遞null

    方法傳回可轉換為Resource物件的物件陣列。 您可以逐一檢視物件陣列,以擷取每個相關資源。 在此範例中,會顯示每個資源的名稱和說明。

另請參閱

列出資源

使用Base64編碼叫用AEM Forms

正在讀取資源

您可以從儲存庫中的指定位置擷取資源,以讀取其內容和中繼資料。 工作流程會以初始化表單作為前端。 此程式具有讀取表單所需的所有許可權。 系統會擷取資料表單,並從存放庫讀取內容。 存放庫會授予內容和中繼資料的存取權(甚至知道資源存在的能力)。

存放庫有以下四種許可權型別:

  • 周遊:可讓您列出資源;也就是說,可讀取資源中繼資料,但不讀取資源內容
  • 讀取:可讓您讀取資源內容
  • 寫入:可讓您寫入資源內容
  • 管理存取控制清單(ACL):可讓您操控資源上的ACL

使用者只有在其擁有執行流程的許可權時,才能執行流程。 IDE使用者需要周遊和讀取許可權,才能與存放庫同步。 ACL只會在設計時套用,因為執行階段發生在系統內容中。

您可以使用存放庫服務Java API或Web服務API,以程式設計方式讀取資源。

注意
如需存放庫服務的詳細資訊,請參閱AEM Forms的服務參考

步驟摘要

若要讀取資源,請執行下列步驟:

  1. 包含專案檔案。
  2. 建立存放庫服務使用者端。
  3. 指定要讀取的資源的URI。
  4. 讀取資源。

包含專案檔

在您的開發專案中包含必要的檔案。 如果您使用Java建立使用者端應用程式,請包含必要的JAR檔案。 如果您使用Web服務,請包含Proxy檔案。

建立服務使用者端

您必須先建立連線並提供認證,才能以程式設計方式讀取資源。 這是透過建立服務使用者端來完成。

指定要讀取的資源URI

建立包含要讀取之資源的URI的字串。 語法包含正斜線,如同此範例: "/path/resource"。

讀取資源

叫用存放庫服務方法來讀取資源,指定URI。

另請參閱

使用Java API讀取資源

使用網站服務API讀取資源

包含AEM Forms Java程式庫檔案

設定連線屬性

存放庫服務API快速入門

使用Java API讀取資源

使用存放庫服務API (Java)讀取資源:

  1. 包含專案檔案

    在您的Java專案的類別路徑中包含使用者端JAR檔案。

  2. 建立服務使用者端

    使用它的建構函式並傳遞包含連線屬性的ServiceClientFactory物件來建立ResourceRepositoryClient物件。

  3. 指定要讀取的資源的URI

    指定代表要擷取之資源URI的字串值。 例如,假設資源名為​ testResource,而該資源位於名為​ testFolder ​的資料夾中,請指定/testFolder/testResource

  4. 讀取資源

    叫用ResourceRepositoryClient物件的readResource方法,並將資源的URI作為引數傳遞。 此方法會傳回代表資源的Resource執行個體。

另請參閱

正在讀取資源

快速入門(SOAP模式):使用Java API讀取資源

包含AEM Forms Java程式庫檔案

設定連線屬性

使用網站服務API讀取資源

使用存放庫服務API (Web服務)讀取資源:

  1. 包含專案檔案

  2. 建立服務使用者端

    使用Microsoft .NET使用者端元件,透過叫用其預設建構函式來建立RepositoryServiceService物件。 使用包含使用者名稱和密碼的System.Net.NetworkCredential物件設定其Credentials屬性。

  3. 指定要讀取的資源的URI

    指定包含要擷取之資源URI的字串。 在此案例中,由於名為testResource的資源位於名為testFolder的資料夾中,其URI為"/testFolder/testResource"。 使用與Microsoft .NET Framework相容的語言時(例如C#),請將URI儲存在System.String物件中。

  4. 讀取資源

    叫用RepositoryServiceService物件的readResource方法,並將資源的URI傳遞為第一個引數。 為其他兩個引數傳遞null