Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

This tutorial demonstrates how to integrate an external WSO2 API Manager (APIM) 2.0.0 with WSO2 G-Reg 5.3.0. 

Table of Contents
maxLevel3

Introduction

WSO2 G-Reg implements Services (implements services (i.e., SOAP or REST)  as configurable governance artifacts (RXT files) which you create using the G-Reg Publisher. Usually, you publish a service in WSO2 APIM using the APIM Publisher web interface. Instead, you can integrate WSO2 APIM with WSO2 G-Reg, to directly publish APIs to APIM Publisher using the services deployed in the WSO2 G-Reg. This guide explains how to configure the two products to expose services in the G-Reg as APIs in WSO2 APIM.

Prerequisites

Follow the steps below to set up the required prerequisites before starting the integration.

  1. Download WSO2 Governance Registry (version 5.0.0 and above), and start the server. For instructions on running WSO2 G-Reg, see Running the Product

    Tip

    Change the default port of WSO2 G-Reg (e.g. set a port offset of 1), to avoid port conflicts that may arise when running more than one WSO2 products on the same server. For instructions, see Changing the Default Ports with Offset in the WSO2 Administration Guide.

  2. Download WSO2 API Manager (version 1.9.x and above), and start the server.  For instructions on running WSO2 APIM, see see Running the Product.

Anchor
Configuring WSO2 G-Reg
Configuring WSO2 G-Reg
Configuring WSO2 G-Reg to publish services

Follow the steps below to configure WSO2 G-Reg to publish services on it to WSO2 APIM.

...

Expand
titleConfiguring to publish multiple (SOAP and REST) service types

 If you have already published a SOAP service and if you want to publish a REST service (or vice versa) in the same G-Reg server, you need to create a new lifecycle and assign the corresponding executor to the artifact type. Follow the steps below to do this.

  1. Log in to the G-Reg Management Console using the following URL and admin/admin credentials:  https://10.100.5.72:9444/carbon
  2. Click Extensions, and then click Lifecycles.
  3. Click the corresponding View/Edit Link of the ServiceLifeCycle.
  4. Copy the configuration in the editor, and click Cancel.
  5. Click Add New Lifecycle.
  6. Paste the configuration you copied in the editor.
  7. Replace the configuration of the executor accordingly as per step 4 in the Configuring WSO2 G-Reg section above.
  8. Change the name of the lifecycle as shown in the example below.
    <aspect name="NewServiceLifeCycle" class="org.wso2.carbon.governance.registry.extensions.aspects.DefaultLifeCycle">
  9. Click Save, and then click Artifact Types in the left navigation menu.
  10. Click the View/Edit link of the Artifact Type to which you need to assign the new lifecycle with the corresponding executor (i.e. soapservice or restservice)
  11. Enter the name of the new lifecycle in the configuration as shown in the example below.
    <lifecycle>NewServiceLifeCycle</lifecycle>
  12. Click Save.

Setting up the service in WSO2 G-Reg

Follow the steps below to create/edit and publish the service, which you need to publish to WSO2 APIM.

  1. Create the service, which you need to publish to WSO2 APIM in WSO2 G-Reg or edit it if it is an existing one. 

    Tip

    When creating the service or editing an existing service, add the same values that you provided for provided for the apim.endpoint parameter (e.g. http://localhost:9763/), and apim.env parameter (e.g. "devDev") in  when configuring the lifecycle executor in Integrating with an External WSO2 API Manager, for Environments and URL in the Endpoints tab as shown in the example below.  

    define the endpoint

  2. Publish the  service you created or edited to WSO2 APIM Publisher. For instructions, see Managing Life Cycles of Assets.

Invoking the API Published in WSO2 APIM 

Follow the steps below to test the API published in the WSO2 APIM by invoking it.

  1. Log in to  the WSO2 APIM Publisher using the following URL and admin/admin credentials:  https://10.100.5.72:9443/publisher. You view the service you published is successfully created as an API in the API Publisher as shown below. 
    service published to WSO2 APIM
  2. Click on the API.Click , and then click Edit API as shown below. 
    editing the API
  3. Click Next: Implement > in the following screen. 
    designing the API
  4. Click Managed API as shown below. 
    select Managed API option
  5. Enter the preferred Endpoint Type and Production Endpoint, and click Next : Manage > as shown below.

    implementing the API
  6. Enter preferred details, and click Save & Publish as shown below. 
    managing the API
  7. Click Go to API Store in the message, which pops up. You view the published API in the WSO2 APIM Store as shown below.
    service published in WSO2 APIM Store
  8. Log in to WSO2 APIM Store using admin/admin credentials, and click on the published API.
  9. Select an Application, and click Subscribe as shown below.

    select an application and subscribe
  10. Click View Subscriptions in the message, which pops up. 
  11. Click Click Generate keys button  button in the the Production Keys  tab as shown below. 

    Tip

    You can skip this step if you already did it before.


    generate keys

    You view the generated keys as shown below. 
    generated keys

  12. Click on the API, to which you subscribed in the Subscriptions tab as shown below. 
    view API in subscriptions
  13. Click on the the API Console tab tab, and click on the the POST box box, to expand it as shown below. 
    API Console
  14. Click the the Try it out! button button. You view the result of invoking the API as shown in the below example. 
    result of invoking the API