Вот решение, которое использует AdminConfig
, так что вы можете установить значение свойства в тире -
. Решение учитывает несколько источников данных, находя правильный, указав соответствующую область (т. Е. Сервер, но это можно изменить, если ваш источник данных существует в другой области), а затем найдя источник данных по имени. Решение также учитывает изменение существующего свойства dateSeparator, если оно существует, или оно создает его, если его нет.
Код выглядит не очень элегантно, но я думаю, что он должен решить вашу проблему:
def setDataSourceProperty(cell, node, server, ds, propName, propVal) :
scopes = AdminConfig.getid("/Cell:%s/Node:%s/Server:%s/" % (cell, node, server)).splitlines()
datasources = AdminConfig.list("DataSource", scopes[0]).splitlines()
for datasource in datasources :
if AdminConfig.showAttribute(datasource, "name") == ds :
propertySet = AdminConfig.list("J2EEResourcePropertySet", datasource).splitlines()
customProp = [["name", propName], ["value", propVal]]
for property in AdminConfig.list("J2EEResourceProperty", propertySet[0]).splitlines() :
if AdminConfig.showAttribute(property, "name") == propName :
AdminConfig.modify(property, customProp)
return
AdminConfig.create("J2EEResourceProperty", propertySet[0], customProp)
if (__name__ == "__main__"):
setDataSourceProperty("myCell01", "myNode01", "myServer", "myDataSource", "dateSeparator", "-")
AdminConfig.save()