Answering a QuestionnaireResponse that belongs to a non-existent BPMN user-task (e.g. the process continued without waiting on the user-task answer or the process died) terminates the websocket connection between the BPE and the DSF FHIR server. This is especially damaging if a QuestionnaireResponse is answered during BPE downtime and processed during BPE startup, resulting in a missing websocket connection.
To fix the issue, handle the exception instead of rethrowing in:
Answering a QuestionnaireResponse that belongs to a non-existent BPMN user-task (e.g. the process continued without waiting on the user-task answer or the process died) terminates the websocket connection between the BPE and the DSF FHIR server. This is especially damaging if a QuestionnaireResponse is answered during BPE downtime and processed during BPE startup, resulting in a missing websocket connection.
To fix the issue, handle the exception instead of rethrowing in:
https://github.com/highmed/highmed-dsf/blob/b7bdb0ec9a239b6ef786bfd066dc83761f959a02/dsf-bpe/dsf-bpe-server/src/main/java/org/highmed/dsf/fhir/questionnaire/QuestionnaireResponseHandler.java#L72-L76