Ich habe ein kleines Problem mit dem Websphere Application Server 7.0 (WAS7) und dem Lesen von Environment Varaibles.
Mit TomCat habe ich eine Variable als
definiert %Vor%und ich lese es mit einem Nachschlagen auf dem initialContext:
%Vor%und es funktioniert!
Aber mit Websphere definiere ich eine Umgebungsvariable auf der GUI, aber ich kann sie nicht in meinem Java-Code lesen. Ich habe eine NamingException.
Wie kann ich mein Problem beheben?
zum Definieren innerhalb von web.xml
%Vor%um mit Java zu sehen
%Vor% Sie können etwas wie das Folgende in Ihre web.xml
-Datei schreiben, die sich im Verzeichnis WEB-INF
Ihrer Anwendung befinden sollte:
Übrigens ist dies eine Standardsyntax und sollte auf allen Anwendungsservern funktionieren. Ich verwende es mit WebSphere, JBoss und WebLogic. Es kann genau wie in Ihrem Beispiel abgefragt werden.
Wenn Sie Ihre eigenen Variablen definieren und verwalten möchten, sehen Sie sich Environment- & gt; Naming- & gt; Namensraumbindungen an. Sie können dort Jndi-Namen an String-Konstanten binden. Weitere Informationen finden Sie unter String-Bindungseinstellungen
Bei WAS folgen Sie der obigen Einstellung, wobei Name der Schlüssel und Wert der Wert Ihrer Eigenschaft ist. In meinem Beispiel verwende ich Name: Testwert: Dies ist der Testwert. Nachdem Sie diese Werte festgelegt haben, starten Sie den Anwendungsserver neu. Rufen Sie in Ihrem Java-Code System.getProperty ("TEST") auf, wobei test der Name für Ihre Eigenschaft ist und der Wert
angezeigt wird Sie sollten in der Lage sein, diese über WebSphere zu beheben. AdminOperations
MBean :
Siehe Erstellen, Bearbeiten und Löschen von WebSphere-Variablen .
Sie sehen sich den falschen Ort an.
Sie sollten die Variable in Environment- & gt; Naming- & gt; Name space bindings- & gt; Neu hinzufügen.
Wenn Sie Binding type String, Binding identifier und Name in namespace ... myVar wählen, können Sie den Variablenwert mit:
erhalten %Vor%Websphere 7.0 - 8.5
Variable setzen Admin-Konsole --- & gt; Websphere-Anwendungsserver ----- & gt; Your_sever_name --- & gt; Java und Prozessmanagement --- & gt; Prozessdefinition - & gt; Java Virtual Machine - & gt; Benutzerdefinierte Eigenschaften
Holen Sie sich Wert in Java System.getProperty ("Your_Variable")