it-at-m / digiwf-core

central workflow automation and integration platform based on the free process framework Camunda.
MIT License
19 stars 7 forks source link

Formserver Integration not supporting booleans #793

Closed lmoesle closed 8 months ago

lmoesle commented 1 year ago

Describe the bug

If my formserver form contains boolean fields, they are transfered to the engine as string and therefore checkboxes in my digiwf form are always false.

To Reproduce

Expected behavior

The formserver integration should transfer boolean fields as boolean values and not as strings.

Screenshots

Grouptask created by formserver integration

Formserver-start

Grouptask created manually

Manuell-gestartet

Acceptance Criteria

Additional context

If I check the process variables in camunda cockpit it looks like the formserver-integration is transfering boolean values as strings and not as booleans. Therefore, the form is not showing the correct state for checkboxes.

Formserver-Cockpit

It supposed to be:

Cockpit

lmoesle commented 9 months ago

Die Bibliothek org.json, die wir für die XML zu Json Konvertierung verwenden kann primitive Datentypen auch zu den richtigen Datentypen konvertieren (boolean, number, ...). Das hat zur Folge, dass in Formularfeldern auch der richtige Datentyp gesetzt werden muss. Ansonsten wird im Formular kein Wert angezeigt.

Ggf. müssen nach dem Bugfix bestehende Json Schemas angepasst werden (Im Schema muss der type des jeweiligen Feldes auf z.B. number oder boolean gesetzt werden.

lmoesle commented 9 months ago

Ich habe jetzt einen Custom Mapper für Booleans geschrieben. PR https://git.muenchen.de/digitalisierung/digiwf-formserver-integration/-/merge_requests/14

darenegade commented 9 months ago

Thema wartet auf Feedback von Verantwortlichen der Routing-Komponenten zum Vorgehen bei Booleans und Zahlen

darenegade commented 9 months ago

@lmoesle Ich habe hier mal mit Michael gesprochen. Bei Bools wird eigentlich ein mappertype="boolean" attribute am XML-Tag gesetzt. Wenn ich es richtig verstehe, dann sollte es doch genau damit schon autom. auf den richtigen Typ gehen.

image.png

Lass uns das gerne mal gemeinsam anschauen. Eventuell fehlt hier nur Doku🙈

XSD von EOZF: https://git.muenchen.de/einkommensorientierte-zusatzfoerderung/eingangsdatenstrukturen/-/blob/main/src/main/resources/Erstantrag/eozf-erstantrag-example01.xml?ref_type=heads#L94

simonhir commented 9 months ago

Testformular ist jetzt vorhanden siehe Test-Dokumentation. Hier fehlt noch die ganze Geschichte mit XSD und XSLT, was ja dann über das oben genannte Mapping bestimmt, wenn ich es richtig verstanden habe.