Client XML aus Objekt erzeugen
Wertauflöser - Kurzfassung
Zweck: Gibt die Datenstruktur des Eingabewerts als Text im Client-XML-Format zurück.
Siehe auch: Objekt aus Client XML erzeugen
Der Client XML aus Objekt erzeugen-Wertauflöser gibt die Datenstruktur des Eingabewerts als Text im Client-XML-Format (s. XML Datenencoder) zurück.
Der Parameter Klassen Feldname definiert den Namen des XML-Attributs, das im Ausgabeformat verwendet werden soll, um die "Klasse" von Objekten zu deklarieren.
Konfiguration
Der Parameter Klassen Feldname erlaubt als Textfeld die Eingabe eines statischen Texts, der im Ausgabeformat verwendet wird, um die "Klasse" von Objekten innerhalb der XML-Struktur zu deklarieren.
Als Standardwert ist die Zeichenfolge class vorbelegt.
Wird kein Klassen Feldname angegeben, entfällt der Verweis auf den Datentyp im ausgegebenen XML ersatzlos.
►WICHTIG◄ Der Standardwert für den Parameter Klassen Feldname kann in der Konfiguration rein technisch mit einer beliebigen statischen Zeichenfolge überschrieben werden. Allerdings sollten hier nur "Namen" angegeben werden, die sich auch als Namen für ein XML-Attribut eignen. Falls der angegebene Klassen Feldname unzulässige Zeichen (Sonderzeichen, Leerzeichen) enthält, scheitert der Encoder zur Laufzeit mit einer Fehlermeldung.
Beispiele
Die Basis für die folgenden Beispiele für die Verwendung des Client XML aus Objekt erzeugen bildet immer dieselbe Konfiguration:
Durch unterschiedliche Auslösende Ereignisse (nicht im Bild) soll jeweils der Versand einer Benachrichtigung per E-Mail ausgelöst werden. Dabei sollen die wichtigsten Details zur "Situation", in der das Ereignis ausgelöst wurde, als Client-XML im E-Mail-Anhang wiedergegeben werden:
Wie rechts dargestellt, werden die erforderlichen Informationen im Parameter Objekt Resolver einer Ausführen mit-Ereignisaktion durch einen Erzeuge Liste-Wertauflöser in eine Liste gepackt, die für die folgende E-Mail-Versand-Ereignisaktion als Bezugsobjekt gilt. ►ANMERKUNG◄ Über die Variable contextEntity (s. Parameter Objekt in Variable speichern) kann auf die Entität im Datenkontext des auslösenden Ereignisses zugegriffen werden, z. B. um deren Daten im Betreff oder dem Body der E-Mail zu nutzen. |
|
Beispiel: Listenobjekt als Standard-Client-XML
Die rechts abgebildete Konfiguration für den Reiter Anhänge der E-Mail-Versand-Ereignisaktion hängt den Inhalt der als Bezugsobjekt der Ereignisaktion vorliegenden unspezifischen Liste von Objekten (Objekt[]) im Standard-Client-XML-Format (mit dem Klassen-Feldname class) an die erzeugte E-Mail an. Der angehängten Datei wird der Dateiname "log.xml" und der Mime type text/xml durch statisch definierte Texte zugewiesen. |
|
Laufzeitbeispiel:
|
Client-XML (mit Klassen-Feldname: class)
< Object class = "list" > < item class = "de.lobster.scm.denum.DynamicEnumDto" > < enumName >de.lobster.scm.actionevent.CustomActionEvent</ enumName > < name >XF_TEST</ name > </ item > < item class = "java.lang.Long" > < value >1901</ value > </ item > < item class = "string" >Super user limited</ item > < item class = "de.lobster.scm.utils.date.DateTime" > < dateValue >1647820800000</ dateValue > < timeZone class = "string" >UTC</ timeZone > </ item > </ Object > |
Beispiel: Listenobjekt als Client-XML mit nicht-Standard "Klassen-Feldname"
Die Konfiguration rechts ist bis auf den abweichenden Wert clazz für den Parameter Klassen-Feldname unverändert. |
|
Laufzeitbeispiel:
|
Client-XML (mit Klassen-Feldname: clazz)
< Object clazz = "list" > < item clazz = "de.lobster.scm.denum.DynamicEnumDto" > < enumName >de.lobster.scm.actionevent.CustomActionEvent</ enumName > < name >XF_TEST</ name > </ item > < item clazz = "java.lang.Long" > < value >1901</ value > </ item > < item clazz = "string" >Super user limited</ item > < item clazz = "de.lobster.scm.utils.date.DateTime" > < dateValue >1647820800000</ dateValue > < timeZone clazz = "string" >UTC</ timeZone > </ item > </ Object > |