If the directory/file paths specified in this guide do not exist in your WSO2 product, see Directory Structure of WSO2 Products to locate the paths applicable to your product.

Versions Compared


  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Fixed typo


Note that some some features in the WSO2 feature repository may not be compatible with the product version you are using. Therefore, WSO2 does NOT recommend the practice of installing new features on standard products.

If you need to install a new feature for the purpose of a demo or test, you can use the instructions given below. 

Each enterprise middleware product is a collection of reusable software units called features. Similarly, WSO2 Carbon consists of a collection of features where a single feature is a list of components and/or other features. A component of the Carbon platform is a single OSGi bundle or a collection of bundles. Similar to a standard JAR file in Java, a bundle is bundle is the modularization unit in OSGi.

Components in the Carbon platform add functionality to Carbon-based products. For example, the statistics component enables users to monitor system and service-level statistics. This component contains two bundles: One is the back-end bundle that collects, summarizes and stores statistics. The other is the front-end bundle, that presents the data to the user through a user-friendly interface.

Equinox P2 is integrated with WSO2 Carbon, which allows users to download WSO2 Carbon or any other WSO2 product and simply extend them by installing various features. The WSO2 Feature Repository consists of features that are bundled into WSO2 products (based on a particular Carbon release). The feature repository for WSO2 products based on Carbon 4.4.x versions is http://product-dist.wso2.com/p2/carbon/releases/wilkes/.

Table of Contents

Installing features from the management console


Note the following, when you use the management console to install a new feature:

  • Features will only be installed in the default profile. Features can be installed into other profiles, only using the POM-based approach.

  • You need to start the server after installing new features from the management console, which will create logs, local indices (solr) and entries in the database. Further, any available webapps will also get deployed. If you want to deploy the installed feature in a clustered environment, these data should first be cleared. It is not required to restart the server if you use the POM-based approach. You can use maven to install the feature, then directly take the pack (in which the required feature is installed), and deploy it in the cluster.

  • In the POM-based approach, you will have the list of features and the corresponding versions of the features that are installed. You can easily use this to refer what has been installed in the pack.

  • If you are on Windows, be sure to point the -Dcarbon.home property in the product's startup script (wso2server.bat) to the product's distribution home (e.g., -Dcarbon.home=C:\Users\VM\Desktop\wso2as-5.2.1). Alternatively, you can also set the carbon.home as a system property in Windows. Then, restart the server. Without this setting, you might not be able to install features through the management console.

Follow the instructions below:

  1. Log in to the product's management console.
  2. On the Configure menu, click Features. The  The Feature Management page will appear. 
  3. Click Available Features.
  4. Select a relevant repository. You can add the http://product-dist.wso2.com/p2/carbon/releases/wilkes/ repository to get the WSO2 product features of the Carbon 4.4.x platform (Wilkes). If no repositories have been added, or the required repository is not available, add a new repository.


    To add a new repository:

    1. Go to the Configure menu on the management console, and click Features.
    2. Go to the Repository Management tab, and click Add Repository.
    3. Provide a convenient name for the repository being added.
    4. Enter the repository location using one of the following methods: 
      1. URL: This option is used when you are adding an external repository.
        • Select the URL option.
        • Enter the Equinox P2 repository URL.

      2. Location: This option is used when you are adding a repository that you have downloaded to your computer.
        • Select the Local option.
        • Enter the directory path of the repository on your local machine.
    5. Click Add. The newly added repository will appear in the list of available repositories.

    Once you have added the new repository, go back to the Available Features tab to find the required features.

  5. Some repositories contain multiple versions of features. If you are only interested in the latest versions, click Show only the latest versions.
  6. A feature category is a logical grouping of the features that constitute a particular Carbon-based product. Selecting the Group features by category option enables you to easily view and select the entire list of features of a particular product at once. If you do not select this option when looking for features, you will see an uncategorized, flat feature list from which individual features can be selected separately.
  7. Click Find Features. The available features will be listed.
  8. Select the features you wish to install.


    To find a particular feature, you can use the search function. Enter the name of a feature (or a part of the name) and press Enter
    This search will return only available features; excluding the ones already installed.

  9. Click Install
  10. Verify the feature to be installed and click Next
  11. Read and accept the terms of the license agreement.
  12. Click Next. The installation process starts. It may take a few minutes to download the necessary components.
  13. Once the installation process is complete, click Finish.
  14. Restart the server for the changes to take effect. Based on the newly added features, you will be able to see the additional functionalities.


Following are the steps to create a new feature installed distribution using a POM file:

  1. Copy the sample pom.xml file given below to a directory on your machine.

    Code Block
    <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
        <name>New feature</name>
                                    <replace token="false" value="true" dir="$distribution_name/repository/components/default/configuration/org.eclipse.equinox.simpleconfigurator">
                                        <include name="**/bundles.info"/>
                <name>WSO2 internal Repository</name>

    Read more about the following plugins:

  2. The above sample pom.xml file specifies the default product profile (<profile>default</profile>) and the corresponding directory path (dir=" $distribution_name/repository/components/default/configuration/org.eclipse.equinox.simpleconfigurator ">). If your product is running on a different profile, you need to update the profile name. Read more about profiles from here.
  3. Unzip the original product distribution (e.g., wso2carbon-<version>.zip) and copy it to the same location as your pom.xml file.
  4. Replace $distribution_name in the pom.xml file with the name of the unzipped product distribution (e.g., wso2carbon-<version>). Note that if your product distribution is not in the same location as your pom.xml file, you can replace $distribution_name with the complete path to your product distribution.
  5. Now you need to specify the p2 repository from which the required features should be installed. This can be done in of two ways:
    1. Copy the relevant p2 repository to the same directory location as the pom.xml file. Note that your p2 repository can be a local repository, or a download of the WSO2 feature repository (e.g., http://product-dist.wso2.com/p2/carbon/releases/wilkes/).
    2. Replace file:p2-repo  in the pom.xml file with the direct link to the required p2 repository. For example, shown below is how the direct link to the Wilkes p2 repository of WSO2 is given in the pom.xml file:

      Code Block
  6. In the pom.xml file, list down the features you want to install into your product. For example, consider the Try It feature in the Wilkes repository of WSO2. The feature name given in the Wilkes repository is org.wso2.carbon.tryit_4.5.4. Therefore, you can add the feature ID and version to your pom.xml file as shown below. Note that the feature ID should end with 'feature.group'.

    Code Block
  7. Now let's add the feature to the product distribution: Open a terminal, navigate to the location of your pom.xml file and execute the following command:

    Code Block
    mvn clean install

    Upon successful invocation of the build, the product distribution is provisioned with the new features. This approach is scriptable.