The need for this sort of thing is pretty clear and your approach is quite nice, I think. But, why create a load of custom code to maintain when most of this can be done using Apache Ant. All the app server vendors support Ant deployment, you can script everything including all the items you describe and it's portable and totally extensible either via the multitude of Ant extensions out there or by code if you really have to.
I've done all of this using Ant and various property and build files to include depending of the environment (different app servers, LDAP serves etc etc.). it works well and I can integrate it with my test environment and Cruise Control and lots more besides. I think there is some benefit in taking a wider view and using Ant. Still, good stuff anyhow, a nice article.