Comment s'interfacer facilement entre WCF et une application Java?wcf et java interop
Répondre
WCF est un cadre de service Web. Java fournit également ses propres frameworks de services Web. Ils devraient pouvoir interopérer assez facilement, bien que vous deviez poser une question beaucoup plus précise si vous voulez une meilleure réponse.
modifier: Le lien ProjectTango vous demandez dit au sujet de tout dans le premier paragraphe:
... pour assurer l'interopérabilité des fonctionnalités d'entreprise, tels que la sécurité, messagerie fiable et atomiques transactions.
Ce sont des ajouts de fantaisie aux services Web de base et les spécifications ne suffisent pas à assurer la compatibilité .
L'interaction de base du service Web, dont 99,9% d'entre nous ont toujours besoin, fonctionnera parfaitement entre WCF et Java.
Réponse courte, Oui.
Réponse longue, l'interopérabilité dépend de plusieurs facteurs. L'interopérabilité de base est très facile. Ce n'est que lorsque vous insérez des facteurs tels que la sécurité que les choses se compliquent. Nous avons fait des recherches sur les frameworks de services web Java disponibles et avons découvert que le meilleur pour notre scénario est le metro stack avec netbeans 6.5 IDE. Nous avons atteint la sécurité des messages qui est obligatoire pour le projet en utilisant l'authentification par certificat mutuel client/serveur. Voici quelques pièges découverts dans le processus:
- Vous devez ajouter la bibliothèque webservices-rt.jar du répertoire glassfish dans le projet netbeans. (Le fichier JAR n'a pas besoin de glassfish)
- WCF génère des fichiers WSDL multifil et NetBeans ne peut pas les utiliser pour générer un proxy, bien que si netbeans est configuré pour utiliser l'URL (http://../?wsdl), il peut générer le proxy.
- Vous devez placer [IsRequired = true] sur tous les datamembres dans WCF. La gestion par Java des datamembers optionnels est assez compliquée. - Les dictionnaires en tant que databembers s'affichent sous forme de liste
Vous pouvez utiliser les services JAX-WS du côté Java, puis utiliser WCF dans .NET.
Créez d'abord les services JAX-WS (les bibliothèques glassfish vous permettront de le faire). Créez vos POJO, ajoutez les annotations JAX-WS et déployez votre WAR. Ensuite, récupérez le fichier WSDL généré par votre serveur et donnez-le à VisualStudio. VisualStudio peut générer le client pour vous.
C'est la manière simple, mais votre kilométrage variera bien sûr.
Nous l'avons fait avec succès sur plusieurs projets. Nous utilisons WCF basicHttpBinding, c'est l'option la plus simple si vous avez juste besoin de la faire fonctionner. L'une des choses qui peut être un bouchon de spectacle est si un service utilise un type de données spécifique à la plate-forme, comme un vecteur Java ou un ensemble de données .net.
- 1. WCF et Java Interop utilisant WSHttpBinding,
- 2. Interop: HMACSHA1 en Java et dotNet
- 3. Signature Java et .NET interop on (RSA)
- 4. WCF et Java
- 5. Java .Net Interop. Axis java.util.Map
- 6. WCF Interop avec Axis2 en utilisant WS-Trust
- 7. C# et Excel interop
- 8. WCF Interop avec PHP derrière un équilibreur de charge
- 9. Faire enum importé de WCF comme visible dans COM Interop
- 10. Interop entre C++ et C#
- 11. .NET Interop et TR1 shared_ptr
- 12. Besoin d'aide/conseil sur WCF Service par appel et NServiceBus interop
- 13. service Web WCF Java
- 14. Clojure Jython interop
- 15. Ensembles SSIS 2008 et Excel Interop
- 16. Interop avec Office 2003 et 2007
- 17. Excel Interop: différences Application et ApplicationClass
- 18. Consommation Java WebService TimeStamp à partir de .net et WCF
- 19. Java et autres clients pour les services RESTful WCF
- 20. Java <-> Scala interop: liste transparente et conversion de carte
- 21. COM Interop .NET STA
- 22. asp.net interop mémoire limitation
- 23. C# Word Interop
- 24. Outlook Interop, Mail Format
- 25. Propre nettoyage Interop
- 26. C# Winforms-WPF interop
- 27. Winforms WPF interop performance
- 28. C# interop à XPCOM
- 29. WCF Data Service et ChangeInterceptor
- 30. C# Interop avec Ghostscript
J'ai googlé et j'ai découvert le "Projet Tango" pour cette affaire maintenant. Pourquoi développer un nouveau projet, comme vous l'avez dit facilement? – tobias
lien: http://java.sun.com/developer/technicalArticles/glassfish/ProjectTango/ – tobias