Apache Derby has an option to run its "Network Server" as a web application in a servlet container (derby.war).
The problem is then how to deploy other applications that depend on derby in the same container to load after derby loads (preferable in a Tomcat container).
From what I recall there is no way to control the order of web application initialization in Tomcat.
Has anybody gotten derby.war to work in a multiple web application environment?
You'll probably find it easier and more reliable to run the Network Server in a separate standalone process of its own, rather than as part of the Tomcat process. It will make it easier to start, stop, control, and administer your Derby databases separately from your applications.
I had a similar issue too, but with HSQLDB. I went to using standalone instances.