Hi,
The basic problem that you wanted to fix is, ‘too many resubmissions’ from MWS Monitor. The database that you are talking about would be an application database and not webMethods database I hope…
If you do a ping for database before each and every call to send data, the db hits will increase by 2 times. Also, if you see the probability of failures, it might be once in a while and not everyday. You could think of a different approach if you have Broker in your enterprise.
A basic pub/sub pattern would help… You could publish data to Broker, and a subscriber trigger can process this message to send to db. On errors in the subscribing service, you will check if the error is related to database connectivity or something else. If it is related to db connectivity, you can suspend the broker native/jms trigger which will start queuing messages into broker. In this case, only the first message that faced failure needs to be resubmitted, and other messages exists in trigger client queue.
You could monitor the depth of trigger queue either through services, or OFI and raise alerts. Once you ensure the database is up/running, enable the trigger which will start sending all messages again to receiver…
When you actually suspend the trigger as I said above, you could create a one-time task scheduler that will run after so and so minutes. That service will do a ping with database and if it finds db is available, it enables back the trigger else that creates another one time scheduler task…
There would be multiple approaches and this might be one such approach.
-Senthil
#webMethods#Integration-Server-and-ESB