2009-06-25 6 views
4

Um den Kundenanforderungen gerecht zu werden, müssen die Benutzer Informationen untereinander austauschen. Das 'Nachrichtensystem' hat keine anspruchsvollen Back-End-Anforderungen und könnte leicht mit ein paar Tabellen zum Speichern von Nachrichten und Nachrichtentypen implementiert werden.Einbettbare Messaging-Komponente für Java-Webanwendung

Das Problem ist, dass ich glaube, dass die Anforderungen an das Front-End sehr hoch sind und Benutzerfreundlichkeit ist sehr wichtig. Außerdem erwarte ich, dass dieser Teil der Kommunikation auf lange Sicht ein wichtiger Teil des Systems wird.

Gibt es etwas, das direkt in eine Java-Webanwendung integriert und an das Design der Anwendung angepasst werden kann? Was wir brauchen, ist die folgende Schnittstelle

Von Service-Layer:

  • send Nachricht an Benutzer (Header, Betreff)
  • Antwort auf eine Nachricht
  • Benachrichtigung über neue Nachrichten in Benutzer-Posteingang (wenn möglich : auf der aktuellen Seite)
  • Schnittstelle zu bestehenden Benutzerverwaltung

Vorzugsweise sollte die Komponente ALR eady hat ein Front-End mit folgenden Funktionen:

  • Nachrichtenverwaltung (Wahlen, entfernen, antworten, löschen/Wiederherstellung, ...)
  • Ordner: Posteingang, gesendet, trash
  • Tagging: Meldung Kategorien
  • zeigen letzte x Nachrichten in einem Panel/div
  • Styling wie die Anwendung aussehen

Wenn etwas ziemlich stabil ist, würde ich lieber eine Komponente verwenden, bevor ich etwas in die Anwendung implementiere. Die Anwendung läuft auf Wicket, aber wir sind nicht an dieses Framework für die Messaging-Komponente gebunden.

Danke, Kariem


In Portal Server, Sie haben die Flexibilität, Portlets hinzuzufügen, die etwas Ähnliches wie die Komponente tun könnte, die ich suche; z.B. Liferay bietet mail und message boards Portlets.

Wie akf weist in einem Kommentar aus Jabber für Messaging eine solide Basis zur Verfügung stellt. Wir suchen nach etwas, das in eine Webanwendung integriert werden kann. Wenn wir um Jabber eine Menge von UI erstellen müssen, können wir es nicht wirklich für unsere Anforderungen halten.

+0

es könnte gut sein, in Jabber (http://en.wikipedia.org/wiki/Jabber) zu schauen, bevor Sie anfangen – akf

+0

Vielen Dank für die Eingabe. Etwas, das auf dem Jabber-Protokoll basiert, wäre großartig, aber nicht notwendig. Das aktuelle System verwendet einige anwendungsinterne Tabellen zum Speichern der Nachrichten und Referenzen. Sie sehen, wir sind ziemlich tolerant gegenüber dem Systemdesign. – Kariem

+0

Kariem, ich sehe sehr ähnliche Anforderungen. Können Sie näher erläutern, wie Sie Ihre Lösung letztendlich implementiert haben? Irgendwelche Tipps? – Kapsh

Antwort

1

Ok, kann es ein wenig überraschend, aber was sein über die Google Wave einen Versuch ? Wenn ich Ihren Kriterien bewertet:

Gibt es etwas, das direkt integriert in eine Java-Webanwendung und angepasst an die Anwendung Design [...]

Es wie möglich sein kann Sie werden auf diesen Mini-Tutorial entdecken: http://blog.zenika.com/index.php?post/2010/01/27/Google-Wave-Embedded-API-the-missing-tutorial (wie interessant, nicht wahr?)

Von Service-Layer:

  • send Nachricht an Benutzer (Header, Betreff)
  • Antwort auf eine Nachricht
  • Benachrichtigung über neue Nachrichten in Benutzer-Posteingang (wenn möglich: auf der aktuellen Seite)
  • Schnittstelle zu bestehenden Benutzerverwaltung

Alles außer dem letzten Punkt wird von der Google Wave-Instanz angeboten. Der letzte Punkt ist vielleicht ein bisschen schwieriger zu lösen, da Sie verlangen, dass alle Ihre Benutzer ein GoogleWave-Konto haben. Verwalten Sie diese Konten may become available through Google Apps, aber ATM ist nicht machbar. Wenn es absolut obligatorisch ist, könntest du deine eigene Instanz haben, da es eine open protocol ist, aber dein Ziel war es, etwas für dich getan zu haben, oder?

Vorzugsweise ist die Komponente sollte bereits über ein Front-End mit der folgenden Funktionalität:

  • Nachrichtenverwaltung (Wahlen, entfernen, antworten, löschen/wiederherstellen, ...)
  • Ordner: Posteingang, gesendet, trash
  • Tagging: Nachrichtenkategorien
  • zeigen letzte x-Nachrichten in einem Panel/div
  • Styling wie die Anwendung aussehen

Große, alle davon ist ok mit der Wave.

Wenn es etwas ziemlich stabil ist, würde ich es vorziehen, eine Komponente vor so etwas wie dies in die Anwendung zu implementieren. Die Anwendung läuft auf Wicket, aber wir sind nicht an dieses Framework für die Messaging-Komponente gebunden.

Ok Wicket ist so trendy, sollten Sie diese Lösung :-) lieben Ich bestätige, dass ist ein bisschen ‚avant-gardiste‘, ich habe noch nie so etwas selbst gemacht, aber dachte, es Ihre Vision als Bezug zu erweitern haben könnte Ihr Problem ...

+0

Ich hätte besser gucken sollen @ Gladwin Burboz, die das gleiche vorschlugen. Behalte meine Antwort für den richtigen Link. – Hubert

+0

Gute Hinweise, Hubert. Ich warte darauf, dass die Welle zu etwas wird, das leicht einzubetten ist. Das einzige Problem, das ich habe, ist, dass es derzeit nicht wirklich möglich ist, wave so zu integrieren, dass es sich in die Anwendung integriert fühlt. – Kariem

+0

Da dies die einzige Antwort ist, die versucht zu erklären, wie die Lösung integriert werden kann (dies ist eine Art KO-Kriterium), werde ich dies als die akzeptierte Lösung bezeichnen. Danke, Hubert – Kariem

0

Ich denke, ein Web-based IM-Client wie SparkWeb kann in Ihrem Szenario nützlich sein.

1

Wenn Sie sich für Open-Source-Java-E-Mail-Clients suchen:

http://java-source.net/open-source/mail-clients

Sie können auch einen Blick auf Google Wave haben wollen. Damit haben Sie das Kommunikations- und Kollaborationswerkzeug der nächsten Generation. Bitte beachten Sie einige tolle Videos über Google Wave auf www.youtube.com

http://code.google.com/apis/wave/

http://code.google.com/p/wave-protocol/wiki/Installation

.

Aktualisiert Lösung ... Web-basierte E-Mail-Clients

http://java-source.net/open-source/web-mail

http://code.google.com/p/cubusmail/

http://www.zimbra.com/downloads/os-downloads.html

+0

Können Sie Hinweise dazu geben, wie diese in eine Webanwendung integriert werden können? – Kariem

+0

http://code.google.com/p/cubusmail/wiki/Installation2 –

+0

cubusmail ist eine Webanwendung, die Sie Ihren Bedürfnissen anpassen können. –

0

Es wird empfohlen, das XMPP-Protokoll für Messaging zu verwenden, da Sie Ihren Server problemlos mit anderen Chat-Servern wie GTalk und Jabber verbinden können.

Wenn Sie beabsichtigen, den Nachrichtenserver in Ihre Anwendung einzubetten, ist Tigase ein schneller und zuverlässiger Java XMPP-Server, der leicht integriert werden kann, da er leicht ist und keine Abhängigkeiten von Drittanbietern aufweist. Es skaliert auch zu Hunderttausenden von Benutzern fast nahtlos.

Für den Client können Sie viele verfügbare webbasierte XMPP-Clients wie emite verwenden, ein GWT-basierter Webclient, der sowohl schön als auch AJAX ist.

Verwandte Themen