Je souhaite héberger des services Web dans une application existante C/C++. Quelle est la meilleure solution?
Je souhaite une solution similaire à celle de JAX-WS pour Java. En particulier autour des demandes SOAP.
Une expérience personnelle avec les solutions disponibles?
D'après ce que je comprends, la solution gratuite la plus populaire est gSOAP http://gsoap2.sourceforge.net/
Vous devriez vérifier Apache Axis à partir d'Apache. Il a une très belle implémentation SOAP et se qualifiera certainement pour l’un des meilleurs.
C'est gratuit et opensource.
Regardez également Axis2/C , il s'agit de la version C de l'architecture Axis2, qui est beaucoup plus flexible que Axis1.
J'ai testé Pion sur http://www.pion.org/ . Dériver de sa classe pion::net::WebService
et créer des réponses HTTP est assez facile.
Je pense que votre meilleure option est d’utiliser le WSO2 Web Services Framework pour C++ parce que:
Voir plus de fonctionnalités ici .
Il y a des résultats de comparaison factuels entre WSF/C++ de WSO et d'autres implémentations de services Web avec des résultats supérieurs en faveur de WSF (performance 2-3 fois supérieure).
L’équipe et la communauté WSO2 sont très actives et les technologies fournies par celles-ci sont fortement intégrées les unes aux autres et avec des tiers via des standards ouverts. Documentation et les exemples sont énormément.
Autant que je sache, il n’existe aucune solution efficace pour les services Web c ++. gSoap fonctionne bien, mais il a été entretenu par une personne, le codeur original pour sa vie (risque élevé). WSF/C++ de WSO était bon mais WSO l'a abandonné sur github sans aucun responsable! Cela fait des années qu'il n'y a pas de mises à jour, et la «version» actuelle ne le fait pas! J'apprécierais.