Question

Je développé un site Web en utilisant des rails 2.3.8, et un serveur de messagerie instantanée à l'aide openfire (java). Je veux partager des données entre eux ou râles exactement comme fournisseur, OpenFire en tant que consommateur. Une façon utilise le service Web. Mais il semble que les rails 2.xa dépréciés le support SOAP par défaut, j'ai installé le activewebservice de pierres précieuses, mais il y a un manque de documents pour montrer comment l'utiliser. Je googlé un exemple sur le site d'IBM, mais il semble quelque chose de mal à suivre ce guide dans des rails 2.3.8. Quelqu'un peut-il me donner un exemple? Je sais qu'il ya une autre façon de fournir le service Web utilise par défaut le service web de type RESTful de rails, mais la configuration du côté java pour soutenir cela?

Était-ce utile?

La solution

Rails a un support pour OOTB services Web RESTful, donc si vous avez développé en utilisant votre application Rails générateur d'échafaudage, votre application est déjà fournit un API RESTful. Maintenant que votre serveur de messagerie instantanée est le consommateur, tout ce que vous avez à faire est de faire appel de serveur IM l'API RESTful fournies par les rails application.

L'appel moyen API RESTful envoyant des requêtes HTTP (GET / POST / PUT / DELETE) au serveur REST (Rails App). Donc, tout ce que vous devez faire, est plugin un code java au serveur openfire qui envoie les requêtes HTTP adhérant aux conventions REST et envoyer / recevoir des données dans un format de sérialisation approprié (XML / JSON / etc). Il existe un mécanisme de plug-in dans openfire qui qui peut probablement vous aider à atteindre cet objectif.

En ce qui concerne les appels RESTful sont concernés, cela peut être réalisé dans l'une des méthodes ci-dessous:

  1. Utilisez une bibliothèque client REST fourni par les implémentations JAX-RS comme Jersey , Apache clin d'oeil , etc
  2. Utiliser une bibliothèque client HTTP pour envoyer / recevoir des demandes HTTP / réponse et XML / JSON / etc bibliothèque pour linéariser / désérialiser les données.
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top