添加EJB終結點

可以使用AEM Forms Java API以寫程式方式將EJB端點添加到服務中。 通過將EJB端點添加到服務中,可以使客戶端應用程式使用EJB模式調用該服務。 也就是說,在設定調用AEM Forms所需的連接屬性時,可以選擇EJB模式。 (請參閱 設定連接屬性.)

注意
不能使用Web服務添加EJB終結點。
注意
通常,EJB端點預設會添加到服務中。但是,EJB端點可以添加到以寫程式方式部署的進程中,或者在刪除EJB端點時添加到該進程中,並且必須重新添加。

步驟摘要

要將EJB端點添加到服務,請執行以下任務:

  1. 包含專案檔案。
  2. 建立 EndpointRegistry Client 物件。
  3. 設定EJB終結點屬性。
  4. 建立EJB終結點。
  5. 啟用端點。

包含項目檔案

在您的開發專案中加入必要的檔案。 必須將以下JAR檔案添加到項目的類路徑中:

  • adobe-livecycle-client.jar
  • adobe-usermanager-client.jar
  • adobe-utilities.jar(若AEM Forms部署在JBoss Application Server上則為必要)
  • jbossall-client.jar(若AEM Forms部署在JBoss Application Server上則為必要)

有關這些JAR檔案的位置的資訊,請參見 包含AEM Forms Java程式庫檔案.

建立EndpointRegistry客戶端對象

在以寫程式方式添加EJB端點之前,必須先建立 EndpointRegistryClient 物件。

設定EJB終結點屬性

要為服務建立EJB端點,請指定以下值:

  • 連接器識別碼:指定要建立的端點類型。 要建立EJB終結點,請指定 EJB.
  • 說明:指定端點說明。
  • 名稱:指定端點的名稱。
  • 服務標識符:指定端點所屬的服務。
  • 操作名稱:指定使用端點調用的操作的名稱。 建立EJB端點時,請指定通配符( *)。 但是,如果要指定特定操作而不是調用所有服務操作,請指定操作的名稱,而不是使用通配符( *)。

建立EJB終結點

設定EJB終結點屬性後,可以為服務建立EJB終結點。

啟用端點

建立新端點後,必須啟用它。 啟用端點後,即可用來叫用服務。 啟用端點後,您就可以在管理控制台中檢視它。

另請參閱

使用Java API添加EJB端點

包含AEM Forms Java程式庫檔案

設定連接屬性

使用Java API添加EJB端點

使用Java API添加EJB端點:

  1. 包含專案檔案。

    在您Java專案的類別路徑中加入用戶端JAR檔案,例如adobe-livecycle-client.jar。 (

  2. 建立EndpointRegistry客戶端對象。

    • 建立 ServiceClientFactory 包含連接屬性的對象。
    • 建立 EndpointRegistryClient 對象,使用其建構子並傳遞 ServiceClientFactory 物件。
  3. 設定EJB終結點屬性。

    • 建立 CreateEndpointInfo 物件,使用其建構子。
    • 叫用 CreateEndpointInfo 物件 setConnectorId 方法和傳遞字串值 EJB.
    • 叫用 CreateEndpointInfo 物件 setDescription 方法,並傳遞描述端點的字串值。
    • 叫用 CreateEndpointInfo 物件 setName 方法,並傳遞指定名稱的字串值。
    • 通過調用 CreateEndpointInfo 物件 setServiceId 方法,並傳遞指定服務名稱的字串值。
    • 指定通過調用 CreateEndpointInfo 物件 setOperationName 方法,並傳遞指定操作名稱的字串值。 對於SOAP和EJB端點,請指定通配符( *),表示所有操作。
  4. 建立EJB終結點。

    叫用 EndpointRegistryClient 物件 createEndpoint 方法和傳遞 CreateEndpointInfo 物件。 此方法會傳回 Endpoint 表示新EJB端點的對象。

  5. 啟用端點。

    叫用 EndpointRegistryClient 對象的啟用方法和傳遞 Endpoint 由傳回的物件 createEndpoint 方法。

添加SOAP端點

您可以使用AEM Forms Java API以程式設計方式將SOAP端點新增至服務。 通過添加SOAP端點,可以使客戶端應用程式能夠使用SOAP模式調用服務。 也就是說,在設定調用AEM Forms所需的連接屬性時,可以選擇SOAP模式。

注意
不能使用Web服務添加SOAP端點。
注意
通常,SOAP端點預設會添加到服務中。但是,SOAP端點可以添加到以寫程式方式部署的進程中,或者在刪除SOAP端點時添加,並且必須重新添加。

步驟摘要

要向服務添加SOAP端點,請執行以下任務:

  1. 包含專案檔案。
  2. 建立 EndpointRegistryClient 物件。
  3. 設定SOAP終結點屬性。
  4. 建立SOAP端點。
  5. 啟用端點。

包含項目檔案

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

必須將以下JAR檔案添加到項目的類路徑中:

  • adobe-livecycle-client.jar
  • adobe-usermanager-client.jar
  • adobe-utilities.jar(若AEM Forms部署在JBoss Application Server上則為必要)
  • jbossall-client.jar(若AEM Forms部署在JBoss Application Server上則為必要)

建立SOAP端點時需要這些JAR檔案。 但是,如果使用SOAP端點調用服務,則需要添加JAR檔案。 如需AEM Forms JAR檔案的相關資訊,請參閱 包含AEM Forms Java程式庫檔案.

建立EndpointRegistry客戶端對象

要以寫程式方式將SOAP端點添加到服務,必須建立 EndpointRegistryClient 物件。

設定SOAP終結點屬性

要向服務添加SOAP端點,請指定以下值:

  • 連接器識別碼值:指定要建立的端點類型。 要建立SOAP端點,請指定 SOAP.
  • 說明:指定端點說明。
  • 名稱:指定端點名稱。
  • 服務標識符值:指定端點所屬的服務。
  • 操作名稱:指定使用端點調用的操作的名稱。 建立SOAP端點時,請指定通配符( *)。 但是,如果要指定特定操作而不是調用所有服務操作,請指定操作的名稱,而不是使用通配符( *)。

建立SOAP端點

設定SOAP端點屬性後,可以建立SOAP端點。

啟用端點

建立新端點後,必須啟用它。 啟用端點時,可用來叫用服務。 啟用端點後,您就可以在管理控制台中查看它。

另請參閱

使用Java API添加SOAP端點

包含AEM Forms Java程式庫檔案

設定連接屬性

使用Java API添加SOAP端點

使用Java API將SOAP端點新增至服務:

  1. 包含專案檔案。

    在您Java專案的類別路徑中加入用戶端JAR檔案,例如adobe-livecycle-client.jar。

  2. 建立EndpointRegistry客戶端對象。

    • 建立 ServiceClientFactory 包含連接屬性的對象。
    • 建立 EndpointRegistryClient 對象,使用其建構子並傳遞 ServiceClientFactory 物件。
  3. 設定SOAP終結點屬性。

    • 建立 CreateEndpointInfo 物件,使用其建構子。
    • 叫用 CreateEndpointInfo 物件 setConnectorId 方法和傳遞字串值 SOAP.
    • 叫用 CreateEndpointInfo 物件 setDescription 方法,並傳遞描述端點的字串值。
    • 叫用 CreateEndpointInfo 物件 setName 方法,並傳遞指定名稱的字串值。
    • 通過調用 CreateEndpointInfo 物件 setServiceId 方法,並傳遞指定服務名稱的字串值。
    • 指定通過調用 CreateEndpointInfo 物件 setOperationName 方法,並傳遞指定操作名稱的字串值。 對於SOAP和EJB端點,請指定通配符( *),表示所有操作。
  4. 建立SOAP端點。

    叫用 EndpointRegistryClient 物件 createEndpoint 方法和傳遞 CreateEndpointInfo 物件。 此方法會傳回 Endpoint 表示新SOAP端點的對象。

  5. 啟用端點。

    叫用 EndpointRegistryClient 物件的啟用方法,並傳遞 Endpoint 由傳回的物件 createEndpoint 方法。

添加監視的資料夾端點

您可以使用AEM Forms Java API以程式設計方式將「監看資料夾」端點新增至服務。 通過添加「監看資料夾」端點,可讓用戶將檔案(如PDF檔案)放在資料夾中。 將檔案放在資料夾中時,會叫用已設定的服務並處理檔案。 服務執行指定操作後,會將修改的檔案保存在指定的輸出資料夾中。 已設定以固定速率間隔或cron排程(例如每週一、週三和週五中午)掃描受監視的資料夾。

為了以程式設計方式將Watched Folder端點新增至服務,請考慮下列短期程式,名為 EncryptDocument. (請參閱 了解AEM Forms程式.)

aw_aw_encryptdocumentprocess

此過程接受不安全的PDF文檔作為輸入值,然後將不安全的PDF文檔傳遞給加密服務的 EncryptPDFUsingPassword 操作。 PDF文檔使用密碼加密,而密碼加密的PDF文檔是此過程的輸出值。 輸入值的名稱(不安全的PDF文檔)為 InDoc 而資料類型是 com.adobe.idp.Document. 輸出值的名稱(密碼加密的PDF文檔)為 SecuredDoc 而資料類型是 com.adobe.idp.Document.

注意
無法使用Web服務添加「監視的資料夾」端點。

步驟摘要

要將「監看資料夾」端點添加到服務,請執行以下任務:

  1. 包含專案檔案。
  2. 建立 EndpointRegistryClient 物件。
  3. 設定「監看資料夾」端點屬性。
  4. 指定配置值。
  5. 定義輸入參數值。
  6. 定義輸出參數值。
  7. 建立「監看資料夾」端點。
  8. 啟用端點。

包含項目檔案

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

必須將以下JAR檔案添加到項目的類路徑中:

  • adobe-livecycle-client.jar
  • adobe-usermanager-client.jar
  • adobe-utilities.jar(若AEM Forms部署在JBoss Application Server上則為必要)
  • jbossall-client.jar(若AEM Forms部署在JBoss Application Server上則為必要)

有關這些JAR檔案的位置的資訊,請參見 包含AEM Forms Java程式庫檔案.

建立EndpointRegistry客戶端對象

若要以程式設計方式新增「監看資料夾」端點,您必須建立 EndpointRegistryClient 物件。

設定「監看資料夾」端點屬性

若要為服務建立「監看資料夾」端點,請指定以下值:

  • 連接器識別碼:指定所建立的端點類型。 若要建立「監看資料夾」端點,請指定 WatchedFolder.
  • 說明:指定端點的說明。
  • 名稱:指定端點的名稱。
  • 服務標識符:指定端點所屬的服務。 例如,要將「監看資料夾」端點新增至本區段引入的程式(使用Workbench啟動的程式會變成服務),請指定 EncryptDocument.
  • 操作名稱:指定使用端點調用的操作的名稱。 通常,為源自於Workbench中建立的程式的服務建立「監看資料夾」端點時,操作的名稱為 invoke.

指定配置值

以程式設計方式將「監看資料夾」端點新增至服務時,必須指定「監看資料夾」端點的設定值。 如果使用管理控制台添加了「監看資料夾」端點,管理員將指定這些配置值。

以下清單指定當以寫程式方式將Watched Folder端點添加到服務時設定的配置值:

  • url:指定已監視的資料夾位置。 在群集環境中,此值必須指向可從群集中的每台電腦訪問的共用網路資料夾。
  • 非同步:將調用類型標識為非同步或同步。 只能同步調用瞬態和同步進程。 預設值為true。 建議使用非同步。
  • cronExpression:由石英用於調度輸入目錄的輪詢。
  • purgeDuration:這是必填屬性。 結果資料夾中的檔案和資料夾早於此值時將被清除。 此值以天計量。 此屬性有助於確保結果資料夾未滿。 值為–1天表示絕不刪除結果資料夾。 預設值為–1。
  • repeatInterval:掃描「觀看」資料夾以進行輸入的間隔(秒)。 除非啟用限制,否則此值應比處理平均作業的時間長;否則,系統可能會變得過載。 預設值為 5。
  • repeatCount:監視的資料夾掃描資料夾或目錄的次數。 值–1表示掃描不確定。 預設值為–1。
  • throttleOn:限制可在任何指定時間處理的「已監看資料夾」作業數。 作業的最大數量由batchSize值確定。
  • userName:從「觀看的資料夾」叫用目標服務時使用的使用者名稱。 此值是必填的。 預設值為SuperAdmin。
  • domainName:使用者的網域。 此值是必填的。 預設值為DefaultDom。
  • batchSize:每次掃描要提取的檔案或資料夾數。 使用此值來防止系統過載;一次掃描太多檔案可能會導致當機。 預設值為 2。
  • waitTime:建立後掃描資料夾或檔案之前等待的時間(以毫秒為單位)。 例如,如果等待時間是36,000,000毫秒(一小時),而檔案是在一分鐘前建立的,則此檔案會在59分鐘或更久的時間過後擷取。 此屬性對於確保檔案或資料夾被完全複製到輸入資料夾非常有用。 例如,如果要處理大型檔案,而要下載該檔案需要10分鐘,請將等待時間設定為10*60*1000毫秒。 如果已等待10分鐘,此設定將阻止監視的資料夾掃描該檔案。 預設值為 0。
  • excludeFilePattern:觀看的資料夾用於確定要掃描和拾取的檔案和資料夾的模式。 系統不會掃描任何具有此模式的檔案或資料夾以進行處理。 當輸入是包含多個檔案的資料夾時,此設定很實用。 資料夾的內容可複製到具有名稱的資料夾中,該名稱將被觀看的資料夾擷取。 此步驟可防止觀看的資料夾在資料夾完全複製到輸入資料夾之前,擷取資料夾以進行處理。 例如,如果excludeFilePattern值為 data*,所有符合 data* 沒有被接走。 這包括名為的檔案和資料夾 data1, data2等。 此外,該模式可以用通配符模式來補充,以指定檔案模式。 監看的資料夾會修改規則運算式以支援萬用字元模式,例如 *.**.pdf. 規則運算式不支援這些萬用字元模式。
  • includeFilePattern:觀看的資料夾用來決定要掃描和擷取的資料夾和檔案的模式。 例如,如果此值為 *,所有符合 input* 被撿起。 這包括名為的檔案和資料夾 input1, input2等。 預設值為 *。此值表示所有檔案和資料夾。 此外,該模式可以用通配符模式來補充,以指定檔案模式。 監看的資料夾會修改規則運算式以支援萬用字元模式,例如 *.**.pdf. 規則運算式不支援這些萬用字元模式。 此值是必填的。
  • resultFolderName:儲儲存存結果的資料夾。 此位置可以是絕對路徑或相對目錄路徑。 如果結果未出現在此資料夾中,請檢查失敗資料夾。 不會處理唯讀檔案,且會儲存在失敗資料夾中。 預設值為 result/%Y/%M/%D/。這是監看資料夾內的結果資料夾。
  • preserveFolderName:成功掃描和拾取檔案後儲存檔案的位置。 此位置可以是絕對、相對或空目錄路徑。 預設值為 preserve/%Y/%M/%D/
  • failureFolderName:保存故障檔案的資料夾。 此位置一律與已觀看的資料夾相對。 不會處理唯讀檔案,且會儲存在失敗資料夾中。 預設值為 failure/%Y/%M/%D/
  • preserveOnFailure:如果無法對服務執行操作,則保留輸入檔案。 預設值為true。
  • overwriteDuplicateFilename:設為true時,會覆寫結果資料夾和保留資料夾中的檔案。 設為false時,名稱會使用具有數值索引尾碼的檔案和資料夾。 預設值為false。

定義輸入參數值

建立「監看資料夾」端點時,必須定義輸入參數值。 也就是說,您必須說明傳遞至受監視資料夾叫用之操作的輸入值。 例如,請考量本主題中引入的程式。 它有一個輸入值,名為 InDoc 其資料類型 com.adobe.idp.Document. 為此程式建立「監看資料夾」端點時(啟動程式後,該端點會變成服務),您必須定義輸入參數值。

要定義「監看資料夾」端點所需的輸入參數值,請指定以下值:

輸入參數名稱:輸入參數的名稱。 輸入值的名稱是在Workbench中為流程指定的。 如果輸入值屬於服務操作(不是在Workbench中建立的進程的服務),則輸入名稱在component.xml檔案中指定。 例如,本部分引入的進程的輸入參數的名稱為 InDoc.

對應類型:用於配置調用服務操作所需的輸入值。 映射類型有兩種:

  • Literal:「監看資料夾」端點會使用在顯示時輸入欄位的值。 支援所有基本Java類型。 例如,如果API使用String、long、int和Boolean等輸入,則會將字串轉換為適當的類型,並叫用服務。
  • Variable:輸入的值是檔案模式,監看資料夾用於選擇輸入。 例如,如果為映射類型選擇「變數」,且輸入文檔必須是PDF檔案,則可以指定 *.pdf作為對應值。

對應值:指定映射類型的值。 例如,若您選取 Variable 映射類型,可以指定 *.pdf 作為檔案模式。

資料類型:指定輸入值的資料類型。 例如,本部分引入的進程輸入值的資料類型為 com.adobe.idp.Document.

定義輸出參數值

建立「監看資料夾」端點時,必須定義輸出參數值。 也就是說,您必須說明由Watched Folder端點叫用的服務傳回的輸出值。 例如,請考量本主題中引入的程式。 其輸出值名為 SecuredDoc 其資料類型 com.adobe.idp.Document. 為此程式建立「監看資料夾」端點時(啟動程式後,該端點會變成服務),您必須定義輸出參數值。

要定義「監看資料夾」端點所需的輸出參數值,請指定以下值:

輸出參數名稱:輸出參數的名稱。 流程輸出值的名稱在Workbench中指定。 如果輸出值屬於服務操作(不是在Workbench中建立的進程的服務),則輸出名稱在component.xml檔案中指定。 例如,本節中引入的進程的輸出參數的名稱為 SecuredDoc.

對應類型:用於配置服務和操作的輸出。 可使用下列選項:

  • 如果服務返回單個對象(單個文檔),則模式為 %F.pdf 而來源目的地為sourcefilename.pdf。 例如,本節中引入的程式會傳回單一檔案。 因此,對應類型可定義為 %F.pdf ( %F 表示使用指定的檔案名稱)。 模式 %E 指定輸入文檔的擴展。
  • 如果服務傳回清單,模式為 Result\%F\,而源目標為Result\sourcefilename\source1(output 1)和Result\sourcefilename\source2(output 2)。
  • 如果服務傳回地圖,模式為 Result\%F\,源目標為Result\sourcefilename\file1和Result\sourcefilename\file2。 如果地圖有多個物件,則模式為 Result\%F.pdf 而源目標是Result\sourcefilename1.pdf(output 1)、Result\sourcefilenam2.pdf(output 2)等。

資料類型:指定傳回值的資料類型。 例如,本節中引入的進程返回值的資料類型為 com.adobe.idp.Document.

建立「監看資料夾」端點

設定端點的屬性、配置值,並定義輸入和輸出參數值後,必須建立「監看資料夾」端點。

啟用端點

建立「監看資料夾」端點後,必須啟用它。 啟用端點時,可用來叫用服務。 啟用端點後,您就可以在管理控制台中檢視它。

另請參閱

使用Java API新增「監看資料夾」端點

包含AEM Forms Java程式庫檔案

設定連接屬性

使用Java API新增「監看資料夾」端點

使用AEM Forms Java API新增「監看資料夾」端點:

  1. 包含專案檔案。

    在您Java專案的類別路徑中加入用戶端JAR檔案,例如adobe-livecycle-client.jar。

  2. 建立EndpointRegistry客戶端對象。

    • 建立 ServiceClientFactory 包含連接屬性的對象。
    • 建立 EndpointRegistryClient 對象,使用其建構子並傳遞 ServiceClientFactory 物件。
  3. 設定「監看資料夾」端點屬性。

    • 建立 CreateEndpointInfo 物件,使用其建構子。
    • 叫用 CreateEndpointInfo 物件 setConnectorId 方法和傳遞字串值 WatchedFolder.
    • 叫用 CreateEndpointInfo 物件 setDescription 方法,並傳遞描述端點的字串值。
    • 叫用 CreateEndpointInfo 物件 setName 方法,並傳遞指定名稱的字串值。
    • 通過調用 CreateEndpointInfo 物件 setServiceId 方法,並傳遞指定服務名稱的字串值。
    • 指定通過調用 CreateEndpointInfo 物件 setOperationName 方法,並傳遞指定操作名稱的字串值。 通常,為源自於Workbench中建立的程式的服務建立「監看資料夾」端點時,會叫用操作的名稱。
  4. 指定配置值。

    對於要為「監看資料夾」端點設定的每個配置值,必須調用 CreateEndpointInfo 物件 setConfigParameterAsText 方法。 例如,若要設定 url 配置值,調用 CreateEndpointInfo 物件 setConfigParameterAsText 方法,並傳遞下列字串值:

    • 指定配置值名稱的字串值。 設定 url 配置值,指定 url.
    • 指定配置值的字串值。 設定 url 設定值,指定監看的資料夾位置。
    注意
    要查看為EncryptDocument服務設定的所有配置值,請參閱位於 快速入門:使用Java API新增「監看資料夾」端點.
  5. 定義輸入參數值。

    叫用 CreateEndpointInfo 物件 setInputParameterMapping 方法,並傳遞下列值:

    • 指定輸入參數名稱的字串值。 例如,EncryptDocument服務的輸入參數的名稱為 InDoc.
    • 一個字串值,它指定輸入參數的資料類型。 例如, InDoc 輸入參數為 com.adobe.idp.Document.
    • 指定映射類型的字串值。 例如,您可以指定 variable.
    • 指定映射類型值的字串值。 例如,可以指定*.pdf作為檔案模式。
    注意
    叫用 setInputParameterMapping 方法來定義每個輸入參數值。 由於EncryptDocument進程只有一個輸入參數,因此您需要調用此方法一次。
  6. 定義輸出參數值。

    叫用 CreateEndpointInfo 物件 setOutputParameterMapping 方法,並傳遞下列值:

    • 指定輸出參數名稱的字串值。 例如,EncryptDocument服務的輸出參數的名稱為 SecuredDoc.
    • 一個字串值,它指定輸出參數的資料類型。 例如, SecuredDoc 輸出參數為 com.adobe.idp.Document.
    • 指定映射類型的字串值。 例如,您可以指定 %F.pdf.
  7. 建立「監看資料夾」端點。

    叫用 EndpointRegistryClient 物件 createEndpoint 方法和傳遞 CreateEndpointInfo 物件。 此方法會傳回 Endpoint 表示「監看資料夾」端點的對象。

  8. 啟用端點。

    叫用 EndpointRegistryClient 物件 enable 方法和傳遞 Endpoint 由傳回的物件 createEndpoint 方法。