【问题标题】:WebLogic 12c, how to set console cookie name with WLSTWebLogic 12c,如何使用 WLST 设置控制台 cookie 名称
【发布时间】:2018-09-25 19:33:13
【问题描述】:

在管理控制台中,我可以在域 -> 配置 -> 常规 -> 高级 -> 控制台 Cookie 名称下设置管理控制台 cookie 名称

如何在离线模式下使用 WLST 设置值?

【问题讨论】:

    标签: weblogic weblogic12c wlst


    【解决方案1】:

    这是一个更新 cookie 域的示例脚本:

    readDomain(<FULL PATH TO YOUR DOMAIN>)
    create('NO_NAME_0','AdminConsole')
    cd ('AdminConsole')
    cd ('NO_NAME_0')
    set('CookieName','<NEW COOKIE NAME>>')
    updateDomain()
    closeDomain()
    

    【讨论】:

    • 这行得通。但是为什么我必须先使用create?参考 WLST 文档,这是在哪里解释的?
    • 所有 mbean 在域创建后并不总是存在。您必须检查它是否存在,然后根据需要创建它。
    • 我是对的,因为在离线模式下,我们实际上使用的是配置文件而不是运行时 MBean,如果服务器没有启动一次,则某些 MBean 的配置文件不存在。并且在运行期间,如果需要,这些 MBean 可以将它们的状态保存在配置文件中。
    • 当您更新配置时,无论您是处于在线模式还是离线模式,您总是在使用配置 mbean。运行时 mbean 不携带任何可以更新的配置信息。
    【解决方案2】:

    这是基于@Emmanuel Collin 的解决方案的改进的异常处理解决方案。

    def updateConsoleCookieName(_domainHome, _domainName):
        import random
        _cookieName = str(random.randint(10000, 99999)) + '_CONSOLESESSION'
        print("updating console cookie name to '%s' for '%s'..." % (_cookieName, _domainName))
    
        try:
            readDomain(_domainHome)
            create(_domainName,'AdminConsole')
        finally:
            cd('/AdminConsole/' + _domainName)
            cmo.setCookieName(_cookieName)
            updateDomain()
            closeDomain()
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2020-02-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-08-07
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多