WSO2 App Factory supports the development of many types of enterprise applications such as Web apps, JAX-WS Service, JAX-RS Service, BPEL process, Data Services etc. We work on facilitating all of the commonly-used application types with every new version. In the meantime, if you cannot find a particular application type, you can add it using the
<ApplicationType> element in
<AF_HOME>/repository/conf/appfactory/appfactory.xml file. It defines maven archetype properties used to generate the project structure.
You can add your own application types into App Factory, provided they are related to the supported types. i.e. Web Applications, JAX-RS, JAX-WS, Jaggery etc.
Following sample code shows how to add a new application type to App Factory:
The elements of the sample configuration are explained below. You can use this information to edit the file according to your requirements.
XML elements of the sample code
|Property Name||Description||Type||Default Value||Fixed Values||Mandatory/Optional|
The type of the application archive.
Currently App Factory supports Web Application (war), JAX-RS (jaxrs), JAX-WS (jaxws), WSO2 BPS (bpel), Data Services (dbs) and WSO2 Jaggery (jaggery).
You can specify a type on your own as well, but they should be related to the supported types
|Class name of application implementation type.|
Display name of application type. This is the name that you will be shown as "Application Type", when you are selecting the application type at the time of Application creation.
Extension of application archive. App Factory supports the following types and archive names:
Web Application: war
WSO2 BPS: zip
Data Services: dbs
WSO2 Jaggery: war
|String||war, zip, dbs|
|Detailed description of application type.||String|
Build job configuration template name for jenkins application build.
|Maven Archetype Request for build. Change archive type based on application type.|
|Server deployment path.|
|Define application type is enabled or not.||String||enabled, disabled|
For information on creating different types of applications, see Creating an Application.