【发布时间】:2011-10-26 13:39:02
【问题描述】:
我试图在启动 weblogic 服务器时使用 -D 表示法将 web.xml 中配置的变量的 JVM 参数作为上下文参数传递。我已经使用 Tomcat 7 尝试了相同的配置,它按预期工作,但它在 weblogic server 10.3.3 中不起作用。有什么线索吗?
web.xml
<?xml version="1.0" encoding="UTF-8" ?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
id="WebApp_ID" version="2.5">
<display-name>testeParWebXml</display-name>
<context-param>
<description>Habilita ou desabilita a configuração de debug do Facelets! Página de debug do Seam.</description>
<param-name>facelets.DEVELOPMENT</param-name>
<param-value>${habilitar.debug}</param-value>
</context-param>
<welcome-file-list>
然后在启动 jvm 时,我使用以下方式传递参数:
-Dhabilitar.debug=true
我构建了一个 Servlet 来测试:
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
PrintWriter pw = response.getWriter();
String valorParametro = getServletContext().getInitParameter("facelets.DEVELOPMENT");
pw.write("Param value from web.xml ==>> " + valorParametro);
}
正如我在使用 Tomcat 时提到的,如果我在 -Dhabilitar.debug 标志中将值更改为 false 或 true,它会正确打印 servlet 中的值。
Param value from web.xml ==>> true
在 weblogic 中,我得到如下输出:
Param value from web.xml ==>> ${habilitar.debug}
如前所述,weblogic 不会解析 web.xml 中设置的变量的值。
是否可以在 weblogic 10.3.3 中使其正常工作?
【问题讨论】:
标签: configuration parameters weblogic web.xml