Jython: определение порта - PullRequest
1 голос
/ 05 января 2011

Я ищу jython-скрипт, который выполняет следующие действия:

  1. Серверы> серверы приложений> server1> Порты> WC_default> (set) port = 8080.

  2. enviornment> virtaul hosts> deault_host> псевдонимы хостов> [если есть запись с именем хоста == *, то port = 8080]

Спасибо большоемного.

1 Ответ

2 голосов
/ 23 марта 2011

Используйте следующий код в качестве отправной точки:

serverEntries = AdminConfig.list('ServerEntry', AdminConfig.getid('/Node:' + nodeName + '/')).split(java.lang.System.getProperty('line.separator'))
for serverEntry in serverEntries:
    if AdminConfig.showAttribute(serverEntry, "serverName") == 'server1':
        sepString = AdminConfig.showAttribute(serverEntry, "specialEndpoints")
        sepList = sepString[1:len(sepString)-1].split(" ")
        for specialEndPoint in sepList:
            endPointNm = AdminConfig.showAttribute(specialEndPoint, "endPointName")
            if endPointNm == "WC_defaulthost":
                ePoint = AdminConfig.showAttribute(specialEndPoint, "endPoint")
                # at this point you probably want to do a resetAttribute instead of showAttribute
                defaultHostPort = AdminConfig.showAttribute(ePoint, "port")
                break

for hostAlias in AdminConfig.getid('/Cell:' + cellName + '/VirtualHost:default_host/HostAlias:/').split(java.lang.System.getProperty('line.separator')):
    if AdminConfig.showAttribute(hostAlias, 'port') == defaultHostPort:
        print "Deleting host alias for port " + defaultHostPort
        AdminConfig.remove(hostAlias)
AdminConfig.create('HostAlias', AdminConfig.getid('/Cell:' + cellName + '/VirtualHost:default_host/'), [['hostname', '*'],['port', defaultHostPort]])
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...