Änderung an Properties Datei an alle User weitergeben?

schuetzejanett

Erfahrenes Mitglied
Hallo,

ich habe eine Datei in der Programmeinstellungen und auch Listeneinträge(Häufig benutzte Werte, eingestellte Drucker usw) gespeichert sind.
Diese Datei kann in einem Dialg geändert werden.Ändert sich die Datei regiert ein Listener und führt Änderungen durch z.B werden die komboboxen, welche Listeneinträge erhalten angepasst. das funktioniert auch prima.

Nur habe ich das Problem das das Programm ein Multi-User-Programm werden soll. Das heißt wenn ein User die Datei ändert sollen alle anderen die Änderung mitbekommen. Sie greifen alle auf die selbe Proberties Datei zu. Welche Möglichkieten gibt es dafür?

Falls das zur Lösung beiträgt das Programm ist ein Eclipse RCP und die Dateiverwaltung + Änderung + benachrichtigung funktioniert derzeit mit einem PreferenceStore + preferencepages + IPropertyChangeListener.

Würde mich aber auch über ganz allgemeine Hinweise und Tipps freuen. Welche nicht den plugin Mechanismus von Eclipse betreffen.
 
Hallo,

da hab ich jetzt mal 2 fragen.

Läuft das ganze mit einem Application-Server?

Wo liegt die Properties-Datei?

MFG

zEriX
 
Nein das ganze läuft nicht auf einem Applikationsserver. Es gibt eine netzlaufwerk auf das haben alle Nutzer zugriff. Dort liegt der Programmordner und in dem Ordner die Datei. Also es greifen alle auf die gleiche Datei zu.
 
Da einzige was mit in dieser Situation einfallen würde ist, dass das Programm selbst alle paar Sekunden/Minuten überprüft ob sich die Datei geändert hat.

Wenn das ganze mit einem Application-Server laufen würde, hätte ich vorgeschlagen, das ganze mit JMS zu lösen.

Müssen alle die gleiche Properties-Datei verwenden?

Was soll dein Programm überhaupt machen, wenn ich fragen darf?

MFG

zEriX
 
Hmm naja muss ich mir mal durch den Kopf gehen lassen. habe mir überlegt auf die relevanten Felder nen FocusListener zu legen und immer zugucken ob sich was geändert hat. Aber sorichtig zufrieden bin ich auch damit nicht.

Also mein Programm ist ein Druckmanager RCP also ein Eclipse Plugin.
Da in der Firma in der ich bin viele Dokumente automtisch erstellt und diese gedruckt werden, muss das ganze ja irgendwie verwaltet werden. und dafür ist halt dieses Programm da. es ist der Clientanteil einer Client-Server-Lösung. Aber die Einstellungsdatei soll halt beim Client verbleiben.
 
Sollen die Einstellungen für jeden Nutzer gleich sein? Also wenn einer die Einstellungen ändert sollen die sich dann für alle ändern?

MFG

zEriX
 
ja sollen sie sien, wenn es z.B einen neuen Drucker gibt, reicht es ja wenn den einer in die datei aufnimmtt, aber alle ihn verwenden können. Denn es ist je eigentlich die gleiche Datei.
 
Zuletzt bearbeitet:
Und wie sieht es aus, wenn ein Nutzer ein Drucker aus der Liste löschen will. Soll der Drucker dann bei allen gelöscht sein?

Mein Vorschlag wäre, dass jeder Nutzer seine eigene Properties-Datei hat. Die könnte leicht in seinem Home-Verzeichnis abgelegt werden. So kann jeder Nutzer selbst entscheiden, ob er einen Drucker der Liste hinzufügen möchte oder nicht.

MFG

zEriX
 
Also wenn ein Drucker gelöscht wird, soll er auch bei den anderen gelöscht sein. In den Einstellungen soll ja auch nicht jeder Ändern können. Sondern nur Leute mit Bestimmten rechten. Alle anderen können sich die Einstellungen nur anschauen. Und des ist ja auch nicht so das sich da so oft, was ändert. Aber es sollten halt trotzdem alle informiert werden.
Naja dank dir für deine Hilfe werde mir das mit der eigenen proberties Datei mal durch den Kopf gehen lassen.
 
Zurück