There is no way to control the order in which applications in Tomcat get deployed. I tried once.
(Correction, there wasn't when I tried a couple years ago).
One workaround might be to put a context listener in the apps that depend on the SOAP server app. Have it ping that app every n seconds to see if it's running. Make the servlets in the app unavailable until after the SOAP server proves that it's up and running.