WAS v8.5 > Script the application serving environment (wsadmin) > Scripting for data access resources > Configure data access with wsadmin scripting

Configure a JDBC provider using wsadmin

We can configure a JDBC provider using wsadmin.sh.

Before starting this task, wsadmin must be running. See the topic "Starting the wsadmin scripting client" for more information.

  1. There are two ways to perform this task. Perform one of the following:

    • Using AdminTask:

      • Jacl:

          $AdminTask createJDBCProvider {-interactive}
      • Jython:

          AdminTask.createJDBCProvider (['-interactive'])

    • Using the AdminConfig object:

      1. Identify the parent ID and assign it to the node variable. The following example uses the node configuration object as the parent. We can modify this example to use the cell, cluster, server, or application configuration object as the parent.

        • Jacl:

            set node [$AdminConfig getid /Cell:mycell/Node:mynode/]
        • Jython:

          node = AdminConfig.getid('/Cell:mycell/Node:mynode/')
          print node 

        Example output:

          mynode(cells/mycell/nodes/mynode|node.xml#Node_1)

      2. Identify the required attributes:

        Fast path: For supported JDBC drivers, we can also script JDBC providers according to the same pre-configured templates used by the dmgr console logic. Consult the article Creating configuration objects using wsadmin for details.

        • Jacl:

            $AdminConfig required JDBCProvider
        • Jython:

            print AdminConfig.required('JDBCProvider')

        Example output:

        Attribute     Type
        name     String
        implementationClassName   String

      3. Set up the required attributes and assign it to the jdbcAttrs variable. We can modify the following example to setup non-required attributes for JDBC provider.

        • Jacl:

          set n1 [list name JDBC1]
          set implCN [list implementationClassName myclass]
          set  jdbcAttrs [list  $n1  $implCN]

          Example output:

            {name {JDBC1}} {implementationClassName {myclass}}
        • Jython:

          n1 = ['name', 'JDBC1']
          implCN = ['implementationClassName', 'myclass']
          jdbcAttrs = [n1,  implCN]
          print jdbcAttrs

          Example output:

            [['name', 'JDBC1'], ['implementationClassName', 'myclass']]

      4. Create a new JDBC provider using node as the parent:

        • Jacl:

            $AdminConfig create JDBCProvider $node $jdbcAttrs
        • Jython:

            AdminConfig.create('JDBCProvider', node, jdbcAttrs)

        Example output:

          JDBC1(cells/mycell/nodes/mynode|resources.xml#JDBCProvider_1)

  2. Save the configuration changes. See the topic Saving configuration changes with wsadmin for more information.

If we modify the class path or native library path of a JDBC provider: After saving your changes (and synchronizing the node in a network deployment environment), you must restart every application server within the scope of that JDBC provider for the new configuration to work. Otherwise, you receive a data source failure message.


Related


Use the wsadmin scripting AdminConfig object for scripted administration
Configure new data sources using wsadmin
Create configuration objects using wsadmin.sh
Start the wsadmin scripting client using wsadmin.sh
Save configuration changes with wsadmin


Reference:

Commands for the AdminConfig object using wsadmin.sh


+

Search Tips   |   Advanced Search