Configuring a shared library for an application using wsadmin scripting

This task uses the AdminConfig object to configure a shared library for an application. Shared libraries are files used by multiple applications. Create a shared library to reduce the number of duplicate library files on your system.

Before you begin

There are two ways to complete this task. The example in this topic uses the AdminConfig object to create and configure a shared library. Alternatively, you can use the createSharedLibrary script in the AdminResources script library to configure shared libraries.

A biblioteca de scripts fornece um conjunto de procedimentos para automatizar as funções de administração mais comuns. É possível executar cada procedimento de script individualmente, ou combinar diversos procedimentos para desenvolver rapidamente novos scripts.

Procedure

  1. Inicie a ferramenta de script wsadmin.
  2. Identify the shared library and assign it to the library variable. You can either use an existing shared library or create a new one, for example:
    • To create a new shared library, perform the following steps:
      1. Identify the node and assign it to a variable, for example:
        • Using Jacl:
          set n1 [$AdminConfig getid /Cell:mycell/Node:mynode/]
        • Using Jython:
          n1 = AdminConfig.getid('/Cell:mycell/Node:mynode/')
          
          print n1
        Table 1. getid command elements. Run the getid command to identify a shared library.
        Element Description
        set is a Jacl command
        n1 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
        Example output:
        mynode(cells/mycell/nodes/mynode|node.xml#Node_1)
      2. Create the shared library in the node. The following example creates a new shared library in the node scope. You can modify it to use the cell or server scope.
        • Using Jacl:

          [AIX Solaris HP-UX Linux Windows]
          set library [$AdminConfig create Library $n1 {{name mySharedLibrary} 
          {classPath c:/mySharedLibraryClasspath}}]
          [z/OS]
          set library [$AdminConfig create Library $n1 {{name mySharedLibrary} 
          {classPath /mySharedLibraryClasspath}}]
        • Using Jython:

          [AIX Solaris HP-UX Linux Windows]
          library = AdminConfig.create('Library', n1, [['name', 'mySharedLibrary'], 
          ['classPath', 'c:/mySharedLibraryClasspath']])
          
          print library
          [z/OS]
          library = AdminConfig.create('Library', n1, [['name', 'mySharedLibrary'], 
          ['classPath', '/mySharedLibraryClasspath']])
          
          print library
        Table 2. create Library command elements. Run the create command to create a shared library.
        Element Description
        set is a Jacl command
        library 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
        create is an AdminConfig command
        Library is an AdminConfig object
        n1 evaluates to the ID of host node specified in step number 1
        name is an attribute
        mySharedLibrary is the value of the name attribute
        classPath is an attribute
        /mySharedLibraryClasspath is the value of the classPath attribute
        Example output:
        MySharedLibrary(cells/mycell/nodes/mynode|libraries.xml#Library_1)
    • To use an existing shared library, issue the following command:
      • Using Jacl:
        set library [$AdminConfig getid /Library:mySharedLibrary/]
      • Using Jython:
        library = AdminConfig.getid('/Library:mySharedLibrary/')
        print library
      Table 3. getid Library command elements. Run the getid command to identify a shared library.
      Element Description
      set is a Jacl command
      library 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
      Library is an attribute
      mySharedLibrary is the value of the Library attribute
      Example output:
      MySharedLibrary(cells/mycell/nodes/mynode|libraries.xml#Library_1)
  3. Identify the deployment configuration object for the application and assign it to the deployment variable. For example:
    • Using Jacl:
      set deployment [$AdminConfig getid /Deployment:myApp/]
    • Using Jython:
      deployment = AdminConfig.getid('/Deployment:myApp/')
      
      print deployment
    Table 4. getid Deployment command elements. Run the getid command to identify a deployment object.
    Element Description
    set is a Jacl command
    deployment 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
    Deployment is an attribute
    myApp is the value of the Deployment attribute
    print is a Jython command
    Example output:
    myApp(cells/mycell/applications/myApp.ear/deployments/myApp|deployment.xml#Deployment_1)
  4. Retrieve the application deployment and assign it to the appDeploy variable. For example:
    • Using Jacl:
      set appDeploy [$AdminConfig showAttribute $deployment deployedObject]
    • Using Jython:
      appDeploy = AdminConfig.showAttribute(deployment, 'deployedObject')
      
      print appDeploy
    Table 5. showAttribute deployment command elements. Run the showAttribute command to assign a deployed object.
    Element Description
    set is a Jacl command
    appDeploy 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
    showAttribute is an AdminConfig command
    deployment evaluates the ID of the deployment configuration object specified in step number 2
    deployedObject is an attribute of modify objects
    print is a Jython command
    Example output:
    (cells/mycell/applications/myApp.ear/deployments/myApp|deployment.xml#ApplicationDeployment_1)
  5. Identify the class loader in the application deployment and assign it to the classLoader variable. For example:
    • Using Jacl:
      set classLoad1 [$AdminConfig showAttribute $appDeploy classloader]
    • Using Jython:
      classLoad1 = AdminConfig.showAttribute(appDeploy, 'classloader')
      
      print classLoad1
    Table 6. showAttribute appDeploy command elements. Run the showAttribute command to assign a class loader.
    Element Description
    set is a Jacl command
    classLoad1 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
    showAttribute is an AdminConfig command
    appDeploy evaluates the ID of the application deployment specified in step number 3
    classLoader is an attribute of modify objects
    print is a Jython command
    Example output:
    (cells/mycell/applications/myApp.ear/deployments/myApp|deployment.xml#Classloader_1)
  6. Associate the shared library in the application through the class loader. For example:
    • Using Jacl:
      $AdminConfig create LibraryRef $classLoad1 {{libraryName MyshareLibrary}}
    • Using Jython:
      print AdminConfig.create('LibraryRef', classLoad1, [['libraryName', 'MyshareLibrary']])
    Table 7. create LibraryRef command elements. Run the create command to create a library reference.
    Element Description
    $ is a Jacl operator for substituting a variable name with its value
    AdminConfig is an object representing the WebSphere Application Server configuration
    create is an AdminConfig command
    LibraryRef is an AdminConfig object
    classLoad1 evaluates to the ID of class loader specified in step number 4
    libraryName is an attribute
    MyshareLibrary is the value of the libraryName attribute
    Example output:
    (cells/mycell/applications/myApp.ear/deployments/myApp|deployment.xml#LibraryRef_1)
  7. Save the configuration changes.
    Utilize o seguinte exemplo de comando para salvar suas alterações de configuração:
    AdminConfig.save()
  8. Synchronize the node.
    Utilize os scripts syncActiveNode ou syncNode na biblioteca de scripts AdminNodeManagement para propagar as alterações de configuração para o(s) nó(s).
    • Utilize o script syncActiveNodes para propagar as alterações para cada nó na célula, conforme demonstra o seguinte exemplo:
      AdminNodeManagement.syncActiveNodes()
    • Utilize o script syncNode para propagar as alterações para um nó específico, conforme demonstra o seguinte exemplo:
      AdminNodeManagement.syncNode("myNode")

Ícone que indica o tipo de tópico Tópico de Tarefa



Ícone de registro de data e hora Última atualização: July 9, 2016 7:58
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=txml_applibrary
Nome do arquivo: txml_applibrary.html