Fuer den OpenFire XMPP/Jabber Server gibt es ein ganz praktisches Plugin, dass es einem erlaubt per HTTP Schnittstelle User zu administrieren (anlegen/loeschen/editieren), ohne dass man sich in das Admin UI einloggen muss.

Vor allem zur Integration mit anderen Systemen eignet sich das, wenn man nicht ueber LDAP oder Datenbankintegration arbeiten kann, sondern die User Daten replizieren muss.

Das Plugin laesst sich ueber den OpenFire Plugin Manager sehr einfach installieren, jedoch resultiert dies dann bei Verwendung in unangenehmen Meldungen.

HTTP ERROR: 500

gnu/inet/encoding/Stringprep

RequestURI=/plugins/userService/userservice
Caused by:

java.lang.NoClassDefFoundError: gnu/inet/encoding/Stringprep
     at org.jivesoftware.openfire.plugin.userService.UserServiceServlet.doGet(UserServiceServlet.java:130)
     at javax.servlet.http.HttpServlet.service(HttpServlet.java:707)

Es gibt dazu in der ignite realtime Community gibt es dazu auch einen Thread: http://community.igniterealtime.org/thread/44326

Die dort vorgeschlagene Lösung ist das User Service Plugin neu zu bauen, nachdem man die Sourcen vom Openfire User Service Plugin lokal ausgecheckt hat.

Praktischer kann dabei die Lösung sein, die notwendige Dependency dem Openfire direkt mitzugeben:

Dazu lädt man libidn, z.B. von hier http://ftp.gnu.org/gnu/libidn/libidn-1.26.tar.gz, packt das Archiv aus und kopiert die Date libidn-1.26.jar in das lib Verzeichnis von Openfire. Danach einfach den Openfire Jabber Server neu starten.