Class ModuleDeployer
- java.lang.Object
-
- org.apache.axis2.deployment.AbstractDeployer
-
- org.apache.axis2.deployment.ModuleDeployer
-
- All Implemented Interfaces:
Deployer
public class ModuleDeployer extends AbstractDeployer
Standard Axis2 Module Deployer which use module.xml file to deploy Modules. ModuleDeployer can be used with Axis2 Module archive (.mar) or exploded directory structure. Some of the example formats given below.
Examples :
- repository/modules/LogModule.mar/meta-inf/module.xml
- repository/modules/LogModule/meta-inf/module.xml
- WEB-INF/modules/LogModule.mar/meta-inf/module.xml
- WEB-INF/modules/LogModule/meta-inf/module.xml
Further ModuleDeployer can be used to deploy Modules from a remote repository or load a repository from a JAR file. In this case module files access through URLs. To deploy Modules from a remote repository or JAR file it is expected to present modules/modules.list file which contains names of Modules.
Example :
jar:file:/home/resources/repo.jar!/repo/modules/modules.list may contains following list of service.
- LogModule.mar
- Addressing.mar
There are several approaches available to set repository URL to Axis2 run time. As an example one can provide repository URL as a init-param of AxisServlet. Some of the examples given below.
-
Example -1 :
<init-param> <param-name>axis2.repository.url</param-name> <param-value>http://localhost/repo/</param-value> </init-param> -
Example -2 :
<init-param> <param-name>axis2.repository.url</param-name> <param-value>jar:file:/home/resources/repo.jar!/repo/</param-value> </init-param>
NOTE - It is discouraged to use above services.list based deployment approach because it does not support hot-deployment, hot-update and some of other important deployment features as well.
-
-
Field Summary
-
Fields inherited from class org.apache.axis2.deployment.AbstractDeployer
deploymentFileDataMap
-
-
Constructor Summary
Constructors Constructor Description ModuleDeployer()ModuleDeployer(AxisConfiguration axisConfig)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voiddeoloyFromUrl(DeploymentFileData deploymentFileData)voiddeploy(DeploymentFileData deploymentFileData)Process a file and add it to the configurationvoidinit(ConfigurationContext configCtx)Initialize the DeployervoidsetDirectory(String directory)Set the directoryvoidsetExtension(String extension)Set the extension to look for TODO: Support multiple extensions?voidundeploy(String fileName)Remove a given file from the configuration-
Methods inherited from class org.apache.axis2.deployment.AbstractDeployer
addServiceBuilderExtensions, cleanup, executeServiceBuilderExtensions, getServiceBuilderExtensions
-
-
-
-
Constructor Detail
-
ModuleDeployer
public ModuleDeployer()
-
ModuleDeployer
public ModuleDeployer(AxisConfiguration axisConfig)
-
-
Method Detail
-
init
public void init(ConfigurationContext configCtx)
Description copied from interface:DeployerInitialize the Deployer- Parameters:
configCtx- our ConfigurationContext
-
deploy
public void deploy(DeploymentFileData deploymentFileData)
Description copied from interface:DeployerProcess a file and add it to the configuration- Specified by:
deployin interfaceDeployer- Overrides:
deployin classAbstractDeployer- Parameters:
deploymentFileData- the DeploymentFileData object to deploy
-
deoloyFromUrl
public void deoloyFromUrl(DeploymentFileData deploymentFileData)
-
setDirectory
public void setDirectory(String directory)
Description copied from interface:DeployerSet the directory- Parameters:
directory- directory name
-
setExtension
public void setExtension(String extension)
Description copied from interface:DeployerSet the extension to look for TODO: Support multiple extensions?- Parameters:
extension- the file extension associated with this Deployer
-
undeploy
public void undeploy(String fileName) throws DeploymentException
Description copied from interface:DeployerRemove a given file from the configuration- Specified by:
undeployin interfaceDeployer- Overrides:
undeployin classAbstractDeployer- Parameters:
fileName- name of item to remove- Throws:
DeploymentException- if there is a problem
-
-