Interfejs REST dla zasobów związanych z definicją BPD-zasób usługi-metoda PUT (wartościowanie kodu javascript)

Ta metoda służy do oceny fragmentu kodu JavaScript w kontekście działającej instancji usługi. Ta funkcja API nie jest obsługiwana dla przepływów usług, które są włączone dla wywołań asynchronicznych.

Przykładowe wywołanie metody

PUT /rest/bpm/wle/v1/service/{instanceId}?action={string}&script={string}

Alternatywne wywołanie metody

POST /rest/bpm/wle/v1/service/{instanceId}?action={string}&script={string}

Użycie notatek

Parametry

Wymagane parametry
NazwaTyp wartościOpis
działanie łańcuch
Łańcuch wskazujący działanie, które ma zostać wykonane dla usługi.
WartośćOpis
JS
Wartościuje fragment kodu JavaScript w kontekście uruchomionej usługi.
skrypt łańcuch
Łańcuch zawierający fragment kodu JavaScript , który ma być wartościowany.

Treść żądania

Brak

Treść odpowiedzi

Wynik usługi (wynik complexType).

Domyślny typ treści toapplication/json.

Typ MIME: application/json


Schemat
{"description": "Wynik usługi WLE", 
   "type":"object",
   "właściwości":
   {
      "result": {"type": "[ łańcuch]",
         "description": "łańcuchowa reprezentacja obiektu JSON, która reprezentuje wynik uzyskany podczas wartościowania wyrażenia JavaScript w kontekście aktualnie uruchomionej usługi."
      }
      "resultMap": {"type": "[ obiekt]",
         "description": "Obiekt JSON, który reprezentuje wynik uzyskany podczas wartościowania wyrażenia javascript w kontekście aktualnie uruchomionej usługi."
      }
   }
}
Przykładowa treść
{
   "status": "200",
   "data": {
      "result": "{\"instanceId\" :null, \"currentPosition\": {\" replacement \": {}, \"iId\": \"null-0\" }, \" requisition \":{\"instanceId\":null,\"date\":\"2011-04-28T21:12:29Z\"}} "
   }
}

Typ MIME: application/xml


Schemat
<?xml version="1.0" encoding="UTF-8"?>
< schema targetNamespace= "http://rest.bpm.ibm.com/v1/data/service"
	elementFormDefault="unqualified"
	xmlns="http://www.w3.org/2001/XMLSchema"
	xmlns:tns = "http://rest.bpm.ibm.com/v1/data/service"
	xmlns:pref = "http://rest.bpm.ibm.com/v1/data/root"
	xmlns:cmn = "http://rest.bpm.ibm.com/v1/data/common">

    < import schemaLocation= "Common.xsd" namespace= "http://rest.bpm.ibm.com/v1/data/common" />
    < import schemaLocation= "BPMRestData.xsd" namespace= "http://rest.bpm.ibm.com/v1/data/root" />

    <!--
	Ten typ reprezentuje model usługi.
    -->
    <complexType name= "ServiceModel">
	<complexContent>
	    < extension base= " pref :Data">
		<sequence>

		    <! -- To pole odpowiada części "header" modelu usługi -- >
		    < element name="header "type="tns: Header" />

		    <! -- To pole odpowiada części "diagram" modelu usługi -- >
		    < element name="diagram "type="tns: Diagram" />

		    <! -- To pole odpowiada części "dataModel" modelu usługi -- >
		    < element name= "dataModel" type="tns:DataModel" />
		</sequence>
	    </extension>
	</complexContent>
    </complexType>

    <complexType name="Header">
	<sequence>

	    <! -- Unikalny identyfikator usługi -- >
	    < element name = "UUID "type="string" />
	    
	    <! -- Typ usługi -- >
	    < element name = "type "type = "string" />
	    
	    <! -- Nazwa usługi -- >
	    < element name = "nazwa "type = "łańcuch" />

	    <! -- Opis usługi -- >
	    < element name = "description "type = "łańcuch" />
	    < element name= "richDescription" type = "string " />
	    
	    <! -- Identyfikator obrazu stanu usługi -- >
	    < element name= "snapshotId" type = "string " />
	    
	    <! -- Ostrzeżenie -- >
	    < element name = "warning "type = "łańcuch" />

	    <! -- nieużywane -- >
	    < element name= "startTaskURL" type = "string " />

	    <! -- nieużywane -- >
	    < element name= "startServiceURL" type = "string " />
	</sequence>
    </complexType>


    <complexType name="Diagram">
	<sequence>

	    <! -- Lista kroków powiązanych z usługą -- >
	    < element name = "step "type="tns:ServiceStep" minOccurs= "0 " maxOccurs= "unbounded" />
	</sequence>
    </complexType>

    <complexType name= "DataModel">
	<sequence>

	    <! -- Zmienne (właściwości) powiązane z usługą
	         Klucz jest nazwą właściwości.
	         Wartość zawierająca opis właściwości:
	            * type (nazwa typu)
	            * isList
	            * opis
	            * richDescription
	    -->
	    < element name="properties "type="cmn :Map" />

	    <! -- Zmienne wejściowe powiązane z usługą
	         Klucz jest nazwą zmiennej.
	         Wartość zawierająca opis parametru:
	            * type (nazwa typu)
	            * isList
	            * opis
	            * richDescription
	    -->
	    < element name="inputs "type="cmn :Map" />

	    <! -- Zmienne wyjściowe powiązane z usługą
	         Klucz jest nazwą zmiennej.
	         Wartość TThe zawierająca opis parametru:
	            * type (nazwa typu)
	            * isList
	            * opis
	            * richDescription
	    -->
	    < element name="output "type="cmn :Map" />

        <! -- Szczegółowe informacje na temat typów przywoływanych przez usługę.
             Każdy typ, do którego istnieje odwołanie, oraz typy zagnieżdżone, są opisane.
	         Klucz jest nazwą typu.
	         Wartość jest mapą informacji na temat typu. Oto niektóre z pól:
	            * ID, wzorzec, właściwości, isShared, opcje, min, max, description, fixedLength
	    -->
	    <! -- Struktura wyjaśniająca model danych usługi -- >
	    < element name="validation "type="cmn :Map" />
	</sequence>
    </complexType>

    <!--
	Ten typ reprezentuje krok powiązany z usługą.
    -->
    <complexType name= "ServiceStep">
	<sequence>

	    <! -- Identyfikator kroku -- >
	    < element name = "ID "type="string" />

	    <! -- Nazwa kroku -- >
	    < element name = "nazwa "type = "łańcuch" />

	    <! -- współrzędna Y punktu środkowym kroku na diagramie -- >
	    < element name = "x "type = "int" />
	    < element name = "y "type = "int" />

	    <! -- Typ kroku -- >
	    < element name = "type "type = "string" />
	    
	    	    
	    <! -- Dane integracji usług Web Service -- >
	    < element name = "data "type="tns:WSIntegrationData" />

	    <! -- Zestaw linii rozciągających się od tego kroku na diagramie -- >
	    < element name = "lines "type="tns:ServiceStepWiersze" />
	</sequence>
    </complexType>
    
    <!-- 
	 Ten typ reprezentuje dane integracji usług Web Service
    -->
    <complexType name= "WSIntegrationData">
	<sequence>
	    < element name= "wsdlURI" type = "string " />
	    < element name= "serviceName" type = "string " />
	    < element name= "portName" type = "string " />
	    < element name= "operationName" type = "string " />
	    < element name= "isProtectedWSDL" type = "boolean" />
        < element name= "isOverrideEndpointAddress" type = "boolean" />
        < element name= "endpointAddressURL" type = "łańcuch " />
	</sequence>
    </complexType>
    
    <!-- 
	 Ten typ reprezentuje zestaw wierszy powiązanych z krokiem usługi.
    -->
    <complexType name= "ServiceStep">
	<sequence>
	    < element name= "stepLine" minOccurs= "0 " maxOccurs= "unbounded" type="tns:ServiceStep" />
	</sequence>
    </complexType>

    <!--
	Ten typ reprezentuje jeden wiersz powiązany z krokiem usługi.
    -->
    <complexType name= "ServiceStepLine">
	<sequence>

	    <! -- Identyfikator kroku, do którego rozciąga się ten wiersz -- >
	    < element name = "to "type = "string" />

	    <!-- 
		 Łańcuch zawierający rozdzielaną przecinkami listę współrzędnych, przez które rozciąga się ten wiersz.
		 Lista punktów musi zawierać pierwszy punkt (współrzędna "fromPort"). 
		 i ostatni punkt (współrzędna "toPort").
	    -->
	    < element name = "points "type = "string" />
	</sequence>
    </complexType>
    
    
    <!--
	Ten typ zawiera informacje związane z działającą usługą
    -->
    <complexType name= "ServiceRunModel">
	<complexContent>
	    < extension base= " pref :Data">
		<sequence>

		    <! -- Status usługi; wartości: "end", "running", "coach", "error", "debug" -- >
		    < element name= "serviceStatus" type = "string " />

		    <!-- 
			 Identyfikator uruchomionej usługi lub instancji zadania.
			 Jest to identyfikator, który ma być używany podczas wznawiania usługi lub zadania.
		    -->
		    < element name = "key "type = "string" />

		    <! -- Identyfikator bieżącego kroku w kontekście uruchomionej usługi -- >
		    < element name = "step "type = "łańcuch" />

		    <! -- Flaga, aby określić, czy została ona przywróta do pewnego kroku -- >
		    < element name = "reset "type =" boolean " />

		    <! -- Unikalny identyfikator bieżącego kroku w kontekście uruchomionej usługi -- >
		    < element name= "stepId" type = "string " />

		    <! -- Identyfikator zamówienia, które implementuje ten krok -- >
		    < element name= "poId" type = "string " />

		    <! -- Identyfikator elementu processItem kroku -- >
		    < element name= "processItemId" type="string " />

		    <! -- Dane (tabela symboli) powiązane z uruchomionym usługą -- >
		    < element name = "data "type="anyType" />

		    <! -- Jeśli status usługi to "coach", to pole zawiera dane XML formatki -- >
		    < element name = "formatka "type = "łańcuch" />

		    <! -- Jeśli status usługi to "coach", to pole zawiera mapę wartościowanych wartości formatek -- >
		    < element name= "coachEvals" type="cmn :Map " />

		    <! -- Jeśli status usługi to "coach", to pole zawiera listę dostępnych działań (punkt końcowy) -- >
		    < element name = "actions "type="string" minOccurs= "0 " maxOccurs= "unbounded" />
		    
		     <! -- Jeśli status usługi to "coach", to pole zawiera mapę działań i powiązanych etykiet -- >
		    < element name= "actionsMap" type="cmn :Map " />
		    
		</sequence>
	    </extension>
	</complexContent>
    </complexType>
    
    <complexType name= "CoachEval">
        <sequence>
            < element name = "ID "type="string" />
	    < element name = "value "type = "łańcuch" />
        </sequence>
    </complexType>
    
    
    <!--    
	 Ten typ reprezentuje listę aktualnie działających usług
    -->
    <complexType name= "CurrentlyRunning">
    	<complexContent>
	    < extension base= " pref :Data">
		<sequence>

		    <! -- Lista kluczy usług, które są obecnie uruchomione dla bieżącego użytkownika -- >
		    < element name= "instanceIDs" type="string " minOccurs= "0" maxOccurs= "unbounded " />
		</sequence>
	    </extension>
        </complexContent>
    </complexType>
    

    <!--
	Ten typ reprezentuje wynik uzyskany podczas wartościowania wyrażenia JavaScript.
	w kontekście aktualnie działającej usługi
    -->
    <complexType name="Wynik ">
    	<complexContent>
	    < extension base= " pref :Data">
		<sequence>
		    < element name = "result "type="string" minOccurs= "0 " maxOccurs= "1" />
		    <!--
		     Informacje o danych zapisane w rzeczywistej mapie
		    -->
		    < element name= "resultMap" type="cmn :Map " minOccurs= "0" />
		</sequence>
	    </extension>
        </complexContent>
    </complexType>
    
</schema>
Przykładowa treść
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
< bpm:ResponseData xmlns:bpm = 'http://rest.bpm.ibm.com/v1/data' >
  <status>200</status>
  < data xmlns:xsi = 'http://www.w3.org/2001/XMLSchema-instance' xmlns:svc = 'http://rest.bpm.ibm.com/v1/data/service' xsi:type= ' svc :Result '>
    < result> {&quot;instanceId&quot; :null, &quot;currentPosition&quot;: {&quot; replacement &quot;: {},&quot;iId&quot;:&quot;null-0&quot;}, &quot; requisition &quot;:{&quot;instanceId&quot;:null,&quot;date&quot;:&quot;2011-04-28T21:12:29Z&quot;}} < /result>
  < /data>
< /bpm:ResponseData>

Typ MIME: application/x-javascript

Treść odpowiedzi o błędzie

Szczegółowe informacje o błędzie.

Domyślny typ treści toapplication/json.

Typ MIME: application/json


Schemat
{"description": "Odpowiedź na błąd WLE", 
   "type":"object",
   "właściwości":
   {"status": {"typ": "łańcuch",
         "description": "Status poprzedniego wywołania funkcji API."
      },
      "exceptionType": {"typ": "łańcuch",
         "description": "Nazwa klasy powiązana z wyjątkiem."
      },
      "errorNumber": {"typ": "łańcuch",
         "description": "Identyfikator komunikatu wyjątku."
      },
      "errorMessage": {"type": "string",
         "description": "Tekst komunikatu wyjątku."
      },
      "errorMessageParametry": {"type": [ "string"], "optional": true,
         "description": "Parametry tekstu komunikatu wyjątku."
      },
      "programmersDetails": {"type": "obiekt", "opcjonalny": true,
         "description": "Dodatkowe szczegóły wyjątku, na przykład stos wywołań."
      }
   }
} 

Typ MIME: application/xml


Schemat
<?xml version="1.0" encoding="UTF-8"?>
< schema targetNamespace= "http://rest.bpm.ibm.com/v1/data/exception"
	elementFormDefault= "unqualified" xmlns= "http://www.w3.org/2001/XMLSchema"
	xmlns:tns = "http://rest.bpm.ibm.com/v1/data/exception"
	xmlns:dat = "http://rest.bpm.ibm.com/v1/data/root">

    < import schemaLocation= "BPMRestData.xsd" namespace= "http://rest.bpm.ibm.com/v1/data/root" />
    
    <!--
	Ten typ reprezentuje odpowiedź na błąd.
    -->    
    < element name= "RestRuntimeException">
	<complexType>
	    <sequence>
		< element name = "status "type="string" />
		< element name="Data " type="tns:ExceptionData">
    		</element>
	    </sequence>
	</complexType>
    </element>

    <!-- 
	 Ten typ zawiera szczegółowe informacje o błędach powiązane z wyjątkiem.
    -->
    <complexType name= "ExceptionData">
	<sequence>
	    < element name = "status "type="string" />

	    <! -- Ta opcja określa nazwę klasy języka Java dla wyjątku -- >
	    < element name= "exceptionType" type="string " />

	    <! -- Identyfikator komunikatu o błędzie -- >
	    < element name= "errorNumber" type="string " minOccurs= "0" />

	    <! -- kompletny komunikat o błędzie -- >
	    < element name= "errorMessage" type="string " />

	    <! -- Lista łańcuchów wstawionych do komunikatu o błędzie -- >
	    < element name= "errorMessageParameters" type="string " minOccurs= "0" maxOccurs= "unbounded " />

	    <!-- 
		 Stos wywołań powiązany z wyjątkiem.
		 Należy pamiętać, że zostanie pominięta, chyba że właściwość "server-stacktrace-enabled"
		 jest włączona w pliku 100Custom.xml serwera.
	    -->     
	    < element name= "programmersDetails" type="string"> < /element>
	    
	    <! -- Wcześniejsze odpowiedzi.  Ustaw, jeśli użyto komendy masowej -- >
	    < element name = "responses "type="dat:BulkCommandOdpowiedzi" minOccurs= "0"> < /element>

            < element name= "errorData" type="tns:ErrorData" minOccurs= "0" />
	</sequence>
    </complexType>

    <complexType name= "ErrorData">
        <sequence>
            < element name = "code "type = "string" />
            < element name = "data "type="string" minOccurs= "0 " />
        </sequence>
    </complexType>
    
</schema>

Typ MIME: application/x-javascript

Kody statusu

Metoda zwraca jeden z następujących kodów statusu:
KodOpis
200 OKZakończenie powiodło się.
400 Błędne żądanieParametry są niepoprawne lub nie są one poprawne.
401 UnauthorizedProgram wywołujący nie jest autoryzowany dla tego żądania.
404 Nie znaleziono
Usługa nie istnieje.
406 NieakceptowalneŻądany typ treści lub kodowanie treści nie jest obsługiwane.
500 Wewnętrzny błąd serweraWystąpił poważny problem. Szczegółowe informacje o programiście są dostępne.

Dostępne od

7.5.0

Temat Nadrzędny: Zasób Usługi