2010-06-14 2 views

Répondre

0

À première vue, je vois au moins deux façons de le faire:

1 - lire la valeur des propriétés fichier et le stocker comme un champ statique dans votre classe d'action. Un initialiseur statique devrait faire pour charger le paquet et lire la valeur. Lorsque votre classe Action est chargée par la JVM, vous obtenez votre valeur et plus tard, vous l'utilisez à partir de là.

public class YourAction extends Action { 
    private static String value; 
    static { 
    // value = load code here 
    } 
    ... 
} 

Puisque vous ne je pense pas avoir accès à Struts capacités lorsque cela est chargé, vous devrez aller pour quelque chose comme ce qui suit pour lire votre valeur:

ResourceBundle.getBundle("com/some/package/bundle").getString("some_key") 

2 - ont votre valeur mis sur l'instance d'action et chargé avec votre constructeur, puis simplement l'utiliser:

public class YourAction extends Action { 
    private String value; 
    public YourAction() { 
    super(); 
    //value = load code here 
    } 
    ... 
} 

Cela fonctionnera, car Struts utilise une instance d'action pour servir toutes les demandes, de sorte que toutes les demandes w mal voir votre valeur (c.-à-d. Les classes d'action Struts ne sont pas thread-safe, elles se comportent comme des servlets).

Questions connexes