Configure for processes using scripting

 

Configure for processes using scripting

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

Perform the following steps to configure a process:

  1. Identify the server and assign it to the s1 variable. For example:

    • Using Jacl:
      set s1 [$AdminConfig getid /Cell|mycell/Node|mynode/Server|server1/]

    • Using Jython:
      s1 = AdminConfig.getid('/Cell|mycell/Node|mynode/Server|server1/')
      print s1

    where:

    set is a Jacl command
    s1 is a variable name
    $ is a Jacl operator for substituting a variable name with its value
    AdminConfig is an object representing the WebSphere Application Server configuration
    getid is an AdminConfig command
    Cell is the object type
    mycell is the name of the object that will be modified
    Node is the object type
    mynode is the name of the object that will be modified
    Server is the object type
    server1 is the name of the object that will be modified
    print a Jython command
    Example output:

    server1(cells/mycell/nodes/mynode/servers/server1|server.xml#Server_1)

  2. Identify the process definition belonging to this server and assign it to the processDef variable. For example:

    • Using Jacl:
      set processDef [$AdminConfig list JavaProcessDef $s1]
      set processDef [$AdminConfig showAttribute $s1 processDefinition]

    • Using Jython:
      processDef = AdminConfig.list('JavaProcessDef', s1)
      print processDef processDef = AdminConfig.showAttribute(s1, 'processDefinition')
      

    Example output:

    (cells/mycell/nodes/mynode/servers/server1|server.xml#JavaProcessDef_1)

  3. Change the attributes.

    • On distributed systems, the following example changes the working directory.

      • Using Jacl:
        $AdminConfig modify $processDef {{workingDirectory /home/myProfile/temp/user1}}

      • Using Jython:
        AdminConfig.modify(processDef, [['workingDirectory', '/home/myProfile/temp/user1']])

    • The following example modifies the stderr file name:

      • Using Jacl:
        set errFile [list stderrFilename \${LOG_ROOT}/server1/new_stderr.log]
        set attr [list $errFile]
        $AdminConfig modify $processDef [subst {{ioRedirect {$attr}}}]

      • Using Jython:
        errFile = ['stderrFilename', '\${LOG_ROOT}/server1/new_stderr.log']
        attr = [errFile]
        AdminConfig.modify(processDef, [['ioRedirect', [attr]]])

    • The following example modifies the process priority:

      • Using Jacl:
        $AdminConfig modify $processDef {{execution {{processPriority 15}}}}

      • Using Jython:
        AdminConfig.modify(processDef, [['execution', [['processPriority', 15]]]])

    • The following example changes the maximum startup attempts. You can modify this example to change other attributes in the process definition object.

      • Using Jacl:
        $AdminConfig modify $processDef {{monitoringPolicy {{maximumStartupAttempts 1}}}}

      • Using Jython:
        AdminConfig.modify(processDef, [['monitoringPolicy', [['maximumStartupAttempts',  1]]]])

  4. Save the configuration changes. See the Saving configuration changes with the wsadmin tool article for more information.

  5. In a network deployment environment only, synchronize the node. See the Synchronizing nodes with the wsadmin tool article for more information.



Related concepts
AdminConfig object for scripted administration

Related reference
Commands for the AdminConfig object