2011-04-20 1 views
1

J'ai une application web qui est speparée dans un projet GUI (JSF 2.0, Orchestra, Spring) et service (Spring, JPA, Hibernate, ...). En raison de problèmes de réseau entre le serveur Web et le serveur de base de données, je ne peux pas séparer complètement l'application entre les couches et les déployer sur deux tomcats différents, pour la partie de service proche du serveur de base de données. J'ai déjà généré un webservice et un webservice-client avec le plugin Eclipse WTP CXF.Génération du client CXF WebService: utilisation des classes de domaine existantes

Mon problème est: Pour le client, il génère une copie des classes du modèle de domaine, donc je ne peux pas les utiliser directement dans mon projet gui et je devrais introduire une couche de conversion, entre le client de service web et le couche. Ce qui est lourd et sujet à erreur. Y a-t-il une possibilité de générer le client de service Web (à partir du module de service Web existant et du wsdl) en utilisant le modèle de domaine partagé (les classes de modèles sont dans un projet séparé dont dépendent les projets service et gui))?

à la recherche désespérement une solution, la date limite de déploiement est proche ...

Répondre

1

Pour générer une copie des classes de modèle de domaine (DTO) est une bonne pratique lorsque vous avez deux couches physiques: Votre Hibernate POJO besoin être déproxyfié avant d'être envoyé à une autre couche physique. Peut-être que vous pourriez utiliser Dozer pour le faire, pour éviter de passer trop de temps à le faire.

Peut-être que vous devriez utiliser RMI au lieu de services Web si vous avez besoin de performances.

Si vous êtes absolument déterminé à utiliser vos objets de domaine dans la couche de présentation, vous devriez regarder à propos de Gilead (anciennement connu sous le nom de Hibernate4GWT).

pur DTO, DTO avec Dozer et Gilead utilisation sont décrits dans les détails ici: http://code.google.com/intl/fr/webtoolkit/articles/using_gwt_with_hibernate.html

+0

Comment obtenu doit être le réseau pour RMI? – andreas

+0

Vous n'avez pas trouvé ma réponse utile? Si oui, veuillez le vérifier comme une réponse valide. Pour en savoir plus sur l'accès à distance RMI, vous devrez lire la documentation de Spring ici: http://static.springsource.org/spring/docs/3.0.x/reference/remoting.html#remoting-rmi – Tristan

+0

Avait une faute de frappe dans mon dernière réponse: Quel doit être le réseau pour RMI? J'ai environ 10 sauts avec des temps de latence allant jusqu'à plus de 20ms entre (gui) tomcat et db/service tomcat – andreas

Questions connexes