开发者

How to set value in web.xml using property file?

I would like to know if there is possibility to set an attribute in web.xml by using property file. For example the web.xml:

<context-param>
  <param-name>Map.MyJNDI</param-name>
  <param-value>java:comp/env/jdbc/${my.computer}</param-value>
</context-param>

and applica开发者_JAVA百科tion.properties would be:

# My computer's name
my.computer=eniac


you can not set value from Properties file but you can set the property file and read its at runtime.

<context-param>
    <param-name>propfile</param-name>
    <param-value>myproject.properties</param-value>
</context-param>

then read the property file at runtime.

MyServlet myServlet = new MyServlet();

Properties  properties = new Properties();
//  get the properties file name 
String propfile = myServlet.getInitParameter("propfile");

// load the file 
properties.load(getClass().getClassLoader().getResourceAsStream(propfile));

// get the desire properties 
Object propName = properties.get("my.computer");
// out.println(propName.toString());

hope this help other too.


You can't have values substituted in web.xml like that.

One option I can suggest if possible just have a template web.xml with place holder for values and during build for each environment have a step in build process that will substitute required values from required properties file of that environment.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜