Я использую wasdmin shell и jython lang для настройки свойств в WAS9. На самом деле я создал автоматизированный процесс с несколькими сценариями оболочки и jython, который помогает в настройке моего приложения.
При использовании AdminConfig.create () он выдает ниже исключение для нескольких свойств:
[17.01.19 17: 06: 20: 032 CET] 00000001 AbstractShell E WASX7120E: Диагностическая информация из исключения с текстом «com.ibm.ws.scripting.ScriptingException: WASX7129E: Невозможно создать объекты типа« Свойство » в родителях типа "DescriptiveProperty"
"следует:
com.ibm.ws.scripting.ScriptingException: WASX7129E: Невозможно создать объекты типа «Свойство» в родительских элементах типа «DescriptiveProperty»
Мой код сначала проверяет, существует ли свойство уже или нет, если оно существует, я удаляю его и создаю его, эту идею я получил после просмотра файла Jython IBM для добавления свойств JVM. Это текущий поток моего кода. Ранее я проверял, существует ли свойство или нет, если оно существует, я использовал его для изменения, иначе создаю его. Я получал другую ошибку из блока модификации, поэтому я использую delete, а затем создаю логику.
currentProps = getListArray(AdminConfig.list(property, parent))
for prop in currentProps:
if property == AdminConfig.showAttribute(prop, "name"):
logging.info('Removing existing property from Server')
AdminConfig.remove(prop)
# create new property
logging.info('Creating new property %s', key)
if type:
AdminConfig.create(
property,
parent,
[
[ 'type', type ],
[ 'name', key ],
[ 'value', value ],
]
)
else:
AdminConfig.create(
property,
parent,
[
[ 'name', key ],
[ 'value', value ],
]
)
Я хочу знать, можно ли судить, какое свойство является описательным, поэтому я могу использовать блок if else для переадресации.