10.- Proyectos de ejemplo integración con CCSV

10.- Proyectos de ejemplo integración con CCSV

Para facilitar la integración con los servicios de CCSV, se han elaborado proyectos de ejemplo que contienen métodos que permiten la creación y recuperación de documentos.

Este proyecto está disponible en dos versiones:

  • Una que utiliza Spring para gestionar las dependencias.

  • Una que utiliza las librerías mínimas necesarias.

Ambos proyectos hacen uso del cliente oficial de CCSV y utilizan Maven.

CCSV_SPRING_INTEGRATION

Este es el proyecto que incluye todas las dependencias con Spring.

La estructura del proyecto es la siguiente:

  • Clase Tests:

    • Contiene tests JUnit con llamadas completas a los métodos de obtención y creación de documentos: testGetDocument() y testCreateDocumentWithSign()

  • Clase Utils:

    • Contiene toda la lógica de uso del cliente CCSV y la construcción de los parámetros y objetos necesarios para realizar las invocaciones a los métodos.

  • Carpeta src/main/resources/documents:

    • Contiene el fichero de ejemplo (fichero.pdf) y su firma (firmaCadesA), que se utilizan en el método de creación. La ruta a estos ficheros está en la clase de los tests, y se puede modificar para crear ficheros diferentes.

  • Fichero src/main/resources/spring/application-context.xml:

    • Al ser un proyecto Spring, las URLs de los servicios se inyectan mediante inversión de dependencias. Este fichero contiene la información de dichos servicios. Modificando el campo ‘address’ se puede apuntar a los distintos entornos

Servicio expedientes PRE:

https://preaplicaciones.aragon.es/ccsv_core/services/AdministrativeFileWS

Servicio documentos PRE:

https://preaplicaciones.aragon.es/ccsv_core/services/DocumentMetadataSignatureWS

Servicio expedientes PRO:

https:/aplicaciones.aragon.es/ccsv_core/services/AdministrativeFileWS

Servicio documentos PRO:

https://aplicaciones.aragon.es/ccsv_core/services/DocumentMetadataSignatureWS

CCSV_SIMPLE_INTEGRATION

Este es el proyecto que incluye las librerías mínimas y no hace uso de Spring.

La estructura es la siguiente:

  • Clase integrationCCSV:

    • Contiene una función main en la que se indica el proceso al que se quiere invocar (getDocument(csv) o testCreateDocuments()).

    • El método getDocument devuelve el documento cuyo código csv se le pase como parámetro.

    • El método testCreateDocuments recoge los documentos de la carpeta src/main/resources/documents, crea los objetos necesarios y llama al método de creación de documentos del cliente. Se puede configurar el tipo del documento (variable tipoCopia), la ruta al documento (pathDocumento) y el numero de documentos que se crearán (numeroDocumentos).

  • Carpeta src/main/resources/documents:

    • Contiene el fichero de ejemplo que se incluirá como contenido en las llamadas a createDocument

El entorno en el que se lanzarán los métodos se configura en la instrucción ‘setCCSV(…)’ de la clase integrationCCSV, a la que se le pasará como parámetros las URL de los servicios de documentos y expedientes, respectivamente (están declarados previamente en el código).

Ejecución de los proyectos:

Una vez descomprimidos los proyectos, será necesario ejecutar “mvn clean install” en la raíz del proyecto para que este descargue y sincronice las librerías correspondientes.

En el caso del proyecto con Spring, se pueden modificar y ejecutar con JUnit las clases de test que realizan las llamadas a los métodos. Desde Eclipse/IntelliJ:

  • Run As… → JUnit Test

En el proyecto sin Spring, se podrá modificar el método main de la clase IntegrationCCSV, y desde el IDE ejecutar:

  • Run As… → Java Application

O bien, desde CMD, ir a la ruta donde se encuentren las clases generadas (por defecto con maven ‘target/classes’) y ejecutar 'java IntegrationCCSV'

Ejemplos XML

A continuación se incluyen ejemplos de llamadas SOAP a los servicios getDocument, createDocument y createAndVerifySignature, estos dos últimos con las respectivas cabeceras y binarios de los adjuntos:

  • Llamada a getDocument, para recuperar el documento indicado en el campo csv:

  • Llamada a createDocument para crear un documento en estado borrador. Incluye un attachment con el contenido del documento a crear:

  • Llamada a createAndVerifySignature para crear un documento con firma. Se indica createDocument=true, por lo que se creará además el documento correspondiente. Incluye dos attachments, uno para el contenido del documento y otro para el de la firma.