實施 SOAP 方法

簡介

可在JavaScript中建立SOAP方法。 該功能簡單地啟用了應用程式進程,避免了在表單中開發JSP及其調用。

這些SOAP方法的行為方式與應用程式中原生定義的方法相同。 支援相同的屬性:靜態、僅密鑰和const。

定義方法庫

建立方法庫涉及兩個階段:

  • SOAP方法聲明,
  • JavaScript中的定義(或實作)。

聲明

首先,聲明方案中的方法(有關如何建立和編輯方案的詳細資訊,請參閱本節)。

其聲明與原生方法的聲明類似,但您需要添加'library'屬性,指定定義所在的方法庫的名稱。

此名稱與「JavaScript代碼」類型實體的名稱(與名稱空間)一致。

範例:

testLog(msg)方法在nms:recipient擴展中聲明

<method name="testLog" static="true" library="cus:test">
     <parameters>
       <param name="message" type="string" inout="in"/>
     </parameters>
   </method>
注意

用於庫的名稱空間和名稱獨立於找到聲明的名稱空間和架構名稱。

定義

SOAP方法以JavaScript函式的形式實施,這些函式被分組在表示庫的指令碼中。

注意

方法庫可以對各種模式的函式進行分組,反之亦然,一個模式的函式可以在單獨的庫中定義。

指令碼可包含在初始程式庫載入期間要執行的程式碼。

1. 名稱

函式的名稱必須符合下列格式:

 <schema-namespace>_<schema-name>_<method-name>

範例:

下列JavaScript函式是上述方法的實作。 它應使用「cus:test」名稱在「JavaScript程式碼」類型實體中定義。

function nms_recipient_testLog(message)
 {
   logInfo("*** " + message)
 }

2.簽名

函式的簽名必須包含聲明中每個'in'或'inout'參數的引數。

特定案例:

  • 非靜態方法:函式必須首先包含一個附加引數,與以'xml'(E4X)類型對象形式傳遞的XML實體一致。
  • "key only"類型方法:函式必須首先包含一個附加引數,與以字串形式傳遞的鍵一致。

3.傳回值

函式必須傳回每個'out'或'inout'類型參數的值。 具體案例:如果聲明方法時沒有任何'static'、'key only'或'const'屬性,則第一個返回的值必須與修改的實體一致。 可以返回新對象或返回第一個修改的參數。

例如:

function nms_recipient_setLastName(self, name)
 {
   self.@lastName = name
   return self
 }

若要傳回數個值,這些值必須顯示在表格中。

範例:

function nms_recipient_getKey(self)
 {
   return [self.@firstName, self.@lastName]
 }

本頁內容

Adobe Maker Awards Banner

Time to shine!

Apply now for the 2021 Adobe Experience Maker Awards.

Apply now
Adobe Maker Awards Banner

Time to shine!

Apply now for the 2021 Adobe Experience Maker Awards.

Apply now