添加EJB終結點
可以使用AEM Forms Java API以寫程式方式將EJB端點添加到服務中。 通過將EJB端點添加到服務中,可以使客戶端應用程式使用EJB模式調用該服務。 也就是說,在設定調用AEM Forms所需的連接屬性時,可以選擇EJB模式。 (請參閱 設定連接屬性.)
步驟摘要
要將EJB端點添加到服務,請執行以下任務:
- 包含專案檔案。
- 建立
EndpointRegistry Client
物件。 - 設定EJB終結點屬性。
- 建立EJB終結點。
- 啟用端點。
包含項目檔案
在您的開發專案中加入必要的檔案。 必須將以下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端點
使用Java API添加EJB端點:
-
包含專案檔案。
在您Java專案的類別路徑中加入用戶端JAR檔案,例如adobe-livecycle-client.jar。 (
-
建立EndpointRegistry客戶端對象。
- 建立
ServiceClientFactory
包含連接屬性的對象。 - 建立
EndpointRegistryClient
對象,使用其建構子並傳遞ServiceClientFactory
物件。
- 建立
-
設定EJB終結點屬性。
- 建立
CreateEndpointInfo
物件,使用其建構子。 - 叫用
CreateEndpointInfo
物件setConnectorId
方法和傳遞字串值EJB
. - 叫用
CreateEndpointInfo
物件setDescription
方法,並傳遞描述端點的字串值。 - 叫用
CreateEndpointInfo
物件setName
方法,並傳遞指定名稱的字串值。 - 通過調用
CreateEndpointInfo
物件setServiceId
方法,並傳遞指定服務名稱的字串值。 - 指定通過調用
CreateEndpointInfo
物件setOperationName
方法,並傳遞指定操作名稱的字串值。 對於SOAP和EJB端點,請指定通配符(*
),表示所有操作。
- 建立
-
建立EJB終結點。
叫用
EndpointRegistryClient
物件createEndpoint
方法和傳遞CreateEndpointInfo
物件。 此方法會傳回Endpoint
表示新EJB端點的對象。 -
啟用端點。
叫用
EndpointRegistryClient
對象的啟用方法和傳遞Endpoint
由傳回的物件createEndpoint
方法。
添加SOAP端點
您可以使用AEM Forms Java API以程式設計方式將SOAP端點新增至服務。 通過添加SOAP端點,可以使客戶端應用程式能夠使用SOAP模式調用服務。 也就是說,在設定調用AEM Forms所需的連接屬性時,可以選擇SOAP模式。
步驟摘要
要向服務添加SOAP端點,請執行以下任務:
- 包含專案檔案。
- 建立
EndpointRegistryClient
物件。 - 設定SOAP終結點屬性。
- 建立SOAP端點。
- 啟用端點。
包含項目檔案
在您的開發專案中加入必要的檔案。 如果您是使用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端點
使用Java API將SOAP端點新增至服務:
-
包含專案檔案。
在您Java專案的類別路徑中加入用戶端JAR檔案,例如adobe-livecycle-client.jar。
-
建立EndpointRegistry客戶端對象。
- 建立
ServiceClientFactory
包含連接屬性的對象。 - 建立
EndpointRegistryClient
對象,使用其建構子並傳遞ServiceClientFactory
物件。
- 建立
-
設定SOAP終結點屬性。
- 建立
CreateEndpointInfo
物件,使用其建構子。 - 叫用
CreateEndpointInfo
物件setConnectorId
方法和傳遞字串值SOAP
. - 叫用
CreateEndpointInfo
物件setDescription
方法,並傳遞描述端點的字串值。 - 叫用
CreateEndpointInfo
物件setName
方法,並傳遞指定名稱的字串值。 - 通過調用
CreateEndpointInfo
物件setServiceId
方法,並傳遞指定服務名稱的字串值。 - 指定通過調用
CreateEndpointInfo
物件setOperationName
方法,並傳遞指定操作名稱的字串值。 對於SOAP和EJB端點,請指定通配符(*
),表示所有操作。
- 建立
-
建立SOAP端點。
叫用
EndpointRegistryClient
物件createEndpoint
方法和傳遞CreateEndpointInfo
物件。 此方法會傳回Endpoint
表示新SOAP端點的對象。 -
啟用端點。
叫用
EndpointRegistryClient
物件的啟用方法,並傳遞Endpoint
由傳回的物件createEndpoint
方法。
添加監視的資料夾端點
您可以使用AEM Forms Java API以程式設計方式將「監看資料夾」端點新增至服務。 通過添加「監看資料夾」端點,可讓用戶將檔案(如PDF檔案)放在資料夾中。 將檔案放在資料夾中時,會叫用已設定的服務並處理檔案。 服務執行指定操作後,會將修改的檔案保存在指定的輸出資料夾中。 已設定以固定速率間隔或cron排程(例如每週一、週三和週五中午)掃描受監視的資料夾。
為了以程式設計方式將Watched Folder端點新增至服務,請考慮下列短期程式,名為 EncryptDocument. (請參閱 了解AEM Forms程式.)
此過程接受不安全的PDF文檔作為輸入值,然後將不安全的PDF文檔傳遞給加密服務的 EncryptPDFUsingPassword
操作。 PDF文檔使用密碼加密,而密碼加密的PDF文檔是此過程的輸出值。 輸入值的名稱(不安全的PDF文檔)為 InDoc
而資料類型是 com.adobe.idp.Document
. 輸出值的名稱(密碼加密的PDF文檔)為 SecuredDoc
而資料類型是 com.adobe.idp.Document
.
步驟摘要
要將「監看資料夾」端點添加到服務,請執行以下任務:
- 包含專案檔案。
- 建立
EndpointRegistryClient
物件。 - 設定「監看資料夾」端點屬性。
- 指定配置值。
- 定義輸入參數值。
- 定義輸出參數值。
- 建立「監看資料夾」端點。
- 啟用端點。
包含項目檔案
在您的開發專案中加入必要的檔案。 如果您是使用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 API新增「監看資料夾」端點:
-
包含專案檔案。
在您Java專案的類別路徑中加入用戶端JAR檔案,例如adobe-livecycle-client.jar。
-
建立EndpointRegistry客戶端對象。
- 建立
ServiceClientFactory
包含連接屬性的對象。 - 建立
EndpointRegistryClient
對象,使用其建構子並傳遞ServiceClientFactory
物件。
- 建立
-
設定「監看資料夾」端點屬性。
- 建立
CreateEndpointInfo
物件,使用其建構子。 - 叫用
CreateEndpointInfo
物件setConnectorId
方法和傳遞字串值WatchedFolder
. - 叫用
CreateEndpointInfo
物件setDescription
方法,並傳遞描述端點的字串值。 - 叫用
CreateEndpointInfo
物件setName
方法,並傳遞指定名稱的字串值。 - 通過調用
CreateEndpointInfo
物件setServiceId
方法,並傳遞指定服務名稱的字串值。 - 指定通過調用
CreateEndpointInfo
物件setOperationName
方法,並傳遞指定操作名稱的字串值。 通常,為源自於Workbench中建立的程式的服務建立「監看資料夾」端點時,會叫用操作的名稱。
- 建立
-
指定配置值。
對於要為「監看資料夾」端點設定的每個配置值,必須調用
CreateEndpointInfo
物件setConfigParameterAsText
方法。 例如,若要設定url
配置值,調用CreateEndpointInfo
物件setConfigParameterAsText
方法,並傳遞下列字串值:- 指定配置值名稱的字串值。 設定
url
配置值,指定url
. - 指定配置值的字串值。 設定
url
設定值,指定監看的資料夾位置。
注意
要查看為EncryptDocument服務設定的所有配置值,請參閱位於 快速入門:使用Java API新增「監看資料夾」端點. - 指定配置值名稱的字串值。 設定
-
定義輸入參數值。
叫用
CreateEndpointInfo
物件setInputParameterMapping
方法,並傳遞下列值:- 指定輸入參數名稱的字串值。 例如,EncryptDocument服務的輸入參數的名稱為
InDoc
. - 一個字串值,它指定輸入參數的資料類型。 例如,
InDoc
輸入參數為com.adobe.idp.Document
. - 指定映射類型的字串值。 例如,您可以指定
variable
. - 指定映射類型值的字串值。 例如,可以指定*.pdf作為檔案模式。
注意
叫用setInputParameterMapping
方法來定義每個輸入參數值。 由於EncryptDocument進程只有一個輸入參數,因此您需要調用此方法一次。 - 指定輸入參數名稱的字串值。 例如,EncryptDocument服務的輸入參數的名稱為
-
定義輸出參數值。
叫用
CreateEndpointInfo
物件setOutputParameterMapping
方法,並傳遞下列值:- 指定輸出參數名稱的字串值。 例如,EncryptDocument服務的輸出參數的名稱為
SecuredDoc
. - 一個字串值,它指定輸出參數的資料類型。 例如,
SecuredDoc
輸出參數為com.adobe.idp.Document
. - 指定映射類型的字串值。 例如,您可以指定
%F.pdf
.
- 指定輸出參數名稱的字串值。 例如,EncryptDocument服務的輸出參數的名稱為
-
建立「監看資料夾」端點。
叫用
EndpointRegistryClient
物件createEndpoint
方法和傳遞CreateEndpointInfo
物件。 此方法會傳回Endpoint
表示「監看資料夾」端點的對象。 -
啟用端點。
叫用
EndpointRegistryClient
物件enable
方法和傳遞Endpoint
由傳回的物件createEndpoint
方法。