I’m presently developing a B2B Service that notifies our business partners via email and fax of events for which they need to be involved.
This service is designed in the following way:
- The scheduler starts a Java Service that contains an exception handler (throws ServiceExceptions no matter what is caught) which simply invokes a Flow service.
- The Flow service manages an Oracle database connection using the Flow exception handling mechanism, and queries a table to determine what needs to be sent & sends it.
What seems to be happening is this:
- The scheduler starts & the service starts executing (Simple Interval Repeating Task w/ Repeat from end of invocation set).
- Some time during processing a NullPointerException is generated by an ExecSQL service (any ideas why on this too?), and the exception is thrown all the way out to the managing Java service.
- Unfortunately, what then happens is bizarre; the scheduler & Service Usage display, all act as if the service is still running which prevents the job from running again until the server is restarted.
So, two questions:
- Why does the server think the service is still running?
- Is there any way to kill a specific thread/service that is executing without bringing down the entire server?
Thanks in advance for any assistance you can provide!