2008-09-15 7 views
2

J'ai une interface utilisateur en .net qui doit recevoir des données d'un serveur, sur un modèle de requête/réponse/mise à jour. La seule contrainte est d'utiliser Java uniquement sur la boîte du serveur.Quelle est la meilleure façon de faire en sorte qu'un client .net consomme un service à partir d'un serveur Java?

Quelle est la meilleure approche pour y parvenir? Est-ce en créant un Webservice en Java, puis en y accédant dans .net, ou devrais-je créer des proxies Java et les convertir en .net en utilisant IKM? Ou avez-vous une meilleure idée? Il peut être basé sur HTTP, utiliser une connexion socket directe ou n'importe quel middleware.

Répondre

1

Je recommande l'itinéraire du service Web. Il offre une interface standard qui peut être utilisée par d'autres plateformes client à l'avenir.

Les clients .NET interagissent assez bien avec les services Web Java, bien qu'il y ait quelques pièges. Les deux meilleures technologies disponibles pour le client .NET sont Microsoft Web Service Enhancements (WSE) et Windows Communication Foundation (WCF). WSE est une technologie plus ancienne qui n'est plus mise à jour par Microsoft, mais qui fonctionne toujours très bien dans Visual Studio 2005 et les versions antérieures. Je trouve que WSE est un peu plus facile à utiliser en termes d'interface avec les services de base, mais WCF a beaucoup plus de soutien pour les protocoles WS- * (sécurité, confiance, etc.). Si vos besoins sont basiques et que vous utilisez toujours Visual Studio 2005 (.NET Framework 2 ou plus ancien), choisissez WSE. Si vous aimez le tranchant, ou si vous anticipez des besoins de sécurité plus avancés (cela ne vous semble pas vouloir), alors allez-y avec WCF. Notez que WSE ne fonctionnera pas facilement dans Visual Studio 2008 et plus récent, et que WCF ne fonctionnera pas dans Visual Studio 2005 et les versions antérieures.

En accédant à l'itinéraire du service Web, vous créerez une interface qui pourra être réutilisée et qui aboutira à un système plus faiblement couplé lorsque vous aurez terminé la plupart des autres itinéraires. L'inconvénient est principalement la performance: la sérialisation xml sera plus lente que binaire sur le réseau, et les services web ne gèrent pas de grandes quantités de données.

1

Ecrire webservice en Java et l'accès en .net

0

L'utilisation d'un type standard de service Web (par exemple SOAP ou XML-RPC) est le meilleur parce que non seulement il est facile à produire/consommer, il est facile dans d'autres langues aussi bien.

Questions connexes