Managing environment configurations with properties files using wsadmin scripting

Use this topic to modify your environment using properties files. You can use the wsadmin tool to generate, validate and apply properties files in your application server, profile, node, or other resource configurations.

About this task

Using the PropertiesBasedConfiguration command group for the AdminTask object, you can extract the configuration attributes and values from your environment to properties files. You can use this functionality for various purposes, including:
  • To modify your existing configuration in one location, instead of configuring multiple administrative console panels or running many commands
  • To improve the application development life cycle
You can use this topic to manage the following resources in your environment:
  • Application servers
  • Nodes
  • Profiles
  • Virtual hosts
  • Authorization tables
  • Data replication domains
  • Variable maps
  • Java™ Database Connectivity (JDBC) providers
  • Uniform Resource Locator (URL) providers
  • Mail providers
  • Resource environment providers
  • Java™ 2 Connector (J2C) resource adapters
[AIX Solaris HP-UX Linux Windows][z/OS]Avoid trouble: You cannot apply a z/OS® operating system properties file directly to a distributed operating system. Similarly, you cannot apply a distributed operating system properties file directly to a z/OS operating system.
Complete the following steps to extract a properties file for an application server, edit the properties, and apply them to your configuration. You can also use interactive mode with these commands, as the following syntax demonstrates:
AdminTask.commandName('-interactive')

Procedure

Modify an application server configuration, and apply the changes using a properties file.
  1. Launch the wsadmin tool.
  2. Extract the application server configuration to modify.
    Use the extractConfigProperties command to extract the object configuration, as the following Jython example demonstrates:
    AdminTask.extractConfigProperties('-propertiesFileName ConfigProperties_server1.props 
    -configData Server=server1')
    The system extracts the properties file, which contains each of the configuration objects and attributes for the server1 application server.
  3. Open the properties file, and manually edit the attribute values of interest.
    Avoid trouble: Because you are manually editing the properties file, make a back-up copy of the properties file before you edit it.
    The following sample is a section of an application server properties file:
    #
    # Configuration properties file for cells/myCell/nodes/myNode/servers/server1|server.xml#
    # Extracted on Thu Sep 06 00:27:26 CDT 2007
    #
    #
    # Section 1.0 ## cells/myCell/nodes/myNode/servers/server1|server.xml#server1
    #
    #
    # SubSection 1.0 # Server Section
    #
    ResourceType=Server
    ImplementingResourceType=Server
    ResourceId=cells/myCell/nodes/myNode/servers/server1|server.xml#server1
    #
    #
    #Properties
    #
    shortName=null
    serverType=APPLICATION_SERVER
    developmentMode=false #boolean
    name=server1
    parallelStartEnabled=true #boolean
    clusterName=C
    modelId=null
    uniqueId=null
    #
    
    To modify the application server to run in development mode and disable parallel start, modify the developmentMode and parallelStartEnabled properties, as the following example demonstrates:
    #
    # Configuration properties file for cells/myCell/nodes/myNode/servers/server1|server.xml#
    # Extracted on Thu Sep 06 00:27:26 CDT 2007
    #
    #
    # Section 1.0 ## cells/myCell/nodes/myNode/servers/server1|server.xml#server1
    #
    #
    # SubSection 1.0 # Server Section
    #
    ResourceType=Server
    ImplementingResourceType=Server
    ResourceId=cells/myCell/nodes/myNode/servers/server1|server.xml#server1
    #
    #
    #Properties
    #
    shortName=null
    serverType=APPLICATION_SERVER
    developmentMode=true #boolean
    name=server1
    parallelStartEnabled=false #boolean
    clusterName=C
    modelId=null
    uniqueId=null
    #
    
  4. Validate the properties file.
    Best practice: As a best practice, use the validateConfigProperties command to validate the modified properties file before applying the changes, as the following Jython example demonstrates:
    AdminTask.validateConfigProperties('-propertiesFileName ConfigProperties_server1.props
     -reportFileName report.txt')

    The command returns a value of true if the system successfully validates the properties file. The command returns a value of false if the system does not validate the file.

  5. Apply the changes to the application server.
    Use the applyConfigProperties command to apply the changes to the application server.
    AdminTask.applyConfigProperties('-propertiesFileName ConfigProperties_server1.props 
    -validate true')
  6. Save your configuration changes.
    AdminConfig.save()