2011-02-01 29 views
5

Tengo un servicio web simple que se ejecuta en un servidor JBoss. Ahora necesito acceder desde C++, Microsoft VC++ 2010, para ser precisos. Siendo nuevo en los servicios web en general, busqué en Google mi problema, pero descubrí que la mayoría de la gente aconsejaba "Agregar referencia web", algo que parece haberse perdido desde VS2008. Así que me preguntaba si alguien podría darme algunos consejos sobre cuál sería la forma más fácil de llamar a un servicio web de C++.Llamar a un servicio web desde C++

Gracias de antemano por su tiempo.

+0

Agregar referencia web es el método utilizado cuando escribe la aplicación C#. Pero de lo que estás hablando es C++. ¿Qué protocolo sigue su servidor JBoss? Y todavía existe el método "Agregar referencia web" en VS2008/VS2010. – programmer

+0

¿Qué tipo de "servicio web"? ¿JABÓN? Estilo REST? –

+0

No en un proyecto de aplicación de consola C++ normal, no lo hace. –

Respuesta

1

También recomiendo gSOAP. Puede ser un puñado, pero funciona. Apúntalo a un WSDL y generará proxies que puedes usar en tu código de cliente.

Es gratis si también está produciendo trabajo de código abierto.

+0

¿Y suponiendo que no estaría trabajando en un proyecto de código abierto ...? –

+0

Bueno, entonces, si es comercial, probablemente deba pagarlo. Ver aquí: http://www.cs.fsu.edu/~engelen/soaplicense.html opción de Bojan es utilizable también. – Dennis

1

Eche un vistazo a mi answer a una pregunta similar relacionada con el consumo de servicios web desde C++.

1

Utilicé la herramienta sproxy para generar un archivo de encabezado C++/ATL para mi servicio web. La herramienta sproxy viene con el código fuente del servidor ATL (CodePlex). Aunque el proyecto ha estado muerto durante algunos años, tuve que hacer el trabajo de convertir manualmente el proyecto a VS2010 (no se convertiría automáticamente con el asistente de conversión), pero ahora funciona y pude llamar a mi servicio web desde una aplicación de consola con solo unas pocas líneas de código.

Cuestiones relacionadas