Client Server Szenario sucht richtige Architektur

halech

Grünschnabel
Hi Leute!

Eure Beiträge haben mir schon oft bei so machen Java Problemen/Eigenheiten geholfen. Danke dafür!

Nun stehe ich aber vor einer etwas grösseren Aufgabe und bevor ich mich jetzt verrenne, wuerde ich gerne eure Meinung dazu hoeren.

Also was ich habe ist einen Java Client, der ueber ein Interface Daten aus einer Datei liest, um diese anzeigen zu koennen. Unter anderem werden da auch Iteratoren (vielleicht wichtig fuer die Implementierung des Servers) gebraucht.

Nun habe ich eine Datenbank erstellt (Postgres) wo Daten von vielen Dateien gespeichert werden können. Der User kann (immernoch ueber vorher erwaehnte Interface) jetzt Datensaetze aus der Datenbank öffnen und damit arbeiten. Diese Datenbank ist noch lokal und hilft eigentlich niemandem ausser dem einen User selbst.

Nun meine Frage(n):

1. Diese Datenbank soll online gestellt werden, so dass viele User gleichzeitig auf die Datensaetze zugreifen koennen.
2. Mir ist klar, dass es unschoen ist, wenn eine Java Client ueber das Netz direkt auf einen DB Server (per SQL) zugreifen muss. Ausserdem wuerde ich gerne noch weitere (Server)Funktionalitaet einbauen, die sich in reinem SQL oder plpgsql eher schlecht machen lassen.
3. Ich suche also eine Architektur, mit der ich von einem Client auf einen Server zugreifen kann, der wiederum mit der DB zusammen arbeitet. Ich dachte da an z.B. Web services.
4. Langfristig sollte diese Implementierung nicht stateless sein. Also es soll auf dem Server noch permanent von mir geschriebene Logik laufen, mit der der z.B. Webservice kommuniziert.
5. Langfristig soll diese Logik auch dazu dienen aus ihren Daten HTML Seiten zu generieren, so dass ich neben der Java Client Application noch eine Webpage habe, auf der sich die User durch die Datensaetze wuehlen koennen.

Klar kann ich auch einen Server mit Socket usw. selber programmieren aber dafuer gibt es doch sicher schon gute Implementierungen. Ich habe jetzt ein bisschen mit Tomcat und Axis2 rumgespielt aber ich bin mir nicht sicher, ob das der richtige Weg ist.

Habt Ihr gute Ideen? Nur zur Erinnerung, ich bin ziemlich blank auf dem EE Feld. Bis jetzt habe ich nur Standalone Applications geschrieben.

Gruesse und Danke,
Halech
 
Zurück