Palladium

Palladium est un servlet BOSH pour Tomcat, qui permet de se connecter à un compte XMPP via une connexion limitée en HTTP, ce qui est pratique pour du Web. Il est développé en Java, et est relativement stable.

À l'origine, c'est un fork de JHB, développé par Stefan Strigler, dont le but était de le remettre au goût du jour, pour l'utiliser dans le service officiel du projet Jappix.

Notez que vous devrez tout d'abord mettre en place le serveur d'applications Tomcat 5.5 ou supérieur. Il est aussi recommandé de passer par un proxy (Apache, lighttpd, nginx, etc...). Ceci permet la mise en place d'une connexion sécurisée par HTTPS et le passage par des ports standards.

Téléchargement

Vous pouvez récupérer la dernière version de Palladium avec le lien ci-dessous :

  • Palladium v1.4 (Zip)

FAQ

Pourquoi Palladium ne peut pas se connecter à un serveur distant ?
Tomcat, dans certains cas, est en mode de sécurité. Vous devrez donc le désactiver pour permettre toute communication réseau. Ceci se fait via le fichier "/etc/default/tomcat6", dans lequel vous devrez indiquer "no" à "TOMCAT6_SECURITY". Prenez aussi soin de retirer le "#" au début de la ligne.

À quelle adresse Palladium écoute-t-il ?
Une fois lancé, Palladium écoute sur le port de Tomcat, sous une adresse ressemblant à ceci : "http://localhost:8180/BOSH/"

Palladium semble ne pas fermer certaines connexions, pourquoi ?
Si vous utilisez une connexion sécurisée (TLS) avec un certificat invalide, il est possible que la connexion reste "gelée" après une inactivité anormale. Nous n'avons pas pu résoudre ce problème : c'était soit autoriser les certificats invalides, soit faire passer les connexions en clair. Nous avons choisi la sécurité !

Comment compiler le code source de Palladium ?
Palladium nécessite Tomcat5.5 et Apache Ant pour être compilé. Dans le dossier contenant la source de Palladium, exécutez la commande "ant" et la compilation sera lancée.

Changelog

Version 1.0 :

  • Meilleure apparence
  • Nettoyage du code source

Version 1.1 :

  • Corrections sur la résolution des DNS SRV

Version 1.2 :

  • Prise en charge de CORS

Version 1.3 :

  • Prise en charge des certificats TLS invalides

Version 1.4 :

  • Prise en charge du xml:lang dans le flux

Informations

Je tiens à remercier Stefan Strigler pour son travail initial sur JHB, qui nous a apporté une base solide pour Palladium.

Aussi, Link Mauve a apporté la prise en charge de CORS, avec l'ajout d'une réponse aux requêtes OPTIONS.