Skip to content

Servicio web REST para recibir y verificar la existencia de documentos firmados electrónicamente

License

Notifications You must be signed in to change notification settings

alexjcm/certificacion-electronica-documentos

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

22 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Certificacion electronica documentos

Build and testing License: GPL v3

Servicio web REST para recibir documentos firmados digitalmente mediante el servicio de Firma Digital (firmadigital-servicio).

Prerrequisitos

  • JDK 11.- Para compilar y ejecutar la aplicación.

  • WildFly 33.- Para desplegar la aplicación se necesita un servidor de aplicaciones Jakarta EE 10 disponible en wildfly.org

  • Maven 3.- Para compilar y empaquetar se utiliza Apache Maven.

Despliegue

Para compilar se debe ejecutar:

mvn clean package

Luego, copiar el archivo target/recepcion.war a la carpeta standalone/deployments de un servidor de aplicaciones WildFly.

Para almacenar archivos pdf temporalmente y acceder a ellos por HTTP se debe crear un directorio y asignarle permisos al usuario de wildfly.

sudo mkdir /opt/wildfly-static  >/dev/null 2>&1   &&
sudo chown -RH wildfly: /opt/wildfly-static

Después, agregar las siguientes lineas en el archivo /opt/wildfly/standalone/configuration/standalone.xml

<host name="default-host" alias="localhost">
  <location name="/static" handler="dirPdfs"/>
...
<!--
</servlet-container>
<handlers>-->
  <file name="welcome-content" path="${jboss.home.dir}/welcome-content"/>
  <file name="dirPdfs" path="/opt/wildfly-static"/>

Pruebas

Para probar guardando un archivo se puede ejecutar los siguientes comandos desde terminal MacOS o utilizar Postman:

export BASE_URL="http://localhost:7776/recepcion/receiveDocument"

export BASE64=$(base64 -i test.pdf | tr -d '\n')
export JSON="{\"nombreDocumento\":\"test.pdf\",\"archivo\":\"${BASE64}\"}"
curl -s -H "Content-Type: application/json" -X POST -d "${JSON}" "${BASE_URL}/saveSignedFile"

Luego, enviamos la ruta absoluta del archivo guardado anteriormente para probar el servicio:

export RUTA_DOC_A_VERIFICAR="/opt/wildfly-static/test.pdf"
export URL_FINAL=${BASE_URL}/checkSignedFileExists?location=${RUTA_DOC_A_VERIFICAR}
curl -s -H "Content-Type: application/json" -X GET ${URL_FINAL}

También se puede enviar la url del archivo guardado anteriormente:

export URL_DOC_A_VERIFICAR="http://localhost:7776/static/test.pdf"
export URL_FINAL=${BASE_URL}/checkSignedFileExists?location=${URL_DOC_A_VERIFICAR}
curl -s -H "Content-Type: application/json" -X GET ${URL_FINAL}

Versiones

Usamos SemVer para versionar.

Documentación

Licencia

Este proyecto está licenciado bajo la licencia GPL v3. Revise el archivo LICENSE para más detalles.

About

Servicio web REST para recibir y verificar la existencia de documentos firmados electrónicamente

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages