This site contains the documentation that is relevant to older WSO2 product versions and offerings.
For the latest WSO2 documentation, visit https://wso2.com/documentation/.

Exposing a JNDI Datasource as a Data Service

Java Naming and Directory Interface (JNDI) is a Java API (application programming interface) providing naming and directory functionality for Java software clients to discover and look up data and objects via a name.  WSO2 Enterprise Integrator (WSO2 EI) supports the JNDI InitialContext implementation by inheriting the JNDI implementation of Tomcat (http://tomcat.apache.org/tomcat-7.0-doc/jndi-resources-howto.html). JNDI helps decouple object creation from the object look-up. When you have registered a datasource with JNDI, others can discover it through a JNDI lookup and use it.

Follow the topics below. Also, see the samples in Data Integration Samples.

 


Start the Create New Data Service wizard

Now, let's start creating the data service from scratch:

Add a JNDI datasource

You can add a JNDI datasource by following the steps given below.


You can also expose an RDBMS Carbon datasource as a JNDI datasource using the Configure > Datasources menu of the management console. For instructions, see Managing Datasources .

Define a query for the datasource

Now let's start writing a query for getting data from the datasource. The query will specify the data that should be fetched by this query, and the format that should be used to display data when the query is invoked.

  1. Click Add New Query to open the Add New Query screen.
  2. Enter the following values:
    • Query ID: Enter an ID for the query.
    • Datasource: Select the datasource for which you are going to write a query. Select the JNDI datasource that you created previously.
    • SQL: In this field, enter the SQL statement describing the data that should be retrieved from the RDBMS datasource.

  3. Add input mappings: Input mappings allow you to add parameters to a query so that you can set the parameter value when executing the query. 

    Find out more about defining Input Mappings.

  4. Add output mappings: Out mapping is used to specify how the data that is fetched from your query will be shown in the response.

    Find out more about defining Output Mappings.

  5. Click Next to open the Operations screen.

Define an operation to invoke the query

Data service operations are written to invoke queries.

  1. Click Add New Operation to open Add New Operation screen.
  2. Add a name for your operation in the Operation Name field.
  3. In the Query ID field, select the query that you defined previously.
  4. Save the operation.

Finish creating the data service

In this tutorial, we are only defining a SOAP service to expose the data. Therefore, you can click Finish to complete the data service creation process, after defining the operation. You will now be taken to the  Deployed Services screen, which shows all the data services deployed on the server.

If you click Next after defining the operation, you will be taken to the Add Resources screen, which allows you to expose the data as a REST resource. If you want to create a REST resource, see Exposing Data as a REST Resource for information.