AFAIK the only way is (with hotdeploy) to touch the application, but I know that this is not a good idea because it is difficult to note whether the DB connections are up.
A flush of the ConnectionPool will not help (JB4.x) because the application is not deployed afterwards.
As this is a seldom problem we decide in this case to start the JBoss complete if the DB is up and running.
If the problem happen during the application is running it will recover the ConnectionPool automaticaly.