Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Beschreibung

The HTTPRestHandler enables the user to send requests to a server and save the returned answer in a process-variable. The status (success or error) of the call is written into the variable SYS.<name of the event>_status.

...

Der HTTPRestHandler ermöglicht es dem Benutzer, Anfragen an einen Server zu senden und die zurückgegebene Antwort in einer Prozessvariablen zu speichern. Der Status (Erfolg oder Fehler) des Aufrufs wird in die Variable .SYS. <Name der Veranstaltung>_status.

...

Klasse

Code Block
com.dooris.bpm.actionhandler.HttpRestHandler

Parameter

Eventtype

Node Leave

ActionnamehostName

Parameter name

Default value

Description

Valid examples

Name des Parameters

Standardwert

Beschreibung

Gültige Beispiele

HostName

Status
colourRed
titleMANDATORY

This parameter contains the URL of the requested server.

Host name Dieser Parameter enthält die URL des angeforderten Servers.

Hostname (URL)

methodMethode

post

This parameter determines which method will be remotely invoked. Post means that the server expects an input in XML-Format that it will process and return. Get means that the Server will send data without requiring input.

delete
get
head
options
patch
post
putBereitstellen

Dieser Parameter bestimmt, welche Methode remote aufgerufen wird. Bereitstellen bedeutet, dass der Server eine Eingabe im XML-Format erwartet, die er verarbeitet und zurückgibt. Erhalten bedeutet, dass der Server Daten sendet, ohne dass eine Eingabe erforderlich ist.

löschen
Erhalten
Kopf
Optionen
Flicken
Bereitstellen
stellen

templatePath

Status
colourRed
titleMANDATORY
(if httpBody is not set)

This parameter contains the file path to a JSON file that contains the input for the server.

Path to template

getParameter

This parameter contains the input for the server in wenn httpBody (englisch) nicht gesetzt ist)

Dieser Parameter enthält den Dateipfad zu einer JSON-Datei, die die Eingabe für den Server enthält.

Pfad zur Vorlage

getParameter

Dieser Parameter enthält die Eingabe für den Server im JSON-Format.

httpBody (englisch)

Status
colourRed
titleMANDATORY
(if templatePath is not set)This parameter contains the input for the server in wenn templatePath nicht gesetzt ist)

Dieser Parameter enthält die Eingabe für den Server im JSON-Format.

responseVariable

This parameter contains the process variable into which the server response should be saved.

user

This parameter is only required if the server requires identification and contains the user name of the user.

pass

This parameter is only needed if the server requires an identification and contains the user's passwordDieser Parameter enthält die Prozessvariable, in der die Serverantwort gespeichert werden soll.

Benutzer

Dieser Parameter ist nur erforderlich, wenn der Server eine Identifizierung erfordert und den Benutzernamen des Benutzers enthält.

bestehen

Dieser Parameter wird nur benötigt, wenn der Server eine Identifizierung erfordert und das Kennwort des Benutzers enthält.

authMethod

Status
colourRed
titleMandatory

This parameter is only needed if the server requires identification and contains the encryption which should be applied. One possible encryption is base64, which will be applied by setting this parameter to basic.

oauth

basic

oAuthGrantTypeAccess

password

This parameter describes the OAuth grant type to be used in the request. Other optionsDieser Parameter wird nur benötigt, wenn der Server eine Identifizierung erfordert und die Verschlüsselung enthält, die angewendet werden soll. Eine mögliche Verschlüsselung ist base64, die angewendet wird, indem dieser Parameter auf grundlegend.

OAuth

grundlegend

oAuthGrantTypeAccess

Passwort

Dieser Parameter beschreibt den OAuth-Gewährungstyp, der in der Anforderung verwendet werden soll. Weitere Optionen: https://oauth.net/2/grant-types/

oAuthGrantTypeRefresh

refresh_tokenThis parameter should come together with a value of Refresh Token and is used to obtain an Access Token

Dieser Parameter sollte zusammen mit dem Wert Aktualisierungstoken enthalten sein und wird verwendet, um ein Zugriffstoken abzurufen.

oAuthClientId

Status
colourRed
titleMANDATORY
(if wenn authMethod == "oauthOAuth")

This parameter is a public identifier for the applications, i.e public exposed string that is used by the service API to identify the applicationDieser Parameter ist ein öffentlicher Bezeichner für die Anwendungen, d. h. eine öffentlich verfügbar gemachte Zeichenfolge, die von der Dienst-API zur Identifizierung der Anwendung verwendet wird.

oAuthClientSecret

Status
colourRed
titleMANDATORY
(if wenn authMethod == "oauthOAuth")

This parameter is a secret known only to the OAuth application and the authorization server. It is generated by the authorization server during the process of application registration. A client has to provide its client secret to authenticate itself to the authorization serverDieser Parameter ist ein geheimes Geheimnis, das nur der OAuth-Anwendung und dem Autorisierungsserver bekannt ist. Es wird vom Autorisierungsserver während des Prozesses der Anwendungsregistrierung generiert. Ein Client muss seinen geheimen Clientschlüssel bereitstellen, um sich beim Autorisierungsserver zu authentifizieren.

oAuthTokenUrl

Status
colourRed
titleMANDATORY
(if wenn authMethod == "oauthOAuth")

Required only if Nur erforderlich, wenn authMethod = "oauth"

Secifies the URL from where to retrieve the OAuth token fromTeilt die URL auf, von der das OAuth-Token abgerufen werden soll.

oAuthTokenBasicAuth

false

This parameter is used to set the basic authentication token.

additionalFields

This parameter is used to add additonal fields to the Rest.

additionalHeaders

This parameter is used to add additonal Headers to the Rest FALSCH

Dieser Parameter wird verwendet, um das Token für die Standardauthentifizierung festzulegen.

additionalFields

Dieser Parameter wird verwendet, um dem Rest zusätzliche Felder hinzuzufügen.

additionalHeaders

Dieser Parameter wird verwendet, um zusätzliche Header zum Rest hinzuzufügen.

call"&method=GET&additionalHeaders=[NAME_OF_VARIABLE=" + variable Variable + ";" + "NAME_OF_VARIABLE2=" + variable2 Variable2 + "]"

searchByJsonPath

nullHere

, the Json path for a specific part of the returned Json file and a variable name under which the specific part of the Json should be saved, are entered. The variable(s) are then saved in an array named 'result'. For better understanding see examplesHier wird der Json-Pfad für einen bestimmten Teil der zurückgegebenen Json-Datei und ein Variablenname, unter dem der spezifische Teil des Jsons gespeichert werden soll, eingetragen. Die Variable(n) werden dann in einem Array mit dem Namen "result" gespeichert. Zum besseren Verständnis siehe Beispiele.

[{path: "[*]", resultVariable: "variable_name"}]

contentType This parameter specifies the content type of the request(Inhaltstyp)

Dieser Parameter gibt den Inhaltstyp der Anforderung an.

newLineReplacement

Replaces all \n with the given value, unless false is provided as a value.

urlEncoding

true

If enabled, converts the URL to a US-ASCII string. In addition, square brackets will be ascaped with their respective ASCII values.

convertBodyToJson

false

This parameter is used to convert the query parameters to JSON string.

addNote

false

If enabled, stores the response as a note and attaches it to the current process instance.

addAllDocuments

false

If enabled, creates a mulitpart request containing all attached documents.
Only relevant for PUT requests.

addLocalDocument

This parameter adds a local file by the given path.

logResponse

If enabled, the response gets logged out in the server log.

logRequest

true

If enabled, the request gets logged out in the server log.

faultTolerance

1

This parameter can be specified as either 0 or 1. It only makes a difference if an exception is thrown. If an exception is thrown, the process is stopped if the parameter is set to 0 and if it is set to 1 the exception message is saved in the responseVariable and the process can continue as usualErsetzt alle \n mit dem angegebenen Wert, es sei denn, FALSCH wird als Wert bereitgestellt.

urlEncoding (url-Kodierung)

STIMMT

Wenn diese Option aktiviert ist, wird die URL in eine US-ASCII-Zeichenfolge konvertiert. Darüber hinaus werden eckige Klammern mit ihren jeweiligen ASCII-Werten versehen.

convertBodyToJson

FALSCH

Dieser Parameter wird verwendet, um die Abfrageparameter in eine JSON-Zeichenfolge zu konvertieren.

addNote

FALSCH

Wenn diese Option aktiviert ist, wird die Antwort als Notiz gespeichert und an die aktuelle Prozessinstanz angehängt.

addAllDocuments

FALSCH

Wenn diese Option aktiviert ist, wird eine mehrteilige Anforderung erstellt, die alle angehängten Dokumente enthält.
Nur relevant für PUT-Anfragen.

addLocalDocument

Dieser Parameter fügt eine lokale Datei über den angegebenen Pfad hinzu.

logResponse (englisch)

Wenn diese Option aktiviert ist, wird die Antwort im Serverprotokoll abgemeldet.

logRequest (logAnfrage)

STIMMT

Wenn diese Option aktiviert ist, wird die Anforderung im Serverprotokoll abgemeldet.

faultTolerance

1

Dieser Parameter kann entweder als 0 oder 1 angegeben werden. Es macht nur einen Unterschied, wenn eine Ausnahme ausgelöst wird. Wenn eine Ausnahme ausgelöst wird, wird der Prozess gestoppt, wenn der Parameter auf 0 gesetzt ist, und wenn er auf 1 gesetzt ist, wird die Ausnahmemeldung in der responseVariable gespeichert und der Prozess kann wie gewohnt fortgesetzt werden.

0

1

onErrorRepetition

0

Repeat execution if there is a faulty request (if its an IOException (like Wiederholen Sie die Ausführung, wenn eine fehlerhafte Anforderung vorliegt (wenn es sich um eine IOException (wie 403, 401) handelt)

isRestCallButton

false

This parameter is used when you want to call the rest handler from a TSD button .

Example:

FALSCH

Dieser Parameter wird verwendet, wenn Sie den Rest-Handler über eine TSD-Schaltfläche aufrufen möchten.

Beispiel:

Ereignistyp

Knoten-Leave

Name der Aktion

com.dooris.bpm.actionhandler.HttpRestHandler

ActionclassAction-Klasse

com.dooris.bpm.actionhandler.HttpRestHandler

Parameter

hostName=https://yourcompanyserver.com/rest/list/${customerList};

methodMethode = PostBeitrag;

postParameter={

"CompanyFirma":"${customer_company}",

"First NameVorname":"${customer_firstname}",

"Last NameNachname":"${customer_lastname}",

"Emailemail":"${customer_email}",};

user=John.Doe;

pass=specialPW;

authMethod=basicBasis;

responseVariable=responseVar;

faultTolerance=0;

...

Beispieleingaben für searchByJsonPath:

JSON

...

-Codebeispiel für das, was mit der get-Methode zurückgegeben wird
Code Block
languagejs
[
  {
		"id": "0001",
		"type": "donut",
		"batters":
			{
				"batter":
					[
						{ "id": "1001", "type": "Regular" },
						{ "id": "1002", "type": "Chocolate" }
					]
			},
		"topping":
			[
				{ "id": "5001", "type": "None" },
				{ "id": "5002", "type": "Glazed" }
			]
  }
]

  1. If you want to get all the types from the ‘batter' and save it as result variable 'types’, you have to use as valueWenn Sie alle Typen aus dem 'batter' erhalten und als Ergebnisvariable 'types' speichern möchten, müssen Sie als Wert verwenden:
    [{path: "[0]['batters']['batter'][*]['type']", resultVariable: "types"}]
    (We use * in order to get all types. For a specific position, use the number instead of *)
    resultWir verwenden *, um alle Typen zu erhalten. Verwenden Sie für eine bestimmte Position die Zahl anstelle von *)
    Ergebnis: {"types":["Regular","Chocolate"]}

  2. If you want to get the types of each 'batter' and save it in different result variablesWenn Sie die Typen jedes "Teigs" abrufen und in verschiedenen Ergebnisvariablen speichern möchten:
    [{path: "[0]['batters']['batter'][0]['type']", resultVariable: "type1"},{path: "[0]['batters']['batter'][1]['type']", resultVariable: "type2"}]
    resultErgebnis:{"type2":"ChocolateSchokolade","type1":"RegularRegulär"}

  3. If you want to get the whole object based on a specific value e.x. 'ChocolateWenn Sie das gesamte Objekt basierend auf einem bestimmten Wert erhalten möchten, z. B. 'Schokolade':
    [{path: "[0]['batters']['batter'][*][?( @.type == 'ChocolateSchokolade')]", resultVariable: "res"}]
    resultErgebnis: {"res":[{"id":"1002","type":"ChocolateSchokolade"}]}