OpenIM is a Java implementation of a Jabber
server. It is a complete rewrite of the Jaba
Server project, and it supports the Jabber server
to server communication protocol. It also supports
Presence, Message, and Roster. Persistent storage
is done in an XML file using XStream lib. It has
been tested successfully with many clients such as
Exodus, Rhymbox, GAIM, Psi, Greenthumb, and the
Kopete.