This is the latest release in the 6.x.x family. For EI 7.0.0, click here.

All docs This doc
Skip to end of metadata
Go to start of metadata

This page walks you through the process of upgrading to WSO2 Enterprise Integrator (WSO2 EI) 6.6.0 from WSO2 Business Process Server (WSO2 BPS) 3.6.0.

Before you begin, note the following:

  • If you are upgrading from a version older than WSO2 BPS 3.6.0, you should first upgrade to WSO2 BPS 3.6.0 and then upgrade to WSO2 EI 6.6.0.
  • For information on what is new in this release and why you should upgrade, see About this Release.
  • For more information on ports, see Default Ports of WSO2 Enterprise Integrator.
  • The distribution folder structure has changed from WSO2 BPS 3.6.0 to WSO2 EI 6.6.0.

     Comparing Folder Structures: WSO2 BPS 3.6.0 and WSO2 EI 6.6.0
    Business Process Server 3.6.0Enterprise Integrator 6.6.0

See the following topics for instructions:

Preparing to upgrade

The following prerequisites must be completed before upgrading:

  • Create a backup of the databases in your WSO2 BPS 3.6.0 instance.
  • Copy the <BPS_HOME> directory to back up the product configurations.
  • Download the product installer from here and install WSO2 EI 6.6.0.
    Let's call the installation location of your product the <EI_HOME> directory. This is located in a place specific to your OS as shown below:
    OSHome directory
    Mac OS/Library/WSO2/EnterpriseIntegrator/6.6.0
    WindowsC:\Program Files\WSO2\EnterpriseIntegrator\6.6.0\

The downtime is limited to the time taken for switching databases in the production environment.

Upgrading the databases

In WSO2 EI 6.6.0, you can use the same Carbon database and BPEL/BPMN databases that you used for WSO2 BPS 3.6.0. However, you need to apply Security Advisory (WSO2-2017-0345) before connecting the databases to WSO2 EI 6.6.0.

Due to Security Advisory (WSO2-2017-0345), WSO2 EI 6.6.0 uses OAEP for data encryption in addition to the RSA algorithm (which is used in WSO2 BPS 3.6.0). This applies only to internally-encrypted data in the BPS server. Therefore, the internally-encrypted data in your current databases (such as datasource configurations, user store configurations, keystore registry entries, service security policies, event publisher configurations, event receiver configurations, and event sink configurations) should be re-encrypted using OAEP. 

To re-encrypt all internally-encrypted data using OAEP:

  1. Get the latest WUM updates (later than the update level released on 18/04/2018) for your WSO2 BPS 3.6.0. This will give you a new WSO2 BPS distribution with the latest updates.

  2. Connect the WUM-updated WSO2 BPS distribution to your existing databases (which are used for registry data and user management data):

     Connecting to the database
    1. Open the master-datasources.xml file (stored in the <WUM_UPDATED_BPS_3.6.0_HOME>/repository/conf/datasources/ directory) and update the parameters given below.

      By default, registry and user management data are stored in one database and is configured in the master-datasources.xml file. If you have separate databases for registry and user management data, you may have separate datasource configurations.

      urlThe URL of the database.
      username and passwordThe name and password of the database user.
      driverClassNameThe class name of the database driver.
    2. Open the registry.xml file (stored in the <WUM_UPDATED_BPS_3.6.0_HOME>/repository/conf/ directory) and specify the datasource name.

      <dbConfig name="wso2registry">    
    3. If a JDBC user store is used in your BPS server, open the user-mgt.xml file (stored in the <WUM_UPDATED_BPS_3.6.0_HOME>/repository/conf/ directory) and update the following database connection parameters under the <UserStoreManager class="org.wso2.carbon.user.core.jdbc.JDBCUserStoreManager"> section.

      urlThe URL of the database.
      username and passwordThe name and password of the database user.
      driverClassNameThe class name of the database driver.

      Further, update the system administrator configurations and the datasource name in the user-mgt.xml file.

    4. Encrypt the plain text passwords that you added to the configuration files (master-datasources.xmluser-mgt.xml, etc.).

  3. Be sure that the file is included in the <WUM_UPDATED_BPS_3.6.0_HOME>/repository/conf/ directory with the following parameter:

  4. Start the WUM-updated BPS server. This will re-encrypt the data in the databases.

Migrating the configurations

 Do not copy configuration files directly between servers. Instead, update the files manually.

To migrate all the required folders, files, libraries, etc. from WSO2 BPS 3.6.0 to WSO2 EI 6.6.0:

  1. Copy the database connector JAR files stored in the <BPS_HOME>/repository/components/lib directory to the <EI_HOME>/lib directory of WSO2 EI 6.6.0. For example, the JAR for the Oracle database (ojdbc7.jar) can be copied.

  2. Copy the keystores and truststores from the <BPS_HOME>/repository/resources/security directory to the <EI_HOME>/wso2/business-process/repository/resources/security directory.
  3. If you have secondary user stores created for WSO2 BPS 3.6.0, you need to copy the 'userstore' folder in the <BPS_HOME>/repository/deployment/server/ directory to the <EI_HOME>/wso2/business-process/repository/deployment/server/ directory.

To migrate the configuration files from WSO2 BPS 3.6.0 to WSO2 EI 6.6.0:

  1. Update the configuration files with information of the migrated keystores and truststores. See Configuring Keystores in WSO2 products for more information.
  2. Go to the <EI_HOME>/wso2/business-process/conf/datasources directory and update the Carbon datasource configuration in the master-datasources.xml file with the details of the Carbon database.
  3. Go to the <EI_HOME>/wso2/business-process/conf directory and update the datasource references in the user-mgt.xml and registry.xml files to match the updated configurations in the master­-datasources.xml file.
  4. Go to the <EI_HOME>/wso2/business-process/conf/datasources directory and update the files relevant to your BPMN/BPEL database: 
    • If you are using BPMN, update the activiti-datasources.xml file with the datasource connection details.
    • If you are using BPEL, update the bps-datasources.xml file with the datasource connection details.
    For instructions, see Changing the Default Databases for BPMN and BPEL .
  5. Open the <EI_HOME>/wso2/business-process/conf/humantask.xml file and change GenerateDdl to false. You can see the deployed humantask packages with the version in the console. A migration success message is printed once the migration completes successfully.

  6. Check for any further configurations that were done for WSO2 BPS 3.6.0 based on your solution. For example, update the following configurations in WSO2 EI 6.6.0 accordingly:

    1. humantask.xml

    2. axis2.xml

    3. bps.xml

    4. Activiti.xml

    5. Tenant-mgt.xml

    6. b4p-coordination-config.xml


    8. Check the configurations related to external user stores, caching, mounting, transports etc.

WSO2 EI 6.6.0 is based on Carbon Kernel 4.5.0, which introduces log4j2. Also, the carbon.logging jar is not packed with the EI 6.6.0 distribution and the pax-logging-api is used instead. Follow the instructions given below to migrate from log4j (in WSO2 BPS 3.6.0) to log4j2 (in WSO2 EI 6.6.0).

  1. If you have used a custom log4j component in WSO2 BPS 3.6.0, apply the following changes to your component:

    1. Replace carbon logging or commons.logging dependencies with pax-logging dependency as shown below.

      <!-- Pax Logging -->
      <!-- Pax Logging Version -->
    2. If log4j dependency is directly used, apply one of the options given below.

      Replace the log4j dependency (shown below) with log4j2 and rewrite the loggers accordingly.


      Replace the log4j dependency with pax-logging dependency and rewrite the loggers using commons.logging accordingly.

    3. If commons.logging is imported using Import-Package add the version range.

  2. Follow the instructions on configuring log4j2 to register the Appenders and Loggers.

Migrating artifacts

Follow the steps given below:

  1. Copy the packages in the <BPS_HOME>/repository/deployment/server/bpel directory to the <EI_HOME>/wso2/business-process/repository/deployment/server/bpel directory.
  2. Copy the packages in the <BPS_HOME>/repository/deployment/server/bpmn directory to the <EI_HOME>/wso2/business-process/repository/deployment/server/bpmn directory. 

  3. Copy the packages in the <BPS_HOME>/repository/deployment/server/humantasks directory to the <EI_HOME>/wso2/business-process/repository/deployment/server/humantasks directory.
  4. If you have custom artifacts created in the <BPS_HOME>/repository/deployment/server/ directory of WSO2 BPS 3.6.0, copy them to the <EI_HOME>/wso2/business-process/repository/deployment/server/ directory.
  5. If you have used multitenancy, copy the tenant directory packages from <BPS_HOME>/repository/tenants to the <EI_HOME>/wso2/business-process/repository/tenants directory.

Starting the server

Once you have completed the migration, you can start the Business Process profile of WSO2 EI. For details see Running the Product.

The Management Console, BPMN Explorer and Human Task Explorer URLs for the Business Process profile in WSO2 EI 6.6.0 are as follows:

  • Management Console : https://<ip>/<port>:9445/carbon/

  • BPMN Explorer : https://<ip>/<port>:9445/bpmn-explorer

  • HumanTask Explorer : https://<ip>/<port>:9445/humantask-explorer

  • No labels