Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 4 Next »

Beschreibung

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 ("success" oder "error") des Aufrufs wird in die Variable "SYS.<name of event>_status" geschrieben. Anfragen an einen Server zu senden und die zurückgegebene Antwort in einer Prozessvariablen zu speichern. Der Status ("success" oder "error") des Aufrufs wird in die Variable


Klasse

com.dooris.bpm.actionhandler.HttpRestHandler

Parameter

Parametername

Standardwert

Beschreibung

Gültige Beispiele

hostName

Dieser Parameter enthält die URL des angeforderten Servers.

method

post

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

  • delete

  • get

  • head

  • options

  • patch

  • post

  • put

templatePath

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

postParameter

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

responseVariable

Dieser Parameter enthält die Prozessvariable, in der die Serverantwort gespeichert werden soll.

user

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

pass

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

authMethod

Dieser 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 "basic" gesetzt wird.

oauth

basic

oAuthTokenUrl

Nur erforderlich, wenn authMethod = "oauth"

URL, von der das oauth-Token abgerufen werden soll.

additionalHeaders

Hinzufügen zusätzlicher Header zum Rest 

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

searchByJsonPath

null

Hier werden der Json-Pfad für einen bestimmten Teil der zurückgegebenen Json-Datei und ein Variablenname eingegeben, unter dem der spezifische Teil des Json gespeichert werden soll. Die Variable(n) werden dann in einem Array mit dem Namen 'result' gespeichert. Zum besseren Verständnis siehe Beispiele.

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

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 beendet, 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

Beispiel

Ereignistyp

Knoten verlassen

Actionname

com.dooris.bpm.actionhandler.HttpRestHandler

Actionclass

com.dooris.bpm.actionhandler.HttpRestHandler

Parameter

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

method=Post;

postParameter={

"Company":"${customer_company}",

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

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

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

user=John.Doe;

pass=specialPW;

authMethod=basic;

responseVariable=responseVar;

faultTolerance=0;

Beispieleingaben für searchByJsonPath:

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

  1. Wenn 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"}]
    (Wir verwenden *, um alle Typen zu erhalten. Verwenden Sie für eine bestimmte Position die Nummer anstelle von *)
    Ergebnis: {"types":["Regular","Chocolate"]}

  2. Wenn Sie die Typen jedes "Batters" abrufen und in verschiedenen Ergebnisvariablen speichern möchten:
    [{path: "[0]['batters']['batter'][0]['type']", resultVariable: "type1"},{path: "[0]['batters']['batter'][1]['type']", resultVariable: "type2"}]
    result:{"type2":"Chocolate","type1":"Regular"}

  3. Wenn Sie das gesamte Objekt basierend auf einem bestimmten Wert erhalten möchten, z. B. 'Schokolade':
    [{path: "[0]['batters']['batter'][*][?( @.type == 'Chocolate')]", resultVariable: "res"}]
    Ergebnis: {"res":[{"id":"1002","type":"Chocolate"}]}

  • No labels