Skip to content

Consumo de SOAP y API de terceros, para finalemente exponer los datos resultantes en una API REST de países, personalizada.

Notifications You must be signed in to change notification settings

maxisandoval37/countries-api-rest-consuming-web-services

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

23 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Countries API Rest Consuming Web Services - Educación IT 2023 (Curso dictado por mi autoría)

Consumo de SOAP y API de terceros, para finalemente exponer los datos resultantes en una API REST de países, personalizada.

Tecnologías Utilizadas

  • Java 17
  • Maven
  • Dockerfile
  • Deploy en Render.com
  • Spring Boot Starter Web Services
  • Filtros CORS
  • Spring Boot Starter Tomcat
  • Lombok
  • Spring Boot Starter WebFlux: Llamadas a APIs de forma asíncrona.
  • Spring Boot Starter Test
  • Mockito Core: Utilizado para realizar pruebas con objetos simulados (Mocks).
  • JAX-WS Maven Plugin: Utilizado para generar clases Java a partir de un archivo WSDL.
  • Marshalling

Construcción y Ejecución

Utiliza el siguiente comando Maven:

mvn clean install

Configuración del Plugin JAX-WS

El proyecto utiliza el plugin jaxws-maven-plugin para generar clases Java a partir de un archivo WSDL. Configurar correctamente la ubicación en el POM.

<plugins>
    <plugin>
        <groupId>com.sun.xml.ws</groupId>
        <artifactId>jaxws-maven-plugin</artifactId>
        <version>3.0.0</version>
        <executions>
            <execution>
                <goals>
                    <goal>wsimport</goal>
                </goals>
            </execution>
        </executions>
        <configuration>
            <packageName>localhost.ws</packageName>
            <wsdlUrls>
                <wsdlUrl>https://soap-paises.onrender.com/ws/paises.wsdl</wsdlUrl>
            </wsdlUrls>
            <sourceDestDir>${sourcesDir}</sourceDestDir>
            <destDir>${classesDir}</destDir>
            <extension>true</extension>
        </configuration>
    </plugin>
</plugins>

Endpoint

El endpoint principal de la aplicación se encuentra en:

/contriesapi/obtenerPais?nombre=argentina

Ejemplo de Response

{
  "nombre": "argentina",
  "capital": "Cuidad Autonoma de Buenos Aires",
  "moneda": "ARS",
  "poblacion": 46234830,
  "bandera": "https://flagcdn.com/w2560/ar.png",
  "lenguajes": {
    "spa": "Spanish"
  },
  "mapas": {
    "googleMaps": "https://goo.gl/maps/Z9DXNxhf2o93kvyc6",
    "openStreetMaps": "https://www.openstreetmap.org/relation/286393"
  }
}

Live Demo

onrender.com

Información Adicional

Para cualquier información adicional o consultas: maxisandoval98@gmail.com

Muchas gracias!

About

Consumo de SOAP y API de terceros, para finalemente exponer los datos resultantes en una API REST de países, personalizada.

Topics

Resources

Stars

Watchers

Forks

Packages

No packages published