我们是Weblogic(12c)的新手.我们尝试选择如何将某些配置传递给应用程序,具体取决于它所运行的环境(dev / staging / prod).
我目前正在尝试使用部署计划.在WEB-INF / web.xml中,我有:
<context-param>
<param-name>test</param-name>
<param-value>11111</param-value>
</context-param>
我在Weblogic中为我的应用程序使用了plan.xml.
一些部分 :
<variable-definition>
<variable>
<name>test</name>
<value xsi:nil="false">22222</value>
<description>some description</description>
</variable>
</variable-definition>
和
<module-descriptor external="false">
<root-element>web-app</root-element>
<uri>WEB-INF/web.xml</uri>
<variable-assignment>
<name>test</name>
<xpath>/web-app/context-param/[param-name="test"]/param-value</xpath>
<origin>planbased</origin>
<operation>replace</operation>
</variable-assignment>
</module-descriptor>
这可行!
但是我听说可以从管理控制台更改变量的值,对吗?
当我在控制台中(在“部署计划”选项卡或“配置”选项卡中)浏览应用程序时,没有看到可用于更改测试变量的任何字段…我缺少某些内容还是必须覆盖变量的值在plan.xml文件本身中设置?
解决方法:
我认为您不能直接更改变量,我相信这是因为这是对部署的根本更改,需要“热更新”,但是您可以轻松地通过新计划“重新部署/更新”.这是在生产环境中的处理方式:
>在Weblogic管理控制台中,单击部署,然后单击您的耳朵/战争旁边的复选框
>单击更新
>下一个屏幕将询问您源路径和部署计划路径,您可以仅更改部署计划路径来设置新值
如果要从command line开始,也可以使用update选项调用java weblogic.Deployer.
也可以通过WLST脚本执行相同操作-参见这些Oracle Docs