Question

Hy, je développe une application Grails qui doit communiquer avec une application Java EE existante (construite avec EJB2). À la fois le " héritage " L'application et la nouvelle application Grails offriront des services et les consommeront.

Pour des raisons d'intercompatibilité, je songe à communiquer à l'aide de WebServices. Maintenant, je me demande quels cadres je devrais utiliser des deux côtés.

Puisque l'application Java EE fonctionne maintenant sous JDK5, je pourrais utiliser JAX-WS sur. J'imagine qu'il serait logique d'utiliser Metro ( https://jax-ws-commons.dev.java.net/grails/ ) du côté de Grails. Est-ce que quelqu'un a des expériences avec ça? Ou d'autres suggestions?

Était-ce utile?

La solution

Si les applications Grails et EJB résident sur le même réseau local, l’utilisation de RMI n’est pas un problème. C’est le mode de communication par défaut avec les EJB; il est natif de Java et est pris en charge par Grails.

Si vous devez utiliser les services Web, votre conteneur disposera d'une prise en charge intégrée pour exposer les EJB en tant que services Web (en supposant que J2EE version 1.4 ou ultérieure). Quel conteneur utilisez-vous?

Si vous ne pouvez pas utiliser (ou ne faites pas confiance) aux conteneurs que WS prend en charge, il est préférable de choisir un framework que vous pouvez utiliser dans les deux applications, évitant ainsi les problèmes de compatibilité. Metro a bien fonctionné pour moi, mais je n'ai pas essayé avec Grails.

Il existe également des moyens plus légers d'échanger des messages XML que des services Web complets SOAP'y. Hessian et Burlap sont des exemples, plus Spring a son propre framework de messagerie HTTP.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top