Use scripting to interpret the output of the AdminConfig
attributes command.
About this task
The attributes command is a wsadmin tool on-line
help feature. When you issue the attributes command, the information
that displays does not represent a particular configuration object.
It represents information about configuration object types, or object
metadata. This article discusses how to interpret the attribute type
display.
- Simple attributes
Using Jacl:
$AdminConfig attributes ExampleType1
"attr1 String"
Using Jython:
print AdminConfig.attributes('ExampleType1')
attr1 String
Types do not display as fully qualified names.
For example, String is used for java.lang.String.
There are no ambiguous type names in the model. For example, x.y.ztype and a.b.ztype.
Using only the final portion of the name is possible, and it makes
the output easier to read.
- Multiple attributes
Using Jacl:
$AdminConfig attributes ExampleType2
"attr1 String" "attr2 Boolean" "attr3 Integer"
Using Jython:
print AdminConfig.attributes('ExampleType2')
attr1 String attr2 Boolean attr3 Integer
All input and
output for the scripting client takes place with strings, but attr2
Boolean indicates that true or false are appropriate
values. The attr3 Integer indicates that string representations
of integers ("42") are needed. Some attributes have string values
that can take only one of a small number of predefined values. The
wsadmin tool distinguishes these values in the output by the special
type name ENUM, for example:
Using Jacl:
$AdminConfig attributes ExampleType3
"attr4 ENUM(ALL, SOME, NONE)"
Using Jython:
print AdminConfig.attributes('ExampleType3')
attr4 ENUM(ALL, SOME, NONE)
where: attr4 is an
ENUM type. When you query or set the attribute, one of the values
is ALL, SOME, or NONE. The value A_FEW results
in an error.
- Nested attributes
Using Jacl:
$AdminConfig attributes ExampleType4
"attr5 String" "ex5 ExampleType5"
Using Jython:
print AdminConfig.attributes('ExampleType4')
attr5 String ex5 ExampleType5
The ExampleType4 object
has two attributes: a string, and an ExampleType5 object.
If you do not know what is contained in the ExampleType5 object, you
can use another attributes command to find out. The attributes command
displays only the attributes that the type contains directly. It does
not recursively display the attributes of nested types.
- Attributes that represent lists
The values
of these attributes are object lists of different types. The * character
distinguishes these attributes, for example:
Using Jacl:
$AdminConfig attributes ExampleType5
"ex6 ExampleType6*"
Using Jython:
print AdminConfig.attributes('ExampleType5')
ex6 ExampleType6*
In this example, objects of the ExampleType5 type
contain a single attribute, ex6. The value of this attribute
is a list of ExampleType6 type objects.
- Reference attributes
An attribute value that
references another object. You cannot change these references using
modify commands, but these references display because they are part
of the complete representation of the type. Distinguish reference
attributes using the @ sign, for example:
Using Jacl:
$AdminConfig attributes ExampleType6
"attr7 Boolean" "ex7 ExampleType7@"
Using Jython:
print AdminConfig.attributes('ExampleType6')
attr7 Boolean ex7 ExampleType7@
ExampleType6 objects
contain references to ExampleType7 type objects.
- Generic attributes
These attributes have
generic types. The values of these attributes are not necessarily
this generic type. These attributes can take values of several different
specific types. When you use the AdminConfig attributes command to
display the attributes of this object, the various possibilities for
specific types are shown in parentheses, for example:
Using
Jacl:
$AdminConfig attributes ExampleType8
"name String" "beast AnimalType(HorseType, FishType, ButterflyType)"
Using
Jython:
print AdminConfig.attributes('ExampleType8')
name String beast AnimalType(HorseType, FishType, ButterflyType)
In
this example, the beast attribute represents an object of
the generic AnimalType. This generic type is associated with
three specific subtypes. The wsadmin tool gives these subtypes in
parentheses after the name of the base type. In any particular instance
of ExampleType8, the beast attribute can have a
value of HorseType, FishType, or ButterflyType.
When you specify an attribute in this way, using a modify or create
command, specify the type of AnimalType. If you do not specify
the AnimalType, a generic AnimalType object is assumed
(specifying the generic type is possible and legitimate). This is
done by specifying beast:HorseType instead of beast.