We are using following Setup:
Architecture
- Angular app which communicates with Quarkus Microservice
- Quarkus - Microservices, gets a call which tries to complete a usertask via Camunda Rest API.
- Java Delegates (Camunda, Spring Boot) are executed (no saving points/ no async before - so everything in one transaction) which triggers an external System for validating data.
Objective:
User sees, specific validaiton message which was given by the external system. As a result the information from the external system should be propagated to the quarkus microservice, which should propagate the infos to Angular.
Challenge:
Angular triggers the Quarkus Rest client. The microservices tries to complete the user task. As a result the service task/ java delegate is executed. The call in the Java Delegate returns a HTTP Status 400 with specific Information. But the Camunda (Spring Boot) Instance returns a 500 to the Quarkus microservice.
We tried to implement a ResponseEntityExceptionHandler but the code wasn’t executed. Furthermore we couldn’t find any informations in the documentation about how to throw custom exceptions/custom responses within the Camunda Api. Does anyone have an Idea whats the best approach to deliver more informations to the executer?
Thanks in advance