Just mentioning this in case you're not aware of it; there is a Deployer interface accessible via JMX. For example, the code below allows you to deploy for example a WAR file, without needing access to the ApplicationDeployer interface.