Configure enterprise bean containers using scripting

 

Configure enterprise bean containers using scripting

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

Perform the following steps to configure an enterprise bean container:

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

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

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

    where:

    set is a Jacl command
    serv1 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:mycell/Node:mynode/Server:server1/ is the hierarchical containment path of the configuration object
    Cell is the object type
    mycell is the optional name of the object
    Node is the object type
    mynode is the optional name of the object
    Server is the object type
    server1 is the optional name of the object
    Example output:

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

  2. Identify the EJB container belonging to the server and assign it to the ejbc1 variable. For example:

    • Using Jacl:
      set ejbc1 [$AdminConfig list EJBContainer $serv1]

    • Using Jython:
      ejbc1 = AdminConfig.list('EJBContainer', serv1)
      print ejbc1
      

    where:

    set is a Jacl command
    ejbc1 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
    list is an AdminConfig command
    EJBContainer is the object type

    Note: The name of the object type that you input here is the one based on the XML configuration files and does not have to be the same name that the administrative console displays.

    serv1 evaluates to the ID of the server specified in step number 1
    Example output:

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

  3. View all the attributes of the enterprise bean container.

    • The following example command does not show nested attributes:

      • Using Jacl:
        $AdminConfig show $ejbc1
        Example output:
        {cacheSettings (cells/mycell/nodes/mynode/servers/server1|server.xml#EJBCache_1)}
        {components {}}
        {inactivePoolCleanupInterval 30000}
        {parentComponent (cells/mycell/nodes/mynode/servers/server1|server.xml#ApplicationServer_1)
        {passivationDirectory ${USER_INSTALL_ROOT}/temp}
        {properties {}}
        {services {(cells/mycell/nodes/mynode/servers/server1|server.xml#MessageListenerService_1)}
        {stateManagement (cells/mycell/nodes/mynode/servers/server1|server.xml#StateManageable_10)}

      • Using Jython:
        print AdminConfig.show(ejbc1)
        Example output:
        [cacheSettings (cells/mycell/nodes/myode/servers/server1|server.xml#EJBCache_1)]
        [components []]
        [inactivePoolCleanupInterval 30000]
        [parentComponent (cells/mycell/nodes/myode/servers/server1|server.xml#ApplicationServer_1)
        [passivationDirectory ${USER_INSTALL_ROOT}/temp]
        [properties []]
        [services [(cells/mycell/nodes/myode/servers/server1|server.xml#MessageListenerService_1)]
        [stateManagement (cells/mycell/nodes/mynode/servers/server1|server.xml#StateManageable_10)]

      where:

      $ is a Jacl operator for substituting a variable name with its value
      print is a Jython command
      AdminConfig is an object representing the WebSphere Application Server configuration
      showall is an AdminConfig command
      ejbc1 evaluates to the ID of the enterprise bean container specified in step number 2

    • The following command example includes nested attributes:

      • Using Jacl:
        $AdminConfig showall $ejbc1
        Example output:
        {cacheSettings {{cacheSize 2053}
          {cleanupInterval 3000}}}
        {components {}}
        {inactivePoolCleanupInterval 30000}
        {parentComponent (cells/mycell/nodes/mynode/servers/server1|server.xml#ApplicationServer_1)}
        {passivationDirectory ${USER_INSTALL_ROOT}/temp}
        {properties {}}
        {services {{{context (cells/mycell/nodes/mynode/servers/server1|server.xml#EJBContainer_1)}
          {listenerPorts {}}
          {properties {}}
          {threadPool {{inactivityTimeout 3500}
            {isGrowable false}
            {maximumSize 50}
            {minimumSize 10}}}}}}
        {stateManagement {{initialState START}
          {managedObject (cells/mycell/nodes/mynode/servers/server1|server.xml#EJBContainer_1)}}}
        

      • Using Jython:
        print AdminConfig.showall(ejbc1)
        Example output:
        [cacheSettings [[cacheSize 2053]
          [cleanupInterval 3000]]]
        [components []]
        [inactivePoolCleanupInterval 30000]
        [parentComponent (cells/mycell/nodes/mynode/servers/server1|server.xml#ApplicationServer_1)]
        [passivationDirectory ${USER_INSTALL_ROOT}/temp]
        [properties []]
        [services [[[context (cells/mycell/nodes/mynode/servers/server1|server.xml#EJBContainer_1)]
          [listenerPorts []]
          [properties []]
          [threadPool [[inactivityTimeout 3500]
            [isGrowable false]
            [maximumSize 50]
            [minimumSize 10]]]]]]
        [stateManagement {{initialState START]
          [managedObject (cells/mycell/nodes/mynode/servers/server1|server.xml#EJBContainer_1)]]]

      where:

      $ is a Jacl operator for substituting a variable name with its value
      print is a Jython command
      AdminConfig is an object representing the WebSphere Application Server configuration
      showall is an AdminConfig command
      ejbc1 evaluates to the ID of the enterprise bean container specified in step number 2

  4. Modify the attributes.

    • The following example modifies the enterprise bean cache settings and it includes nested attributes:

      • Using Jacl:
        $AdminConfig modify $ejbc1 {{cacheSettings {{cacheSize 2500} {cleanupInterval 3500}}}}

      • Using Jython:
        AdminConfig.modify(ejbc1, [['cacheSettings', [['cacheSize', 2500],  ['cleanupInterval', 3500]]]])

      where:

      $ is a Jacl operator for substituting a variable name with its value
      AdminConfig is an object representing the WebSphere Application Server configuration
      modify is an AdminConfig command
      ejbc1 evaluates to the ID of the enterprise bean container specified in step number 2
      cacheSettings is an attribute of modify objects
      cacheSize is an attribute of modify objects
      2500 is the value of the cacheSize attribute
      cleanupInterval is an attribute of modify objects
      3500 is the value of the cleanupInterval attribute

    • The following example modifies the cleanup interval attribute:

      • Using Jacl:
        $AdminConfig modify $ejbc1 {{inactivePoolCleanupInterval 15000}}

      • Using Jython:
        AdminConfig.modify(ejbc1, [['inactivePoolCleanupInterval', 15000]])

      where:

      $ is a Jacl operator for substituting a variable name with its value
      AdminConfig is an object representing the WebSphere Application Server configuration
      modify is an AdminConfig command
      ejbc1 evaluates to the ID of the enterprise bean container specified in step number 2
      inactivePoolCleanupInterval is an attribute of modify objects
      15000 is the value of the inactivePoolCleanupInterval attribute

  5. Save the changes. For example:

    • Using Jacl:
      $AdminConfig save

    • Using Jython:
      AdminConfig.save()

    where:

    $ is a Jacl operator for substituting a variable name with its value
    AdminConfig is an object representing the WebSphere Application Server configuration
    save is an AdminConfig command




Related tasks
Modifying nested attributes with the wsadmin tool
Configuring servers with scripting

Related reference
Commands for the AdminConfig object