I believe the following factors are driving forces to go for archive deployment [though servers like JBoss, Tomcat ultimately explode them into tmp/work directory]
- Deployment in managed servers is easier [when we have clustering]
- When we want to enforce that production bug fixes should go through a well defined process [I have seen few applications (deployed in exploded format) where the patch is applied in the production environment but never merged with the version control system]
- When we have to deploy on a remote server [like using remote deployment tasks using ANT, Maven etc]