Glassfish: Properties zur Laufzeit... wohin?

Status
Nicht offen für weitere Antworten.

musiKk

Top Contributor
Hallo,

ich habe hier einen Glassfish v2 und gerade noch so ein kleines Verständnisproblem. Und zwar weiß ich nicht, wo ich Einstellungen einer Application hinlegen kann, die ich auch zur Laufzeit ändern kann, also ohne die Application neu zu "deployen". Ein Beispiel ist z. B.: Empfänger für Emails. Über die Mail-API versende ich Emails an verschiedene Leute und möchte in der Lage sein, die Empfänger der Mails dynamisch auszulesen. Auch der Inhalt der Mails soll eigentlich nicht fest sein. Den Absender legt man ja über die "JavaMail Sessions" im Web-Interface an.

Außerdem käme das ganz gelegen zur Trennung von Entwicklungs- und Produktivsystemen. Teilweise gibt es da Unterschiede.

Bei Google habe ich nichts Gescheites gefunden. Für Hinweise wäre ich dankbar.
mK
 
M

maki

Gast
[c]web.xml[/c] wäre eine Möglichkeit, dann muss die App zwar nicht re-deployed aber dafür neu gestartet werden.
DB wäre eine andere Möglichkeit.
 

musiKk

Top Contributor
Über die [c]web.xml[/c] regle ich das im Moment teilweise schon. Der Nachteil (?) wäre wohl dabei, dass das Deployen anders (komplizierter) ablaufen müsste. Im Moment erzeuge ich einfach nur ein EAR mit der kompletten Application und die [c]web.xml[/c] ist dort in einem WAR. Ich nehme an, beim Deploy wird die angepasste [c]web.xml[/c] auf dem Server wieder überschrieben.

An die Datenbank dachte ich auch schon, aber für banale Dinge wie Konfigurationen, erscheint mir das irgendwie "ungewöhnlich". Da stehen z. B. auch Pfade drin, weil es Servlets für Uploads gibt etc.
 
M

maki

Gast
Die meisten Server haben doch eine Konfig. Konsole für die web.xml, wieso solltest du da neu deployen müssen?
Oder sprichst du davon wenn man etwas neu-deployed werden soll?

An die Datenbank dachte ich auch schon, aber für banale Dinge wie Konfigurationen, erscheint mir das irgendwie "ungewöhnlich". Da stehen z. B. auch Pfade drin, weil es Servlets für Uploads gibt etc.
Ist gar nicht so ungewöhnlich ;)
Eine Properties Datei ist auch nur eine DB, wenn auch eine sehr sehr primitive...
Klar ist der Aufwand größer, dafür gibt es eben mehr flexibilität, wichtig ist eben was man braucht ;)
 

musiKk

Top Contributor
Oder sprichst du davon wenn man etwas neu-deployed werden soll?

Ja, genau. Wenn Änderungen in der lokalen Entwicklungsumgebung vorgenommen und getestet wurden und ins Produktivsystem sollen. Da das alles erstmal nur intern ist, kann das noch etwas häufiger vorkommen.

Ist gar nicht so ungewöhnlich ;)
Eine Properties Datei ist auch nur eine DB, wenn auch eine sehr sehr primitive...
Klar ist der Aufwand größer, dafür gibt es eben mehr flexibilität, wichtig ist eben was man braucht ;)

Ok. Wenn "man das so macht". Damit wäre immerhin auch die Zukunft bzgl. möglichem Clustering gesichert.
Ich lass es erstmal noch als unbeantwortet stehen, falls noch jemand was zu erzählen hat. ;)
 

FArt

Top Contributor
Die Konfiguration über Properties ist (wenn der AS keine Möglichkeiten wie Resource-Adapter oder PropertiesService bietet) nicht unbedingt sinnvoll. Auch das Handling (umkonfigurieren zur Laufzeit) ist u.U. nicht trivial (ok, in deinem Fall vermutlich schon).
Einfache Lösung: benutze ein EJB als Provider für deine Adressen. Dieses kannst du über die Deploymentdeskriptoren konfigurieren und einfach redeployen => keine Propertiesdatei nötig. Ok, das EJB kann auch eine Propertiesdatei über den Classloader lesen und dann die Adressen bereitstellen ;-)
 

musiKk

Top Contributor
Ok, danke für den Input. :) Ich habe erstmal den Vorschlag von maki umgesetzt und verwende eine lokale Derby-DB. Damit ist alles sehr gut konfigurierbar und ausgewählte Einstellungen können einfach und dauerhaft auch über die Anwendung selbst gesteuert werden, z. B. können in diesem konkreten Fall autorisierte Personen sich selbst zu diversen Mailverteilern hinzufügen.
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
thor_norsk Glassfish Server unter Windows startet nicht! Allgemeines EE 20
M Glassfish Deployment-Problem unter Eclipse Allgemeines EE 0
FINF_AW_Alex remote Glassfish Library unverträglichkeit Allgemeines EE 0
J JSF Glassfish jdbcRelam und Oracle-Datenbank - WEB9102: Web Login Failed Allgemeines EE 0
Yamanuchi Glassfish 4 : Client Anzahl restriktieren Allgemeines EE 2
N Glassfish 4 JDBC-Realm Authentifizierung Beispiel gesucht Allgemeines EE 7
C Komplettes Durcheinander / Locales OSX/Linux Glassfish Allgemeines EE 3
A Probleme bei der Einbindung eines Liferay Portalserver (Glassfish) Allgemeines EE 7
D [Glassfish EJB] OneToMany geht nicht Allgemeines EE 7
C Glassfish Custom Realm (oder wie auch immer man das löst) Allgemeines EE 5
H Bean läuft unter GlassFish, aber JBoss nicht Allgemeines EE 5
ruutaiokwu glassfish library konflikte vermeiden? Allgemeines EE 3
H Glassfish - Open Source Lizenz für den kommerziellen produktiven Einsatz? Allgemeines EE 2
S Glassfish: Deployment von Realms Allgemeines EE 2
L Eclipse (Helios); Glassfish 3; EJB und VirtualBox Allgemeines EE 1
F Java EE Server nutzung kostenlos an Schule? (zB. mit Glassfish) Allgemeines EE 6
T Auf GlassFish JDBC-Ressourcen zugreifen Allgemeines EE 4
T MS SQL Server, GlassFish, JDBC Allgemeines EE 2
M Fehler bei Javamail Session mit Glassfish 3 Allgemeines EE 3
M Problem mit Lookup auf EJB3 mit Glassfish Allgemeines EE 11
D Debug Modus im Glassfish 2.1 plötzlich nicht mehr möglich Allgemeines EE 2
D Glassfish 3 ohne Cluster Support? Allgemeines EE 1
Semox Ist Glassfish auch ein Webserver? Allgemeines EE 26
K Glassfish Application Client Allgemeines EE 4
B Glassfish, Sjsas und wie sich das Teil noch nennt . . Allgemeines EE 8
B GlassFish & JAAS - Konfiguration für AppClient Allgemeines EE 1
W properties File in WEB-INF Allgemeines EE 5
S messages.properties Allgemeines EE 3
A Unsauberer Code.. (Properties-Objekt in JSP anzeigen) Allgemeines EE 5
E Properties-File in Jboss-Conf Verzeichnis ansprechen Allgemeines EE 2
B fmt:setBundle => Wo liegt die Properties-Datei im Tomcat? Allgemeines EE 3
S Alternative zu Properties/ Zugriff außerhalb der Locale Allgemeines EE 7
R SUCHE: log4j.properties - Hilfsprogramm zum Erstellen Allgemeines EE 2
K dynamischer Zugriff auf .properties (Struts) Allgemeines EE 2
G properties file im J2EE Server - wo wird genau gesucht? Allgemeines EE 6
V messages_de_DE.properties Allgemeines EE 2
R struts und Mapped Properties Allgemeines EE 2
A JMS: Mehrere Durable Subscriber dynamisch zur Laufzeit erzeugen - setClientID() Allgemeines EE 2
C GWT: Zur Laufzeit Bilder hinzufügen Allgemeines EE 4
A Timeout nach 30 Minuten Laufzeit einer entfernten Methode Allgemeines EE 3
A META-INF zur Laufzeit ändern Allgemeines EE 4

Ähnliche Java Themen

Neue Themen


Oben