Thanks to all of you for the insights.
From the responses I take that clean shutdown is not in scope of OSGi
itself.
I agree that it is best solved on the application level. On the other
hand I see that the Quiesce API can at least cover some
cases and so it has its values.
Christian
Am
I am not sure I agree with your conclusion. :-)
Since it is theoretically impossible to protect against hard failure (power,
kernel panic, kill -9, distributed call when the cable is plugged, etc) any
valuable application must have protection against an unexpected exit at any
moment in time.
If you do not implement something special for clean shutdown of inflight
exchanges then the normal error handling should take effect like you
mentioned.
So for example a db transaction should roll back. Some issue may be
that e.g. a service call can not be rolled back.
On the other hand I