JBOSS_HOME beim start mitgeben?

Verjigorm

Top Contributor
Hallo,

in unserer Applikation wird ganz oft
Java:
String baseDir = System.getenv("JBOSS_HOME");
abgefragt. Diese Umgebungsvariable wird von uns in Windows gesertzt. Nun haben wir das Problem, wir wollen 2 JBoss parallel betreiben und dann funktioniert das natürlich nichtmehr so wirklich.
Ich hatte gehofft, ich könnte dem JBoss als Startparameter ein JBOSS_HOME mitgeben, sowas in der Art:
Java:
-DJBOSS_HOME=C:\Development\Java\jboss-4.2.2.GA
Leider bringt mich das nicht weiter, die Ausgabe von oben zeigt weiterhin den alten Pfad der gesetzten JBOSS_HOME-Variable von Windows an.
Jemand eine Idee wie man das machen kann? Ohne dass ich System.getenv rauswerfe?

mfg Verjigorm
 

FArt

Top Contributor
Hallo,

in unserer Applikation wird ganz oft
Java:
String baseDir = System.getenv("JBOSS_HOME");
abgefragt. Diese Umgebungsvariable wird von uns in Windows gesertzt. Nun haben wir das Problem, wir wollen 2 JBoss parallel betreiben und dann funktioniert das natürlich nichtmehr so wirklich.
Ich hatte gehofft, ich könnte dem JBoss als Startparameter ein JBOSS_HOME mitgeben, sowas in der Art:
Java:
-DJBOSS_HOME=C:\Development\Java\jboss-4.2.2.GA
Leider bringt mich das nicht weiter, die Ausgabe von oben zeigt weiterhin den alten Pfad der gesetzten JBOSS_HOME-Variable von Windows an.
Jemand eine Idee wie man das machen kann? Ohne dass ich System.getenv rauswerfe?

mfg Verjigorm

Falsche Antwort:
Ihr könnt immer noch die Umgebungsvariable setzen, aber im Startskript. Dann gilt sie nur für diesen Prozess.

Richtige Antwort:
Wenn ihr in einer Enterpriseapplikation oft den Ort der JBoss Installation benötigt, heißt das in der Regel, dass ihr hier grundsätzlich ein extrem suboptimale "Lösung" für ein Problem gefunden habt. Mit grpßer Wahrscheinlichkeit deutet das darauf hin, dass sich eure Enterpriseapplikation an manchen Stellen über die Spec hinwegsetzt. Ihr solltet dringend die Architektur und Implementierung euerer Applikation überdenken und ändern. Wenn man nicht den Applicationserver an sich durch Services erweitert, wird man diese Information nicht benötigen. Und selbst solche Erweiterungen sind in der Regel deployfähig und von dem Ort der Installation unabhängig.

Wofür braucht ihr das also?
 

Verjigorm

Top Contributor
Hallo,

ich habe das ganze nur übernommen und der Entwickler existiert nicht mehr :)

Es liegen im bin-Verzeichnis des JBoss verschiedene "config-files" die jeweils für bestimmte Teile der Anwendung ausgelesen werden. Es wird also z.B. die Datei <JBOSS_HOME>/bin/client-config.xml ausgelesen und diese Werte weitergereicht.
Da ich a) nicht besser weiss, wie man den "richtigen Pfad" zu einer config/properties-Files angeben müsste und b) garnicht weiss ob man das überhaupt machen sollte, bzw. wie man es besser macht, stehe ich nun da und denk mir meinen Teil ;)

gruß Verjigorm
 

FArt

Top Contributor
Hallo,

ich habe das ganze nur übernommen und der Entwickler existiert nicht mehr :)

Es liegen im bin-Verzeichnis des JBoss verschiedene "config-files" die jeweils für bestimmte Teile der Anwendung ausgelesen werden. Es wird also z.B. die Datei <JBOSS_HOME>/bin/client-config.xml ausgelesen und diese Werte weitergereicht.
Da ich a) nicht besser weiss, wie man den "richtigen Pfad" zu einer config/properties-Files angeben müsste und b) garnicht weiss ob man das überhaupt machen sollte, bzw. wie man es besser macht, stehe ich nun da und denk mir meinen Teil ;)

gruß Verjigorm

Das ist weder eine gute Ausrede noch eine gute Einstellung.
Dein Anspruch sollte es sein, aufgedeckte Fehler zu beheben. Sie werden mit Sicherheit irgendwann wieder Probleme machen (so wie jetzt), d.h. man hat eine sinnvolle Lösung nur aufgeschoben. Blöd ist es dann, wenn das Problem nicht im Zuge einer geplanten Umstellung auftritt, sondern als Bug im Produktivbetrieb.

Die Anforderung:
Konfigurationsdateien (für Clients?) sollen zur Laufzeit gelesen werden.

Lösung:
Die Dateien werden mit der Applikation (z.B. im EAR oder WAR) deployt und über den Kontextclass-Loader eingelesen. Dadurch ist kein Filezugriff mehr nötig, der (wenn er aus einem EJB heraus passiert) per Spec verboten ist.

Vorteile:
Keine Probleme mit Berechtigungen (Filesystem).
Keine Anpassungen der JBoss-Instanz (also Abhängigkeiten der Applikation in die Installation).
Spec konform.
Konfigurationen sind (unabhängig von der Applikation) einfach (auch zur Laufzeit) austauschbar.
...
 

Verjigorm

Top Contributor
Das ist weder eine gute Ausrede noch eine gute Einstellung.
Dein Anspruch sollte es sein, aufgedeckte Fehler zu beheben. Sie werden mit Sicherheit irgendwann wieder Probleme machen (so wie jetzt), d.h. man hat eine sinnvolle Lösung nur aufgeschoben. Blöd ist es dann, wenn das Problem nicht im Zuge einer geplanten Umstellung auftritt, sondern als Bug im Produktivbetrieb.

Die Anforderung:
Konfigurationsdateien (für Clients?) sollen zur Laufzeit gelesen werden.

Lösung:
Die Dateien werden mit der Applikation (z.B. im EAR oder WAR) deployt und über den Kontextclass-Loader eingelesen. Dadurch ist kein Filezugriff mehr nötig, der (wenn er aus einem EJB heraus passiert) per Spec verboten ist.

Vorteile:
Keine Probleme mit Berechtigungen (Filesystem).
Keine Anpassungen der JBoss-Instanz (also Abhängigkeiten der Applikation in die Installation).
Spec konform.
Konfigurationen sind (unabhängig von der Applikation) einfach (auch zur Laufzeit) austauschbar.
...

Ich beschäftige mich ja mit dem Thema, deswegen frage ich ja hier ;)

Zum Thema Classloader und Konfigurationen:
Wie sind die denn zur Laufzeit austauschbar wenn sie mit ins WAR/EAR deployt wurden?

mfg
 

FArt

Top Contributor
Ich beschäftige mich ja mit dem Thema, deswegen frage ich ja hier ;)

Zum Thema Classloader und Konfigurationen:
Wie sind die denn zur Laufzeit austauschbar wenn sie mit ins WAR/EAR deployt wurden?

mfg

Mann kann sie auch außerhalb der Applikation deployen, wenn man die Austauschbarkeit benötigen würde. Verschiedene Deployments können mit Abhängigkeiten zueinander ausgestattet werden, damit alles in der richtigen Reihenfolge deploy wird und somit nötigen Ressourcen rechtzeitig bereits sind.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
I "localhost" zu DNS (z.B. my webapp.de) ändern bei JBoss / Wildfly Server einrichten und konfigurieren 6
OnDemand Welcher Appserver? Glassfish, Jboss? Server einrichten und konfigurieren 8
C Probleme beim Starten von JBoss AS 7.1.1 Server einrichten und konfigurieren 1
P JBoss Domain mode Server einrichten und konfigurieren 1
W Mehrere Datasources unter JBoss Domain-Modus? Server einrichten und konfigurieren 0
D JBoss Download Speed Server einrichten und konfigurieren 3
M JBoss JNDI Server einrichten und konfigurieren 0
boxi JBoss standalone.sh bleibt "hängen" Server einrichten und konfigurieren 0
V JBoss DuplicateServiceException mysql Server einrichten und konfigurieren 2
R Jboss Problem nach versuchtem PrimeFaces Update Server einrichten und konfigurieren 0
P JBoss 7.1 konfigurieren fürs Web Server einrichten und konfigurieren 2
S JBoss 7.1.1 stürzt ab Server einrichten und konfigurieren 5
G JBoss restart nach Stromausfall Server einrichten und konfigurieren 2
E JBoss bind address Server einrichten und konfigurieren 4
P JBoss vom putty aus starten Server einrichten und konfigurieren 7
R Multi-Server Architektur im AS (JBOSS/Glassfish) realisieren Server einrichten und konfigurieren 2
T JBoss mit JSF Problemem Server einrichten und konfigurieren 2
P JBoss in Linux Server einrichten und konfigurieren 2
H JBoss AS 7.1.1 Installations problem Server einrichten und konfigurieren 2
N JBoss AS 7.1 - Fehler: Hauptklasse C: Server einrichten und konfigurieren 7
T JBOSS und Glassfish auf einem physischen Rechner Server einrichten und konfigurieren 5
G JNDI JBoss Server einrichten und konfigurieren 5
T Von JBoss gelieferte Dependencies nicht deployen Server einrichten und konfigurieren 7
P JBoss 7 Server log4j.jar Server einrichten und konfigurieren 10
J JBoss zeigt im Browser nichts an Server einrichten und konfigurieren 18
M JBoss und Tomcat Server einrichten und konfigurieren 8
P JBoss Server Server einrichten und konfigurieren 2
NoXiD EJB 3.1 für JBoss 7 Server einrichten und konfigurieren 3
D In Jboss 4.2 *-ds.xml Deployment Reihenfolge steuern? Server einrichten und konfigurieren 2
M Exception mit Hippo ECM auf Jboss Server einrichten und konfigurieren 2
M Wenn Classloader isolation dann keine JNDI Verbindung mit Webapp in Jboss Server einrichten und konfigurieren 2
M Jboss Deployment Problem Server einrichten und konfigurieren 2
V Jboss 5 Release Infos auslesen? Server einrichten und konfigurieren 7
G JBoss Portal =? JBoss + JBoss Portal Server einrichten und konfigurieren 2
D jBoss Basis-setup Server einrichten und konfigurieren 8
V Problem bei Portwechsel bei JBOSS unter macosx, oder anderes Problem? Server einrichten und konfigurieren 3
T JBoss 5 DataCache Server einrichten und konfigurieren 3
J Seam 2.2: JBoss 4.2.3 oder 5.1? Server einrichten und konfigurieren 1
D Probleme Installation JBoss Application Server Server einrichten und konfigurieren 5
S JBoss MySQL TimeOut Server einrichten und konfigurieren 3
M Problem beim jboss Start Server einrichten und konfigurieren 2
S JBoss und Eclipse unter Windows 7 Server einrichten und konfigurieren 2
F JBoss-Download ohne run.bat Server einrichten und konfigurieren 2
G JBoss 4.2 und Eclipse Server einrichten und konfigurieren 4
M JBoss 5.1 will nicht starten Server einrichten und konfigurieren 2
G JBoss Port in use- Problem Server einrichten und konfigurieren 4
K JBoss 4.2.1 Directory Browsing Server einrichten und konfigurieren 4
Y Jboss nur im internen Netz auf Port 8080zulassen Server einrichten und konfigurieren 6
fastjack jBoss Natives und Windows Service Server einrichten und konfigurieren 3
R JBoss AS 5.1: --host-Parameter für Windows-Service Server einrichten und konfigurieren 1
S Problem mit JBoss und DataSource Server einrichten und konfigurieren 3
P JBOSS AS5 Port Konfig Server einrichten und konfigurieren 11
GFEMajor Von Tomcat auf JBoss EJB mit Sicherheit Server einrichten und konfigurieren 2
N JMX Console von JBoss und Hochkomata Server einrichten und konfigurieren 3
J SecurityContextInterceptor fehlt bei ejb3 Anwendung unter JBoss 5.0 Server einrichten und konfigurieren 1
S JBoss & Apache 2.2 parallel betreiben Server einrichten und konfigurieren 5
J JBoss 2 Servlet in 1 web-app Server einrichten und konfigurieren 4
S JBoss nicht von außen erreichbar? Server einrichten und konfigurieren 1
P JBoss Cluster mit Apache als Loadbalancer Server einrichten und konfigurieren 1
F Jboss mit Apache2 verbinden Server einrichten und konfigurieren 3
S Eine Frage zu log4j, jboss an sql-server (im teigmantel ;) ) Server einrichten und konfigurieren 3
G Multi-Tier mit JBoss und Tomcat: Trennung der Ebenen Server einrichten und konfigurieren 7
L 1&1 home page web hosting and JSP Server einrichten und konfigurieren 1
E Bekomme java.lang.IllegalStateException und java.lang.ClassNotFoundException beim deployen Server einrichten und konfigurieren 0
T Wildfly: Fehler beim anlegen einer DataSource Server einrichten und konfigurieren 3
C GlassFish fehler beim Deployen und kein Logging. Server einrichten und konfigurieren 2
I Brauche Hilfe beim Aufsetzen eines Servers Server einrichten und konfigurieren 9
R Fehler beim TOMCAT, davor ging es noch! Server einrichten und konfigurieren 1
P Service kennt Datentypen nicht mehr beim Empfangen von Nachrichten Server einrichten und konfigurieren 2
P Tomcat Probleme beim einrichten Server einrichten und konfigurieren 2
A Ausführen von Code beim Serverstart Server einrichten und konfigurieren 6
D [Ant] Probleme beim Filtern Server einrichten und konfigurieren 2
V Eclipse+Tomcat: Problem beim Importieren von Jars Server einrichten und konfigurieren 4
A AXIS Problem mit Packages beim WSDL-Aufruf Server einrichten und konfigurieren 2

Ähnliche Java Themen

Neue Themen


Oben