I have two Java applications running on a Websphere application server. The first application is COTS software (Plateau) I will call App1 and includes an API which can be used in custom applications to interact with App1. This app takes a couple minutes to start in Websphere. The second application is custom software I will call App2 and is deployed as a web service which utilizes the App1 API to interact with App1; so it is dependent on App1. This app takes just seconds to start in Websphere.
I run into a problem in certain App1 functionality when we bounce Websphere and the App2 web service is called by a client before the App1 application has fully started.
Is there a way I can delay App2 from starting until App1 is fully started in Websphere? Is there a way to design App2 to programmatically check that App1 is available before it attempts to use the API?