【问题标题】:web.xml property override by Weblogic deployment planWeblogic 部署计划覆盖的 web.xml 属性
【发布时间】:2011-12-13 22:04:40
【问题描述】:

试图覆盖我的 web.xml 文件的

<login-config>
  <auth-method>BASIC</auth-method>
</login-config>

我尝试使用以下部署计划,它似乎应该可以工作......但它似乎没有。我需要删除登录配置或将其更改为客户端证书。

  <variable-definition>    
     <variable>   
        <name>authMethod</name>  
        <value>CLIENT-CERT</value>  
      </variable>
   </variable-definition>
......
   <module-descriptor external="false">
      <root-element>web-app</root-element>
      <uri>WEB-INF/web.xml</uri>
      <variable-assignment>
        <name>authMethod</name>
        <xpath>/web-app/login-config/auth-method</xpath>
        <operation>replace</operation>
      </variable-assignment>
    </module-descriptor>

【问题讨论】:

  • 这对我来说确实正确。您是否已验证它实际上正在使用您的部署计划?您可以使用 WLS 控制台进行检查。
  • 控制台显示不多。然而,还有另一个变量被正确注入,所以我认为它在一定程度上是有效的。
  • @DmitryB 你能解决这个问题吗?
  • 不太清楚。在测试应用程序的一项测试中,它似乎在重新启动服务器实例后工作。所以试试吧。

标签: deployment weblogic weblogic11g


【解决方案1】:

我遇到了类似的问题,发现默认情况下 Weblogic 的计划生成器会生成 plan.xml,其中包含以下内容:

<?xml version='1.0' encoding='UTF-8'?>
<deployment-plan xmlns="http://xmlns.oracle.com/weblogic/deployment-plan" 
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xsi:schemaLocation="http://xmlns.oracle.com/weblogic/deployment-plan    
    http://xmlns.oracle.com/weblogic/deployment-plan/1.0/deployment-plan.xsd" 
    global-variables="false">

global-variables="false" 更改为global-variables="true" 为我解决了这个问题。

【讨论】:

    【解决方案2】:

    尝试将您的 xpath 修改为以下内容:

     <xpath>/web-app/login-config/auth-method/[param-name="authMethod"]/param-value</xpath>
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-12-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-10-09
      • 2021-08-01
      相关资源
      最近更新 更多