Altova MapForce 2024 Enterprise Edition

Este apartado explica cómo generar un servicio web SOAP con MapForce. Generar un servicio web SOAP implica los pasos 2 a 5 descritos en la Configuración del servicio web SOAP e incluye los siguientes procedimientos:

 

1.Generar código (en este caso, Java) a partir de un proyecto de muestra de MapForce

2.Compilar el código

3.Implementar el servicio en un servidor

4.Llamar al servicio web

 

Para más información sobre cada procedimiento, véase las subsecciones a continuación. El proyecto de servicio web que utilizaremos como ejemplo en este apartado se llama getAuthor.mfp. Hemos creado el proyecto en el apartado Crear proyecto de servicio web SOAP. Este proyecto y todos sus archivos asociados se encuentran en la carpeta Tutoriales.

 

Para simplificar, en el ejemplo se emplea una configuración de servidor web básica que no debe entenderse como preceptiva. En un entorno de producción es muy probable que el servidor web, las directivas de seguridad de la organización y otros factores exijan un enfoque distinto.

 

Para llamar al servicio web SOAP en este ejemplo se utiliza Altova XMLSpy Enterprise Edition. Si no tiene XMLSpy, necesitará un cliente SOAP para probar el servicio web o, si lo prefiere, deberá escribir código de programa que pueda llamar al servicio web. También puede probar el servicio web creando una llamada a servicios web en MapForce.

 

Descargar y desempaquetar Tomcat, Axis2 y Ant

Para poder seguir los pasos descritos a continuación, debe tener instalado las siguientes tecnologías:

 

Java SE JDK 8, 11, 17, 21 (incluido OpenJDK)

Apache Tomcat (un servidor web que aloja el servicio)

Apache Axis2 (un marco de trabajo y motor de servicios web que facilita la creación, la implementación y el uso de servicios web; se ejecuta dentro de Tomcat)

Apache Ant (una herramienta de línea de comandos que se usará para compilar el código)

 

Descargue Tomcat, Axis2 y Ant, y extraiga sus respectivos paquetes en un directorio local.

 

Configure Tomcat, Axis2 y Ant

Una vez que haya desempaquetado y extraído Tomcat, Axis 2 y Ant, deberá configurar las siguientes variables de entorno:

 

La variable de entorno ANT_HOME debe apuntar a la ubicación en la que está instalado Tomcat.

La variable de entorno ANT_HOME debe apuntar al directorio en el que está instalado Ant.

La variable de entorno AXIS2_HOME debe apuntar al directorio en el que está instalado Axis2.

La variable de entorno JAVA_HOME debe apuntar al directorio en el que esté instalado Java JDK.

La variable de entorno PATH debe incluir la ruta de acceso a %ANT_HOME%\bin.

 

En este ejemplo, el servicio web se cargará en Tomcat desde la página de administración de Axis2. Para integrar Axis2 con Tomcat, siga estos pasos:

 

1.Copie el archivo axis2.war del paquete Axis2 en el directorio %CATALINA_HOME%\webapps de Tomcat.

2.Ejecute Tomcat.

3.Compruebe que Axis2 se está ejecutando abriendo esta página web: http://localhost:8080/axis2.

 

Para comprobar si Ant se está ejecutando, teclee ant en la línea de comandos. El mensaje Buildfile: build.xml does not exist significa que Ant está configurado y necesita un archivo de compilación. Para más información sobre la configuración de Ant, véase el manual del usuario de Ant.

 

Paso 1: Generar código Java

El primer paso consiste en generar el código Java para el proyecto de servicio web. Para ello siga estos pasos:

 

1.Abra el proyecto getAuthor.mfp.

2.Haga clic con el botón derecho en la ventana Proyecto y seleccione Generar código en | Java. Por defecto, MapForce guarda el código generado en una nueva carpeta llamada output (salida) que está en la misma carpeta que el proyecto. Si quiere cambiar la configuración de salida, haga clic con el botón derecho en el proyecto en la ventana Proyecto y seleccione Propiedades en la ventana contextual.

 

Para más información sobre cómo genera código Java, consulte el apartado Generar código Java. Para obtener información mas detallada sobre cómo configurar el proyecto, consulte la sección Configuración del proyecto.

 

Paso 2: Compilar el código

Como resultado de la generación de código, se han creado varios archivos nuevos, entre los cuales se encuentra el archivo build.xml. Este archivo se utiliza como un script de configuración que define cómo se debe construir el código fuente, lo que incluye estos componentes: compilación, pruebas, empaquetado, implementación y otras tareas.

 

Para compilar el código Java que acaba de crear en el paso anterior, ejecute Ant en la línea de comando en el mismo directorio que el archivo build.xml (imagen siguiente). Para este tutorial no tocaremos la configuración predeterminada. Si de todas formas quiere cambiar el directorio de salida, consulte el apartado Configuración del proyecto.

mff_soap_java_ex02

En cuanto se haya compilado el código Java, se creará en el directorio de salida un archivo Axis Archive (.aar) con el nombre predeterminado Mapping.aar. Un archivo .aar sirve para empaquetar todos los componentes necesarios de un servicio web en un único archivo, lo que facilita su implementación en Apache Axis2.

 

Recomendamos dar un nombre significativo al archivo para distinguirlo de otros archivos que puede haber cargado o piensa cargar en el servidor. En nuestro ejemplo, el nombre del archivo es getAuthor.aar.

 

Paso 3: Implementar el servicio web en Tomcat

En este paso, nuestra tarea es implementar el archivo getAuthor.aar en Tomcat a través de la página de administración de Axis2. Para ello siga estos pasos:

 

1.Ejecute Tomcat.

2.Abra la página de administración (http://localhost:8080/axis2/axis-admin/upload) y cargue el archivo getAuthor.aar generado en el paso anterior.

 

Ahora un nuevo servicio web llamado getAuthorService está disponible y activo en la página de administración Axis2 (imagen siguiente).

mff_soap_java_ex04

 

Paso 4: Llamar al servicio web

El último paso consiste en llamar al servicio web. Para llamar al servicio web que acabamos de implementar, utilizaremos la edición Enterprise de Altova XMLSpy.

 

Usar el archivo de solicitud creado anteriormente

Si anteriormente ya ha creado un archivo de solicitud de muestra (en nuestro ejemplo es getAuthorRequest.xml descrito en Crear proyecto de servicio web), siga estos pasos:

 

1.Abra getAuthorRequest.xml en XMLSpy. El elemento de consulta Query tiene como valor Iceland. Es decir que el servidor debería devolver todos los autores islandeses y sus registros Book. Si quiere, también puede experimentar con el archivo de solicitud y establecer un valor diferente en el elemento Query (p. ej., Francia).

2.En el menú SOAP haga clic en Enviar solicitud al servidor.

3.En el cuadro de diálogo Configuración de la solicitud SOAP deje las opciones de configuración predeterminada como están y simplemente haga clic en Aceptar. XMLSpy iniciará la llamada y además se abrirá un mensaje de respuesta en un nuevo archivo XML que contiene todos los registros Author relevantes. Para más información sobre el mensaje de respuesta, consulte el apartado Crear proyectos de servicio web.

 

Crear un archivo de solicitud nuevo

Si quiere crear un archivo de solicitud nuevo en XMLSpy, siga las instrucciones a continuación:

 

1.Ejecute XMLSpy.

2.En el menú SOAP, haga clic en Crear solicitud SOAP nueva. Cuando el programa se lo pida, introduzca la ubicación del archivo WSDL (imagen siguiente).

mff_soap_java_ex05

3.Haga clic en Aceptar. Cuando XMLSpy le pida que seleccione una operación SOAP, elija getAuthor y confirme la selección.

4.En el elemento Query, indique el país que quiera (p. ej., Reino Unido).

5.Siga las instrucciones del segundo y tercer paso descritas anteriormente en la sección Usar el archivo de solicitud creado anteriormente.

 

© 2018-2024 Altova GmbH