|
Las normas expuestas son de obligado cumplimiento. La STIC podrá estudiar los casos excepcionales los cuales serán gestionados a través de los responsables del proyecto correspondiente y autorizados por el Área de Gobernanza de la STIC. Asimismo cualquier aspecto no recogido en estas normas deberá regirse en primera instancia por las guías técnicas correspondientes al esquema nacional de seguridad y esquema nacional de interoperabilidad según correspondencia y en su defecto a los marcos normativos y de desarrollo software establecidos por la Junta de Andalucía, debiendo ser puesto de manifiesto ante la STIC. La STIC se reserva el derecho a la modificación de la norma sin previo aviso, tras lo cual, notificará del cambio a los actores implicados para su adopción inmediata según la planificación de cada proyecto. En el caso de que algún actor considere conveniente y/o necesario el incumplimiento de alguna de las normas y/o recomendaciones, deberá aportar previamente la correspondiente justificación fehaciente documentada de la solución alternativa propuesta, así como toda aquella documentación que le sea requerida por la STIC para proceder a su validación técnica. Contacto Arquitectura: l-arquitectura.stic@juntadeandalucia.es |
Los cambios en la normativa vendrán acompañados de un registro de las modificaciones. De este modo se podrá realizar un seguimiento y consultar su evolución. Ordenándose de mas recientes a menos recientes, prestando especial cuidado a las cabezeras de la tablas dónde se indican las fechas de entrada en vigor y versión.
|
En el siguiente texto tiene como objetivo mostrar cómo debe generarse y usarse un servicio SOAP siguiendo la normativa JEE de la STIC. Para comprender mejor las indicaciones dadas, se ha creado un ejemplo ilustrativo partiendo del Arquetipo base "javaee7-sample" de la STIC. Vea la documentación asociada al arquetipo base para comprender cómo configurar el proyecto.
El ejemplo modificado puede descargarse de la siguiente ruta: http://git.sas.junta-andalucia.es/examples/javaee7-sample/tree/SoapIntegration
Este proyecto se centra en mostar un ejemplo de cómo crear y usar servicios web en aplicaciones Java.
En el ámbito de la STIC, los servicios web son definidos por la Oficina Técnica de Interoperabilidad (OTI), por lo que tanto el servicio web como el cliente debe ser creado a partir de una definición que nos viene ya dada. Esta definición es ofrecida como un fichero WSDL a partir del cual crearemos nuestros servicios y clientes.
A modo de ejemplo, en este proyecto se han utilizado los siguientes servicios publicados por la OTI:
* Ejemplo de cliente SOAP: Servicio "Consulta de Informe"
* Ejemplo de servicio SOAP: Servicio "S050 - Recepción de Ingreso de usuario"
Adicionalmente, para la gestión de los mensajes enviados y recibidos se hace uso de la librería HAPI (http://hl7api.sourceforge.net/)
Para la generación de un cliente SOAP desde un WSDL existen varias opciones que podrían utilizarse. En este caso se va a hacer uso de Maven para generar el cliente fácilmente sin necesidad de acudir a herramientas externas. De esta forma, los pasos a seguir son:
|
Una vez generadas las clases puede usarse el cliente web desde cualquier punto de nuestro código, por ejemplo:
|
Probar el cliente
Para realizar una prueba del cliente generado en este proyecto de ejemplo realizaremos los siguientes pasos:
El proceso para generar un servicio SOAP partiendo de un WSDL es similar al de la creación de un cliente, con la salvedad de que la generación automática del cliente genera una interfaz que puede ser usada directamente y en el caso de la generación de un servicio web la interfaz debe ser implemtada con una clase, añadiendo a esta la lógica de negocio que debe ofrecer el servicio web.
De esta forma, los pasos a seguir son:
Añadir a la anotación @WebService la url en la que se desea publicar el servicio. En nuestro caso deseamos que la ruta del web service tenga el siguiente formato "http://servidor:port/javaee7-sample/ws/s050". Para ello basta con modificar la anotación indicada de la siguiente forma:
|
Probar el servicio
Para realizar una prueba del servicio generado en este proyecto de ejemplo realizaremos los siguientes pasos:
ANTES de lanzar el mensaje puede acceder a la página http://localhost:7001/javaee7-sample/faces/pages/patients/patients.xhtml, donde verá que el paciente "AN000000001" no tiene ningún episodio.
TRAS el envío de mensaje podrá recargar esta página y verá como ahora debe tener un episodio cargado. Igualmente podrá acceder a la base de datos y verá como la tabla ARQ_EPISODE tiene un nuevo episodio asociado al paciente con ID 2