I have resolved issue perhaps not very correctly from design perspective but it worked for me. Here is solution: If service should be stopped, from startService() I started new thread that regularly checks whether service appears as started, if so, simply stop service. When invoking thread, there was passed reference to service bean, and afterwards on this reference was invoked stopService() method. That's all. If you need sources please let me know. And sorry for so late share of solution .