Set up a default UDDI node

 

Overview

There are two ways to setup a default UDDI node:

  • Either by executing the uddiDeploy.jacl script and specifying the default option. This creates a running default UDDI node within an embedded Cloudscape database, or

  • Executing an additional step after you have created your database.

Run one of the following

 

Procedure

  1. Optional: For a default Cloudscape UDDI node:

    For a default Cloudscape network deployment configuration, read the section Installing into a Network Deployment Cell first.

    Deploy the UDDI Registry by running the wsadmin script uddiDeploy.jacl, as shown, from the install_root/bin directory.

    The syntax of the command is as follows (this is a Windows platform example; for Unix or Linux platforms, add the .sh suffix to the wsadmin command)

    wsadmin [-conntype none] -wsadmin_classpath install_root/cloudscape/lib 
                   -f uddiDeploy.jacl 
                   node 
                   servername
                   default
    
    where

    • '-conntype none' is optional, and is only needed if the application server is not running.

    • install_root is the directory name of the WebSphere Application Server install location.

    • node is the name of the WebSphere node on which the target server runs. Note that the node name is case sensitive.

    • servername is the name of the target server on which you wish to deploy the UDDI Registry, such as server1. Note that the server name entered is case sensitive.

    • 'default' causes the command to create a UDDI node, with default policies, within a Cloudscape database and datasource. This is a special case only for Cloudscape and creates everything required to run a UDDI node, in a standalone application server. Note that this option cannot be used in a network deployment configuration.

    For example, to create a UDDI node called 'MyNode' on server 'server1' on a Windows system, you might enter the following (this assumes server1 is started)

    wsadmin -wsadmin_classpath C:\Progra~1\IBM\WebSphere\AppServer\cloudscape\lib -f uddiDeploy.jacl MyNode server1 default
    

    If the server is not started the command is

    wsadmin -conntype none -wsadmin_classpath C:\Progra~1\IBM\WebSphere\AppServer\cloudscape\lib -f uddiDeploy.jacl MyNode server1 default
    

    (Note that these should be entered as one command on a single line)

    You should now start the UDDI application, or start the application server if it is not already running. This will activate the UDDI node.

    Note: Restarting the UDDI application, or the application server, will always result in the reactivation of the UDDI node, even if the node was previously deactivated.

  2. Optional: For a default DB2, default Cloudscape or default Oracle UDDI node:

    DB2, Cloudscape or Oracle may be used for a single application server installation or a Network Deployment installation, including a cluster configuration. For the cluster configuration use network Cloudscape, as embedded Cloudscape is not supported for this scenario.

    1. Create a database schema to hold the UDDI registry by executing one of the following, ensuring that you perform the final step to set the default node indicator in the database:

    2. Create a J2C Authentication Data Entry (not required for embedded Cloudscape, but required for network Cloudscape):

      1. Expand Security, Global Security and JAAS Configuration (on the right), then click J2C Authentication Data.

      2. Click New to create a new J2C authentication data entry

      3. Fill in the details as follows:

        Alias

        a suitable (short) name, such as "UDDIAlias"

        Userid

        the database userid (such as db2admin for DB2 or SYSTEM for Oracle), which is used to read and write to the UDDI registry database. For network Cloudscape the userid can be any value.

        Password

        the password associated with the userid specified above. For network Cloudscape the password can be any value.

        Description

        a suitable description to describe the chosen userid.

      Click Apply and then Save the changes to the master configuration.

    3. Create a JDBC Provider (if a suitable one does not already exist), using the following table to determine the provider type and implementation type for your chosen database:

      Database Provider type Implementation type
      DB2 DB2 Legacy CLI-based Type 2 JDBC Driver Connection Pool datasource
      Oracle Oracle JDBC Driver Connection Pool datasource
      Embedded Cloudscape Cloudscape JDBC Driver Connection Pool datasource
      Network Cloudscape Cloudscape Network Server Using Universal JDBC Driver Connection Pool datasource
      For details on how to create a JDBC provider, see Creating and configuring a JDBC provider using the administrative console.

    4. Create a datasource for the UDDI Registry by following these steps:

      1. Expand Resources and JDBC Providers.

      2. Select the desired 'scope' of the JDBC provider created earlier. For example, select

        Server: yourservername
        

        to show the JDBC providers at the server level.

      3. Select the JDBC provider created earlier.

      4. Under Additional Properties, select Data Sources (not the Data Sources V4 option).

      5. Click New to create a new datasource.

      6. Fill in the details for the datasource as follows:

        Name

        a suitable name, such as UDDI Datasource

        JNDI name

        set to datasources/uddids - this value is obligatory.

        Note: You must not have any other datasources using this JNDI name. If you have another datasource using this JNDI name, then either remove it or change its JNDI name. For example, if you have previously created a default UDDI node using Cloudscape, you should use the uddiRemove.jacl script with the default option to remove the datasource and the UDDI application instance, before continuing.

        Use this Data Source in container-managed persistence (CMP)

        ensure the check box is cleared.

        Description

        a suitable description

        Category

        set to uddi

        Data store helper class name

        filled in for you as:

        Database Data store helper class name
        DB2 com.ibm.websphere.rsadapter.DB2DataStoreHelper
        Oracle 9i com.ibm.websphere.rsadapter.OracleDataStoreHelper
        Oracle 10g com.ibm.websphere.rsadapter.Oracle10gDataStoreHelper
        Embedded Cloudscape com.ibm.websphere.rsadapter.CloudscapeDataStoreHelper
        Network Cloudscape com.ibm.websphere.rsadapter.CloudscapeNetworkServerDataStoreHelper

        Component-managed authentication alias

        • for DB2, Oracle or network Cloudscape, select the alias that you created in step 2 from the pulldown. It will have the node name appended in front of it, for example MyNode/UDDIAlias.

        • for embedded Cloudscape leave this set to (none).

        Container-managed authentication alias

        Set to (none)

        Mapping-configuration alias

        Set to DefaultPrincipalMapping

        Relational Database Management System data source properties

        • for DB2:

          Database name

          for example

          UDDI30
          

        • for Oracle - URL - for example

           jdbc:oracle:oci8:@<Oracle database name>
          

        • for Cloudscape (embedded or network) - Database name - for example

          install_root/databases/com.ibm.uddi/UDDI30
          
          For network Cloudscape, also make sure that the Server name and Port number match the network server.

        Leave all other fields unchanged.

        Click Apply and Save the changes to the master configuration.

    5. Test the connection to your UDDI database by selecting the check box next to the datasource and clicking Test connection. You will see a message similar to "Test Connection for datasource UDDI Datasource on server server1 at node MyNode was successful". If you do not see this message investigate the problem with the help of the error message.

    6. Deploy the UDDI Registry by running the wsadmin script uddiDeploy.jacl, as shown, from the install_root/bin directory.

      The syntax of the command is as follows (this is a Windows platform example; for Unix or Linux platforms, add the .sh suffix to the wsadmin command)

      wsadmin [-conntype none] -f uddiDeploy.jacl 
                     node 
                     servername
      
      wsadmin [-conntype none] -f uddiDeploy.jacl
                     {node servername | cluster_name}
                                 
      
where

You are recommended to deploy the UDDI application using the uddiDeploy.jacl script, but note that one can also use the administrative console to deploy the application in the normal way. If you use the administrative console you must ensure that the Classloader Mode for the application is set to PARENT_LAST, and that the WAR class loader Policy is set to Application. The uddiDeploy.jacl script in a command prompt will do this for you.

For example, to deploy UDDI on node 'MyNode' and server 'server1' on a Windows system (assuming that server1 is already started)

wsadmin -f uddiDeploy.jacl MyNode server1

To deploy UDDI into cluster 'MyCluster' on a Windows system,

wsadmin -f uddiDeploy.jacl MyCluster

  • Start the UDDI application, or start the application server if it is not already running. This will activate the UDDI node.

    Note: Restarting the UDDI application, or the application server, will always result in the reactivation of the UDDI node, even if the node was previously deactivated.

     

    What to do next

    As you have chosen to use a default UDDI node, it will be initialized when the UDDI application is started for the first time.


     

    Related Tasks


    Setting up a customized UDDI node