2010-07-14 2 views
8

Je voudrais savoir s'il est possible de définir un attribut dans web.xml en utilisant un fichier de propriétés. Par exemple, le web.xml:Comment définir la valeur dans web.xml en utilisant le fichier de propriétés

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

et application.properties serait:

# My computer's name
my.computer=eniac

Merci pour les réponses. Tomas

+0

Vérifiez ces: - http://stackoverflow.com/questions/15380817/properties-file-as-init-param-in-web-xml - http://stackoverflow.com/questions/12099008/comment-inclure-des-valeurs-de-propriétés-fichier-dans-web-xml – Chepech

Répondre

1

Vous ne pouvez pas définir de valeur à partir du fichier Properties mais vous pouvez définir le fichier de propriétés et le lire lors de l'exécution.

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

puis de lire le fichier de propriétés lors de l'exécution.

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

espérons que cette aide aussi.

0

Vous ne pouvez pas substituer des valeurs dans web.xml comme ça. Une option que je peux suggérer si possible juste avoir un modèle web.xml avec un espace réservé pour les valeurs et lors de la construction pour chaque environnement ont une étape dans le processus de construction qui remplacera les valeurs requises du fichier de propriétés requises de cet environnement.

Questions connexes