JBoss web server by default looks for deployments under the
$JBOSS_HOME/jboss-as-web/server/$PROFILE/deploy folder. However you can configure the server to even include your custom folder for scanning deployments. This can be done by configuring the BootstrapProfileFactory MC bean in $JBOSS_HOME/jboss-as-web/server/$PROFILE/conf/bootstrap/profile.xml file. The applicationURIs property of the BootstrapProfileFactory accepts a list of URLs which will be scanned for applications. You can add your custom deploy folder to this list. For example, if you want /home/me/myapps to be scanned for deployments, then you can add the following:
<bean name="BootstrapProfileFactory" class="org.jboss.system.server.profileservice.repository.
StaticProfileFactory">
...
<property name="applicationURIs">
<list elementClass="java.net.URI">
<value>${jboss.server.home.url}deploy</value>
<value>file:///home/me/myapps</value>
</list>
...
Important
Modifying the
$JBOSS_HOME/jboss-as-web/server/$PROFILE/conf/bootstrap/profile.xml requires a server restart, for the changes to take effect.
For performance reasons, adding a new deployment folder to the
BootstrapProfileFactory also requires the same URL to be added to the VFSCache MC bean configuration in $JBOSS_HOME/jboss-as-web/server/$PROFILE/conf/bootstrap/vfs.xml. For example:
<bean name="VFSCache">
...
<property name="permanentRoots">
<map keyClass="java.net.URL" valueClass="org.jboss.virtual.spi.ExceptionHandler">
...
<entry>
<key>file:///home/me/myapps</key>
<value><inject bean="VfsNamesExceptionHandler"/></value>
</entry>
</map>
</property>
...
Important
Not adding the custom deployment folder to
VFSCache might result in growing disk space usage by the server, over a period of time.