How to handle exceptions and restart the process

If you are attempting to model the error flow, you can have your service task catch and rethrow BpmnErrors instead. You can then use Error Boundary Event to flow to tasks adding whatever process variables you’d like.