Use the AdminConfig object to invoke configuration commands and to create or change elements of the WebSphere Application Server configuration, for example, creating a data source.
You can start the scripting client without a running server, if you only want to use local operations. To run in local mode, use the -conntype NONE option to start the scripting client. You receive a message that you are running in the local mode. If a server is currently running, running the AdminConfig tool in local mode is not recommended. This is because any configuration changes made in local mode will not be reflected in the running server configuration and vice versa. If you save a conflicting configuration, you could corrupt the configuration.
In a deployment manager environment, configuration updates are available only if a scripting client is connected to a deployment manager.
When connected to a node agent or a managed application server, you will not be able to update the configuration because the configuration for these server processes are copies of the master configuration which resides in the deployment manager. The copies are created on a node machine when a configuration synchronization occurs between the deployment manager and the node agent. Make configuration changes to the server processes by connecting a scripting client to a deployment manager. For this reason, to change a configuration, do not run a scripting client in local mode on a node machine. It is not a supported configuration.
Use the attributes command to return a list of the top level attributes for a given type.
Target object
None.Required parameters
Optional parameters
None.Sample output
"properties Property*" "serverSecurity ServerSecurity" "server Server@" "id Long" "stateManagement StateManageable" "name String" "moduleVisibility EEnumLiteral(MODULE, COMPATIBILITY, SERVER, APPLICATION)" "services Service*" "statisticsProvider StatisticsProvider"
Examples
$AdminConfig attributes ApplicationServer
print AdminConfig.attributes('ApplicationServer')
Use the checkin command to check a file into the configuration repository that is described by the document Uniform Resource Identifier (URI). This method only applies to deployment manager configurations.
Target object
None.Required parameters
Optional parameters
None.Sample output
"properties Property*" "serverSecurity ServerSecurity" "server Server@" "id Long" "stateManagement StateManageable" "name String" "moduleVisibility EEnumLiteral(MODULE, COMPATIBILITY, SERVER, APPLICATION)" "services Service*" "statisticsProvider StatisticsProvider"
Examples
$AdminConfig checkin cells/MyCell/Node/MyNode/serverindex.xml c:\\mydir\myfile $obj
print AdminConfig.checkin('cells/MyCell/Node/MyNode/serverindex.xml', 'c:\mydir\myfile', obj)
Use the convertToCluster command to convert a server so that it is the first member of a new server cluster.
Target object
None.Required parameters
Optional parameters
None.Sample output
myCluster(cells/mycell/clusters/myCluster|cluster.xml#ClusterMember_2)
Examples
set serverid [$AdminConfig getid /Server:myServer/] $AdminConfig convertToCluster $serverid myCluster
serverid = AdminConfig.getid('/Server:myServer/') print AdminConfig.convertToCluster(serverid, 'myCluster')
Use the create command to create configuration objects.
Target object
None.Required parameters
Optional parameters
None.Sample output
ds1(cells/mycell/nodes/DefaultNode/servers/server1|resources.xml#DataSource_6)
Examples
set jdbc1 [$AdminConfig getid /JDBCProvider:jdbc1/] $AdminConfig create DataSource $jdbc1 {{name ds1}}
jdbc1 = AdminConfig.getid('/JDBCProvider:jdbc1/') print AdminConfig.create('DataSource', jdbc1, '[[name ds1]]')
jdbc1 = AdminConfig.getid('/JDBCProvider:jdbc1/') print AdminConfig.create('DataSource', jdbc1, [['name', 'ds1']])
Use the createClusterMember command to create a new server object on the node that the node id parameter specifies. This server is created as a new member of the existing cluster that is specified by the cluster id parameter, and contains attributes that are specified in the member attributes parameter. The server is created using the server template that is specified by the template id attribute, and that contains the name specified by the memberName attribute. The memberName attribute is required. The template options are available only for the first cluster member that you create. All cluster members that you create after the first member will be identical.
Target object
None.Required parameters
Optional parameters
None.Sample output
myCluster(cells/mycell/clusters/myCluster|cluster.xml#ClusterMember_2)
Examples
set clid [$AdminConfig getid /ServerCluster:myCluster/] set nodeid [$AdminConfig getid /Node:mynode/] $AdminConfig createClusterMember $clid $nodeid {{memberName newMem1} {weight 5}}
clid = AdminConfig.getid('/ServerCluster:myCluster/') nodeid = AdminConfig.getid('/Node:mynode/') print AdminConfig.createClusterMember(clid, nodeid, '[[memberName newMem1] [weight 5]]')
clid = AdminConfig.getid('/ServerCluster:myCluster/') nodeid = AdminConfig.getid('/Node:mynode/') print AdminConfig.createClusterMember(clid, nodeid, [['memberName', 'newMem1'], ['weight', 5]])
Use the createDocument command to create a new document in the configuration repository.
Target object
None.Required parameters
Optional parameters
None.Examples
$AdminConfig createDocument cells/mycell/myfile.xml c:\mydir\myfile
AdminConfig.createDocument('cells/mycell/myfile.xml', 'c:\mydir\myfile')
Use the createUsingTemplate command to create a type of object with the given parent, using a template. You can only use this command for creation of a server with APPLICATION_SERVER type. If you want to create a server with a type other than APPLICATION_SERVER, use the createGenericServer or the createWebServer command.
Target object
None.Required parameters
Optional parameters
Sample output
myCluster(cells/mycell/clusters/myCluster|cluster.xml#ClusterMember_2)
Examples
set node [$AdminConfig getid /Node:mynode/] set templ [$AdminConfig listTemplates JDBCProvider "DB2 JDBC Provider (XA)"] $AdminConfig createUsingTemplate JDBCProvider $node {{name newdriver}} $templ
node = AdminConfig.getid('/Node:mynode/') templ = AdminConfig.listTemplates('JDBCProvider', "DB2 JDBC Provider (XA)") print AdminConfig.createUsingTemplate('JDBCProvider', node, '[[name newdriver]]', templ)
node = AdminConfig.getid('/Node:mynode/') templ = AdminConfig.listTemplates('JDBCProvider', "DB2 JDBC Provider (XA)") print AdminConfig.createUsingTemplate('JDBCProvider', node, [['name', 'newdriver']], templ)
Use the defaults command to display the default values for attributes of a given type. This method displays all of the possible attributes contained by an object of a specific type. If the attribute has a default value, this method also displays the type and default value for each attribute.
Target object
None.Required parameters
Optional parameters
None.Sample output
Attribute Type Default usingMultiRowSchema Boolean false maxInMemorySessionCount Integer 1000 allowOverflow Boolean true scheduleInvalidation Boolean false writeFrequency ENUM writeInterval Integer 120 writeContents ENUM invalidationTimeout Integer 30 invalidationSchedule InvalidationSchedule
Examples
$AdminConfig defaults TuningParams
print AdminConfig.defaults('TuningParams')
Use the deleteDocument command to delete a document from the configuration repository.
Target object
None.Required parameters
Optional parameters
None.Examples
$AdminConfig deleteDocument cells/mycell/myfile.xml
AdminConfig.deleteDocument('cells/mycell/myfile.xml')
Use the existsDocument command to test for the existence of a document in the configuration repository.
Target object
None.Required parameters
Optional parameters
None.Sample output
1
Examples
$AdminConfig existsDocument cells/mycell/myfile.xml
print AdminConfig.existsDocument('cells/mycell/myfile.xml')
Use the extract command to extract a configuration repository file that is described by the document URI and places it in the file named by filename. This method only applies to deployment manager configurations.
Target object
None.Required parameters
Optional parameters
None.Sample output
The command returns an opaque "digest" object which should be used to check the file back in using the checkin command.
Examples
set obj [$AdminConfig extract cells/MyCell/nodes/MyNode/serverindex.xml c:\\mydir\myfile]
obj = AdminConfig.extract('cells/MyCell/nodes/MyNode/serverindex.xml','c:\mydir\myfile')
Use the getCrossDocumentValidationEnabled command to return a message with the current cross-document enablement setting. This method returns true if cross-document validation is enabled.
Target object
None.Required parameters
None.
Optional parameters
None.
Sample output
WASX7188I: Cross-document validation enablement set to true
Examples
$AdminConfig getCrossDocumentValidationEnabled
print AdminConfig.getCrossDocumentValidationEnabled()
Use the getid command to return the configuration ID of an object.
Target object
None.Required parameters
Optional parameters
None.
Sample output
Db2JdbcDriver(cells/testcell/nodes/testnode|resources.xml#JDBCProvider_1)
Examples
$AdminConfig getid /Cell:testcell/Node:testNode/JDBCProvider:Db2JdbcDriver/
print AdminConfig.getid('/Cell:testcell/Node:testNode/JDBCProvider:Db2JdbcDriver/')
Use the getObjectName command to return a string version of the object name for the corresponding running MBean. This method returns an empty string if no corresponding running MBean exists.
Target object
None.Required parameters
Optional parameters
None.
Sample output
WebSphere:cell=mycell,name=server1,mbeanIdentifier=cells/mycell/nodes/mynode/servers/server1/ server.xml#Server_1,type=Server,node=mynode,process=server1,processType=UnManagedProcess
Examples
set server [$AdminConfig getid /Node:mynode/Server:server1/] $AdminConfig getObjectName $server
server = AdminConfig.getid('/Node:mynode/Server:server1/') print AdminConfig.getObjectName(server)
Target object
None.Required parameters
None.
Optional parameters
None.
Sample output
rollbackOnConflict
Examples
$AdminConfig getSaveMode
print AdminConfig.getSaveMode()
Use the getValidationLevel command to return the validation used when files are extracted from the repository.
Target object
None.Required parameters
None.
Optional parameters
None.
Sample output
WASX7189I: Validation level set to HIGH
Examples
$AdminConfig getValidationLevel
print AdminConfig.getValidationLevel()
Use the getValidationSeverityResult command to return the number of validation messages with the given severity from the most recent validation.
Target object
None.Required parameters
Optional parameters
None.
Sample output
16
Examples
$AdminConfig getValidationSeverityResult 1
print AdminConfig.getValidationSeverityResult(1)
Use the hasChanges command to determine if unsaved configuration changes exist.
Target object
None.Required parameters
None.
Optional parameters
None.
Sample output
1
Examples
$AdminConfig hasChanges
print AdminConfig.hasChanges()
Use the help command to display static help information for the AdminConfig object.
Target object
None.Required parameters
None.
Optional parameters
None.
Sample output
WASX7053I: The AdminConfig object communicates with the configuration service in a WebSphere Application Server to manipulate configuration data for an Application Server installation. The AdminConfig object has commands to list, create, remove, display, and modify configuration data, as well as commands to display information about configuration data types. Most of the commands supported by the AdminConfig object operate in two modes: the default mode is one in which the AdminConfig object communicates with the Application Server to accomplish its tasks. A local mode is also possible, in which no server communication takes place. The local mode of operation is invoked by bringing up the scripting client without a server connected using the command line "-conntype NONE" option or setting the "com.ibm.ws.scripting.connectionType=NONE" property in the wsadmin.properties file. The following commands are supported by the AdminConfig object; more detailed information about each of these commands is available by using the help command of the AdminConfig object and by supplying the name of the command as an argument. attributes Shows the attributes for a given type checkin Checks a file into the configuration repository. convertToCluster Converts a server to be the first member of a new server cluster create Creates a configuration object, given a type, a parent, and a list of attributes, and optionally an attribute name for the new object createClusterMember Creates a new server that is a member of an existing cluster. createDocument Creates a new document in the configuration repository. installResourceAdapter Installs a J2C resource adapter with the given RAR file name and an option string in the node. createUsingTemplate Creates an object using a particular template type. defaults Displays the default values for the attributes of a given type. deleteDocument Deletes a document from the configuration repository. existsDocument Tests for the existence of a document in the configuration repository. extract Extracts a file from the configuration repository. getCrossDocumentValidationEnabled Returns true if cross-document validation is enabled. getid Show the configuration ID of an object, given a string version of its containment getObjectName Given a configuration ID, returns a string version of the ObjectName for the corresponding running MBean, if any. getSaveMode Returns the mode used when "save" is invoked getValidationLevel Returns the validation that is used when files are extracted from the repository. getValidationSeverityResult Returns the number of messages of a given severity from the most recent validation. hasChanges Returns true if unsaved configuration changes exist help Shows help information list Lists all the configuration objects of a given type listTemplates Lists all the available configuration templates of a given type. modify Changes the specified attributes of a given configuration object parents Shows the objects which contain a given type queryChanges Returns a list of unsaved files remove Removes the specified configuration object required Displays the required attributes of a given type. reset Discards the unsaved configuration changes save Commits the unsaved changes to the configuration repository setCrossDocumentValidationEnabled Sets the cross-document validation enabled mode. setSaveMode Changes the mode used when "save" is invoked setValidationLevel Sets the validation used when files are extracted from the repository. show Shows the attributes of a given configuration object showall Recursively shows the attributes of a given configuration object, and all the objects that are contained within each attribute. showAttribute Displays only the value for the single attribute that is specified. types Shows the possible types for configuration validate Invokes validation
Examples
$AdminConfig help
print AdminConfig.help()
Use the installResourceAdapter command to install a Java 2 Connector (J2C) resource adapter with the given Resource Adapter Archive (RAR) file name and an option string in the node. When you edit the installed application with the embedded RAR, only existing J2C connection factory, J2C activation specs, and J2C administrative objects will be edited. No new J2C objects will be created.
Target object
None.Required parameters
Optional parameters
The rar.archivePath is the name of the path where you extract the file. If you do not specify this option, the archive is extracted to the $\{CONNECTOR_INSTALL_ROOT\} directory. The rar.classpath option is the additional class path.
name String value String type String *desc String *required true/false * means the item is optionalEach attribute of the property are specified in a set of {}. A property is specified in a set of {}. You can specify multiple properties in {}.
Sample output
myResourceAdapter(cells/mycell/nodes/mynode|resources.xml#J2CResourceAdapter_1)
Examples
$AdminConfig installResourceAdapter c:/rar/mine.rar mynode {-rar.name myResourceAdapter -rar.desc "My rar file"}
print AdminConfig.installResourceAdapter('c:/rar/mine.rar', 'mynode', '[-rar.name myResourceAdapter -rar.desc "My rar file"]')
resourceProperties (name=myName,value=myVal)into the resource adapter configuration.
pSet = [['propertySet',[['resourceProperties',[[['name','myName'], ['type', 'String'], ['value','myVal']]]]]]]
myRA =AdminConfig.installResourceAdapter('c:\query.rar','mynodeCellManager05',['-rar.desc','mydesc'])
wsadmin>AdminConfig.modify(myRA,pSet)
Target object
None.Required parameters
Optional parameters
None.
Sample output
Db2JdbcDriver(cells/mycell/nodes/DefaultNode|resources.xml#JDBCProvider_1) Db2JdbcDriver(cells/mycell/nodes/DefaultNode/servers/deploymentmgr|resources.xml#JDBCProvider_1) Db2JdbcDriver(cells/mycell/nodes/DefaultNode/servers/nodeAgent|resources.xml#JDBCProvider_1)
Examples
$AdminConfig list JDBCProvider
print AdminConfig.list('JDBCProvider')
Array Examples
set arrayTheList = theList.split(lineSeparator) $AdminConfig list arrayTheList
arrayTheList = theList.split(lineSeparator) print AdminConfig.list('arrayTheList')
Use the listTemplates command to display a list of template object IDs.
Target object
None.Required parameters
Optional parameters
None.Sample output
"Cloudscape JDBC Provider (XA)(templates/servertypes/APPLICATION_SERVER/servers/ defaultZOS_60X|resources.xml#builtin_jdbcprovider)" "Cloudscape JDBC Provider (XA)(templates/servertypes/APPLICATION_SERVER/servers/ default_60X|resources.xml#builtin_jdbcprovider)" "Cloudscape JDBC Provider (XA)(templates/servertypes/PROXY_SERVER/servers/proxy_ server_60X|resources.xml#builtin_jdbcprovider)" "Cloudscape JDBC Provider (XA)(templates/servertypes/PROXY_SERVER/servers/proxy_ server_zos_60X|resources.xml#builtin_jdbcprovider)" "Cloudscape JDBC Provider (XA)(templates/system|jdbc-resource-provider-templates .xml#JDBCProvider_db2j_4)" "Cloudscape JDBC Provider Only (XA)(templates/system|jdbc-resource-provider-only -templates.xml#JDBCProvider_db2j_4)" "Cloudscape JDBC Provider Only(templates/system|jdbc-resource-provider-only-temp lates.xml#JDBCProvider_db2j_3)" "Cloudscape JDBC Provider(templates/servertypes/APPLICATION_SERVER/servers/defau ltZOS_5X|resources.xml#JDBCProvider_1)" "Cloudscape JDBC Provider(templates/servertypes/APPLICATION_SERVER/servers/defau lt_5X|resources.xml#JDBCProvider_1)" "Cloudscape JDBC Provider(templates/system|jdbc-resource-provider-templates.xml#J DBCProvider_db2j_3)" "Cloudscape Network Server Using Universal JDBC Driver Provider Only(templates/s ystem|jdbc-resource-provider-only-templates.xml#JDBCProvider_db2jN_1)" "Cloudscape Network Server Using Universal JDBC Driver(templates/system|jdbc-res ource-provider-templates.xml#JDBCProvider_db2jN_1)" "DB2 Legacy CLI-based Type 2 JDBC Driver (XA)(templates/system|jdbc-resource-pro vider-templates.xml#JDBCProvider_4)"
Examples
$AdminConfig listTemplates JDBCProvider
print AdminConfig.listTemplates('JDBCProvider')
Use the modify command to support the modification of object attributes.
Target object
None.Required parameters
Optional parameters
None.Examples
$AdminConfig modify ConnFactory1(cells/mycell/nodes/DefaultNode/servers/deploymentmgr|resources.xml# GenericJMSConnectionFactory_1) {{userID newID} {password newPW}}
AdminConfig.modify('ConnFactory1(cells/mycell/nodes/DefaultNode/servers/deploymentmgr|resources.xml# GenericJMSConnectionFactory_1)', '[[userID newID] [password newPW]]')
AdminConfig.modify('ConnFactory1(cells/mycell/nodes/DefaultNode/servers/deploymentmgr|resources.xml# GenericJMSConnectionFactory_1)', [['userID', 'newID'], ['password', 'newPW']])
Use the parents command to obtain information about object types.
Target object
None.Required parameters
Optional parameters
None.Sample output
Cell Node Server
Examples
$AdminConfig parents JDBCProvider
print AdminConfig.parents('JDBCProvider')
Use the queryChanges command to return a list of unsaved configuration files.
Target object
None.Required parameters
None.Optional parameters
None.Sample output
WASX7146I: The following configuration files contain unsaved changes: cells/mycell/nodes/mynode/servers/server1|resources.xml
Examples
$AdminConfig queryChanges
print AdminConfig.queryChanges()
Use the remove command to remove a configuration object.
Target object
None.Required parameters
Optional parameters
None.Examples
$AdminConfig remove ds1(cells/mycell/nodes/DefaultNode/servers/server1:resources.xml#DataSource_6)
AdminConfig.remove('ds1(cells/mycell/nodes/DefaultNode/servers/server1:resources.xml#DataSource_6)')
Use the required command to display the required attributes that are contained by an object of a certain type.
Target object
None.Required parameters
Optional parameters
None.Sample output
Attribute Type streamHandlerClassName String protocol String
Examples
$AdminConfig required URLProvider
print AdminConfig.required('URLProvider')
Use the reset command to reset the temporary workspace that holds updates to the configuration.
Target object
None.Required parameters
None.Optional parameters
None.Examples
$AdminConfig reset
AdminConfig.reset()
Use the save command to save changes to the configuration repository.
Target object
None.Required parameters
None.Optional parameters
None.Sample output
The save command does not return output.
Examples
$AdminConfig save
AdminConfig.save()
Use the setCrossDocumentValidationEnabled command to set the cross-document validation enabled mode. Values include true or false.
Target object
None.Required parameters
Optional parameters
None.Sample output
WASX7188I: Cross-document validation enablement set to true
Examples
$AdminConfig setCrossDocumentValidationEnabled true
print AdminConfig.setCrossDocumentValidationEnabled('true')
Use the setSaveMode command to modify the behavior of the save command.
Target object
None.Required parameters
Optional parameters
None.Sample output
The setSaveMode command does not return output.
Examples
$AdminConfig setSaveMode overwriteOnConflict
AdminConfig.setSaveMode('overwriteOnConflict')
Use the setValidationLevel command to set the validation that is used when files are extracted from the repository.
Target object
None.Required parameters
Optional parameters
None.Sample output
WASX7189I: Validation level set to HIGH
Examples
$AdminConfig setValidationLevel high
print AdminConfig.setValidationLevel('high')
Use the show command to return the top-level attributes of the given object.
Target object
None.Required parameters
Optional parameters
None.Sample output
[name "Sample Datasource"] [description "Data source for the Sample entity beans"]
Examples
$AdminConfig show Db2JdbcDriver(cells/mycell/nodes/DefaultNode|resources.xmlJDBCProvider_1)
print AdminConfig.show('Db2JdbcDriver(cells/mycell/nodes/DefaultNode|resources.xmlJDBCProvider_1)')
Use the showall command to recursively show the attributes of a given configuration object.
Target object
None.Required parameters
Optional parameters
None.Sample output
[datasourceHelperClassname com.ibm.websphere.rsadapter.CloudscapeDataStoreHelper] [description "Datasource for the WebSphere Default Application"] [jndiName DefaultDatasource] [name "Default Datasource"] [propertySet [[resourceProperties [[[description "Location of Cloudscape default database."] [name databaseName] [type string] [value ${WAS_INSTALL_ROOT}/bin/DefaultDB]] [[name remoteDataSourceProtocol] [type string] [value []]] [[name shutdownDatabase] [type string] [value []]] [[name dataSourceName] [type string] [value []]] [[name description] [type string] [value []]] [[name connectionAttributes] [type string] [value []]] [[name createDatabase] [type string] [value []]]]]]] [provider "Cloudscape JDBC Driver(cells/pongo/nodes/pongo/servers/server1|resources.xml#JDBCProvider_1)"] [relationalResourceAdapter "WebSphere Relational Resource Adapter(cells/pongo/nodes/pongo/servers/server1| resources.xml#builtin_rra)"] [statementCacheSize 0]
Examples
$AdminConfig showall "Default Datasource(cells/mycell/nodes/DefaultNode/servers/server1:resources.xml#DataSource_1)
print AdminConfig.showall("Default Datasource(cells/mycell/nodes/DefaultNode/servers/server1:resources.xml#DataSource_1)")
Use the showAttribute command to display only the value for the single attribute that you specify.
Target object
None.Required parameters
Optional parameters
None.Sample output
mynode
Examples
set ns [$AdminConfig getid /Node:mynode/] $AdminConfig showAttribute $ns hostName
ns = AdminConfig.getid('/Node:mynode/') print AdminConfig.showAttribute(ns, 'hostName')
Use the types command to return a list of the configuration object types that you can manipulate.
Target object
None.Required parameters
None.Optional parameters
None.Sample output
AdminService Agent ApplicationConfig ApplicationDeployment ApplicationServer AuthMechanism AuthenticationTarget AuthorizationConfig AuthorizationProvider AuthorizationTableImpl BackupCluster CMPConnectionFactory CORBAObjectNameSpaceBinding Cell CellManager Classloader ClusterMember ClusteredTarget CommonSecureInteropComponent
Examples
$AdminConfig types
print AdminConfig.types()
Use the uninstallResourceAdapter command to uninstall a Java 2 Connector (J2C) resource adapter with the given J2C resource adapter configuration ID and an option list. When you remove a J2CResourceAdapter object from the configuration repository, the installed directory will be removed at the time of synchronization. A stop request will be sent to the J2CResourceAdapter MBean that was removed.
UninstallsTarget object
None.Required parameters
Optional parameters
Sample output
WASX7397I: The following J2CResourceAdapter objects are removed: MyJ2CRA(cells/juniarti/nodes/juniarti|resources.xml#J2CResourceAdapter_1069433028609)
Examples
set j2cra [$AdminConfig getid /J2CResourceAdapter:MyJ2CRA/] $AdminConfig uninstallResourceAdapter $j2cra {-force} $AdminConfig save
j2cra = AdminConfig.getid('/J2CResourceAdapter:MyJ2CRA/') print AdminConfig.uninstallResourceAdapter(j2cra, '[-force]') AdminConfig.save()
Use the validate command to request the configuration validation results based on the files in your workspace, the value of the cross-document validation enabled flag, and the validation level setting. Optionally, you can specify a configuration ID to set the scope. If you specify a configuration ID, the scope of this request is the object named by the configuration ID parameter.
Target object
None.Required parameters
None.Optional parameters
Sample output
WASX7193I: Validation results are logged in c:\WebSphere5\AppServer\logs\wsadmin.valout: Total number of messages: 16 WASX7194I: Number of messages of severity 1: 16
Examples
$AdminConfig validate
print AdminConfig.validate()