Is it a standard good way to stop a SI application? I mean I don't want in progress processes to be killed while workflows are running etc.
Thanks,
Ferenc
Actually it doesn't matter if your application uses SI, Spring Batch, Boot or is it just raw Spring one, all in-progress processes are finished correctly, if you use normal application shutdown - System.exit(0). In this the ApplicationContext is finished with its close() and initiate stop() for all Lifecycle components.
To avoid message loosing you should consider to use persistent MessageStore for <queue> channels and transactions or something similar like acknowledges in messaging Brokers like JMS, AMQP etc.