DEV Community

Edgar Rios Navarro
Edgar Rios Navarro

Posted on

Procesar una transacción remota (XML) mediante un procedimiento almacenado

Para enviar información (transaccional) hacia una base de datos centralizada, prodríamos emplear un servicio web: recibe los datos y los persiste de forma autónoma, segura y confiable. Pero como alternativa, es invocar un procedimiento almacenado remoto.

Consideremos la limitante que no podemos enviar la información en formato JSON. La versión del motor no lo soporta: Oracle 11g. La solución será emplear el formato XML.

No pasemos por alto los riesgos de enviar la información no cifrada (el sistema está en una red privada o no), el tamaño de los datos y el costo de procesamiento del servidor.


Este ejemplo nuestra cómo generar el formato XML en el cliente. Se etiqueta los bean's con la anotación @XmlRootElement.

El procedimiento para interpretar el xml y grabar las tablas correspondientes. La solución es válida para todas las base de datos relacionales (como Postgres y Sql Server), aunque el código varía entre ellas.


Documentación

https://github.com/edgargs/Ejemplo-2016-01.git
http://howtodoinjava.com/jaxb/jaxb-exmaple-marshalling-and-unmarshalling-list-or-set-of-objects/
http://viralpatel.net/blogs/oracle-xmltable-tutorial/

Top comments (0)