Как установить значение в web.xml, используя файл свойств? - PullRequest
9 голосов
/ 15 июля 2010

Я хотел бы знать, есть ли возможность установить атрибут в web.xml, используя файл свойств.Например, web.xml:

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

и application.properties будет:

# My computer's name
my.computer=eniac

Ответы [ 2 ]

2 голосов
/ 17 июня 2012

вы не можете установить значение из файла Properties, но вы можете установить файл свойств и прочитать его во время выполнения.

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

, а затем прочитать файл свойств во время выполнения.

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());

надеюсь, это поможет и другим.

0 голосов
/ 15 июля 2014

Нельзя заменять значения в web.xml таким образом.

Один вариант, который я могу предложить, если это возможно, просто иметь шаблон web.xml с заполнителем для значений, а во время сборки для каждой среды иметьшаг в процессе сборки, который заменит требуемые значения из файла требуемых свойств этой среды.

...