Cómo integrar el Sistema de Tramitación Electrónica en egeasy
Contenido
Introducción
Este manual sirve para explicar todos los pasos que hay que dar para integrar el Sistema de Tramitación Electrónica en la plataforma egeasy. Esta explicación no partirá de cero, sino que se supone que ya se tiene instalada la plataforma egeasy, con un centro configurado y desarrollado para su usu cotidiano.
Requisitos
Para una correcta integración del Sistema de Tramitación Electrónica vamos a necesitar:
- Servidor web (Apache)
- Servidor de base de datos
- Servidor de Tomcat
Pasos a seguir
Para la instalación de la aplicación web del Sistema de Tramitación Electrónica, vamos a disponer de una instalación de la aplicación XAMPP, que nos proporciona de una forma rápida y sencilla las aplicaciones requeridas para una puesta en marcha. Para que las explicaciones de los ficheros de configuración sean lo menos confusas posible, en este articulo vamos a instalar la aplicación XAMPP en C:\, por lo tanto todas las rutas se explicarán desde dicha ruta. Ademas de instalar la aplicación XAMPP, tenemos que instalar el servicio web, el cual lo vamos a instalar para mayor comodidad en C:\ste. Así que todas las explicaciones parten de dicha ruta de instalación.
Configurar el servidor web, Apache
Para configurar el servidor Apache, debemos modificar el archivo de configuración, que esta en la ruta C:\xampp\apache\conf con el nombre de httpd.conf. Al final de dicho fichero debemos poner lo siguiente:
ScriptAlias "/URLALIAS" "PATHWEBSERVICE" <Directory "PATHWEBSERVICE"> AllowOverride None Options ExecCGI Order allow,deny Allow from all </Directory>
URLALIAS: Es la URL que vamos a definir donde va a estar nuestro servicio web. Para este ejemplo usaremos tramitacion.
PATHWEBSERVICE: Es la ruta física donde está desplegado el servicio web. Para este ejemplo, esa ruta es la siguiente: C:/STE/tramitacion/.
Un ejemplo podría ser el siguiente:
ScriptAlias "/tramitacion" "C:/STE/tramitacion" <Directory "C:/STE/tramitacion/"> AllowOverride None Options ExecCGI Order allow,deny Allow from all </Directory>
Configurar el servicio web STE
Para configurar el servicio web del Sistema de Tramitación Electrónica, debemos modificar el fichero de configuración llamado webservice.ini, que en nuestro ejemplo está en la ruta C:\STE\tramitacion.
Al abrir el fichero webservice.ini encontramos las siguiente etiquetas que debemos configurar. Ahora vamos a pasar a explicar detalladamente que son cada una de las etiquetas de este archivo de configuración del servicio web.
- SERVER_ADDRESS: IP donde se publicará el servicio web.
- SERVER_PORT: Puerto donde se publicará el servicio web.
- WS_IDENTIFIER: Identificador del servicio web.
- WS_DB_CONNECTION_STRING: Cadena de conexión a la base de datos, donde se tenemos que poner el nombre de usuario de la base de datos, seguido de una @, a continuación indicamos la ruta de la base de datos, seguido de una @ y por ultimo la contraseña para acceder a la base de datos. En resumen: NOMBREUSUARIO@DIRECCIONBD@CONTRASEÑA
- WS_DB_TYPE: Gestor de base de datos. Posibles valores: SQL Server, Oracle, PostgresSQL, Firebird.
- WS_DIRECTORY_DOCUMENTS: Ruta donde se almacenan los documentos generados por la aplicación.
- WS_DIRECTORY_LOGS: Ruta donde se localizan los logs del servicio web.
- WS_FILE_INVALID_WORDS: Ruta del fichero donde están las palabras que no se van a indexar en la base de datos.
- TYPE_REGISTRATION: Si esta etiqueta está presente, entonces en la aplicacón web los usuarios podrán registrarse libremente. Los valore que admite esta etiqueta es Free.
- REGISTRATION_FORM:Ruta y nombre del archivo xml que se usará para generar el formulario de registro en la aplicación web. Para este ejemplo usaremos el siguiente fichero C:\STE\registration.xml.
- EGE_USER_RRC: Identificador del usuario en la plataforma egeasy, con el que va a acceder la aplicación web a la plataforma. Para un correcto funcionamiento, debemos generar un usuario en la plataforma solo para esta aplicación web.
- EGE_CENTER_NAME:Nombre del centro al que se le va a poner la aplicación web.
- EGE_DB_CONNECTION_STRING: Cadena de conexión a la base de datos, donde se tenemos que poner el nombre de usuario de la base de datos, seguido de una @, a continuación indicamos la ruta de la base de datos, seguido de una @ y por ultimo la contraseña para acceder a la base de datos. En resumen: NOMBREUSUARIO@DIRECCIONBD@CONTRASEÑA
- EGE_DB_TYPE: Nombre del tipo de base de datos que se usa para la plataforma egeasy.
- EGE_MODEL_DIRECTORY: Ruta donde se localiza el modelo del centro de la plataforma egeasy.
- EGE_DOCUMENT_DIRECTORY: Ruta donde se localizan la base documental de la plataforma egeasy.
- EGE_REGISTRY_DIRECTORY: Ruta donde se localizan los registro de la plataforma egeasy.
Un ejemplo de un fichero de configuración, podría ser el siguiente:
SERVER_ADDRESS=10.22.144.178 SERVER_PORT=10000 WS_IDENTIFIER=WS_STE WS_DB_CONNECTION_STRING=usuario@servidorBD@contraseña WS_DB_TYPE=Oracle WS_DIRECTORY_DOCUMENTS=C:\STE\Docs WS_DIRECTORY_LOGS=C:\STE\Logs WS_FILE_INVALID_WORDS=C:\STE\palabras.dat TYPE_REGISTRATION=Free REGISTRATION_FORM=C:\STE\registration.xml EGE_USER_RRC=3825 EGE_CENTER_NAME=Acecau STE Oracle EGE_DB_CONNECTION_STRING=usuario@servidorBD@contraseña EGE_DB_TYPE=Oracle EGE_MODEL_DIRECTORY=S:\Entornos 2002\Banzai\Modelos\ACECAU STEMod EGE_DOCUMENT_DIRECTORY=S:\Entornos 2002\Banzai\Documentos\AcecauSTEDoc EGE_REGISTRY_DIRECTORY=S:\Entornos 2002\Banzai\Registro\acecausteReg
Configurar la aplicación web STE
Para configurar la aplicación web del Sistema de Tramitación Electrónica, debemos modificar el fichero de configuración llamado ste.conf, que en este ejemplo se encuentra en C:\xampp\tomcat\webapps\ste\WebContent\WEB-INF\classes\org\siani\ste\configuration.
Al abrir el fichero ste.conf encontramos las siguiente etiquetas que debemos configurar. Ahora vamos a pasar a explicar detalladamente que son cada una de las etiquetas de este archivo de configuración del servicio web.
- SITE_DIR: Ruta donde se encuentra instalada la aplicación web.
- SITE_URL: URL donde se encuentra la aplicación web.
- LOG_DIR: Ruta donde se encuentran los logs de la aplicación web.
- DATA_DIR: Ruta donde se encuentra los datos variables de la aplicación web.
- TEMPLATES_DIR: Ruta donde se encuentra las plantillas html de visualización.
- TEMP_DIR: Ruta donde se encuentra los archivos subidos por los usuarios temporalmente.
- SITE_DATA_DEFINITIONS_DIR: Ruta donde se encuentran las definiciones datos personalizados.
- SITE_FORMS_DIR: Ruta donde se encuentra las vistas personalizadas de los trámites.
- SITE_PORT: Puerto que usa la aplicación web.
- API_URL: URL del servlet, llamado API que usa la aplicación web.
- SITE_IMAGES_DIR: Ruta donde se encuentran las imagenes de la aplicación web.
- SITE_IMAGES_URL: URL donde se encuentran las imagenes de la aplicación web.
- SITE_JAVASCRIPT_DIR: Ruta donde se encuentran el javascript de la aplicación web.
- SITE_JAVASCRIPT_URL: URL donde se encuentran el javascript de la aplicación web.
- SITE_STYLES_DIR: Ruta donde se encuentran los estilos CSS de la aplicación web.
- SITE_STYLES_URL: URL donde se encuentran los estilos CSS de la aplicación web.
- WS_SOAP_URL: URL donde se encuentra el servicio web del STE.
- LANG_DIR: Ruta donde se encuentra los archivos de idioma.
- EN = en: Se define el lenguaje Ingles.
- ES = es: Se define el lenguaje Español.
- DEFAULT_LANGUAGE: Indica que lenguaje se va a usar por defecto en la aplicación.
Un ejemplo del fichero de configuración es(Es necesario que usemos el nombre "steprueba", tal como aparece en el ejemplo, cuando configuremos nuestro fichero):
// DIRECTORIES SITE_DIR = c:/xampp/tomcat/webapps/ste/WebContent SITE_URL = http://steprueba LOG_DIR = C:/xampp/tomcat/webapps/ste/logs DATA_DIR = C:/xampp/tomcat/webapps/ste/data TEMPLATES_DIR = C:/xampp/tomcat/webapps/ste/templates TEMP_DIR = C:/xampp/tomcat/webapps/ste/temp SITE_PORT = 80 SITE_DATA_DEFINITIONS_DIR = C:/xampp/tomcat/webapps/ste/data/definitions SITE_FORMS_DIR = C:/xampp/tomcat/webapps/ste/data/definitions/forms API_URL = http://steprueba/api SITE_IMAGES_DIR = c:/xampp/tomcat/webapps/ste/WebContent/images SITE_IMAGES_URL = http://steprueba/images SITE_JAVASCRIPT_DIR = c:/xampp/tomcat/webapps/ste/WebContent/javascript SITE_JAVASCRIPT_URL = http://ste/javascript SITE_STYLES_DIR = c:/xampp/tomcat/webapps/ste/WebContent/styles SITE_STYLES_URL = http://steprueba/styles WS_SOAP_URL = http://steprueba/tramitacion/tramitacion_ws_cgi.exe/soap/IEgeWebService LANG_DIR = C:/xampp/tomcat/webapps/ste/languages // LANGUAGES EN = en ES = es DEFAULT_LANGUAGE = es
Configurar el DNS
Debemos preparar nuestra maquina indicando, mediante un nombre de dominio, dónde está situado el Sistema de Tramitación Electrónica. En nuestro caso, el sistema está instalado en local, por lo que sólo debemos ir a la ruta C:\WINDOWS\system32\drivers\etc\ de nuestro equipo e introducir lo siguiente en el fichero hosts:
127.0.0.1 steprueba
Creación de tablas en la base de datos
Para la implantación del Sistema de Tramitación Electrónica, se deben crear unas cuantas tablas e índices en la base de datos. En este ejemplo vamos a utilizar la misma base de datos y esquema donde tenemos implantada ya la plataforma egeasy. A continuación, se listarán los script con las sentencias SQL que hay que ejecutar en la base de datos para generar todo lo necesario para el Sistema de Tramitación Electrónica. Disponemos de los script tanto para SQL-Server como para Oracle.
- Script para base de datos en SQL-Server
CREATE TABLE WS$USERS (ID NUMERIC(10) PRIMARY KEY, NIF VARCHAR(10), NAME VARCHAR(50), FULLNAME VARCHAR(50), EMAIL VARCHAR(50), FORM IMAGE); CREATE TABLE WS$PROCESSES (ID NUMERIC(10) PRIMARY KEY, LABEL VARCHAR(100), TRAMITATION_STATUS VARCHAR(100), ID_PROCEDURE NUMERIC(10), ID_USER NUMERIC(10), STATUS NUMERIC(1), CREATE_DATE DATETIME, START_DATE DATETIME, END_DATE DATETIME, LAST_READ_DATE DATETIME); CREATE TABLE WS$TASKS (ID NUMERIC(10) PRIMARY KEY, ID_PROCESS NUMERIC(10), ID_EGE NUMERIC(10), ID_DEFINITION NUMERIC(10), CREATE_RECEIVE_DATE DATETIME, SEND_RESPONSE_DATE DATETIME, STATUS NUMERIC(1), RESPONSE_TO NUMERIC(10), CONTENT IMAGE); CREATE TABLE WS$TASK_SIGNATURES (ID NUMERIC(10) PRIMARY KEY, SIGNATURE IMAGE); CREATE TABLE WS$TASK_SNAPSHOTS (ID NUMERIC(10) PRIMARY KEY, SNAPSHOT IMAGE); CREATE TABLE WS$FILES (ID NUMERIC(10), ID_TASK NUMERIC(10), ID_EGE NUMERIC(10), ATTACH_DATE DATETIME, SOURCE NUMERIC(1), FILE_NAME VARCHAR(50)); CREATE TABLE EG$SEQUENCES (NAME VARCHAR(50), SUBSEQUENCE VARCHAR(50), CURRENT_VALUE NUMERIC(10)); CREATE TABLE WSI$WORDS (ID NUMERIC(10), CAPTION VARCHAR(15)); CREATE INDEX IEGI$WORDS#CAP ON WSI$WORDS (CAPTION); CREATE TABLE WSI$INDEX (ID_WORD NUMERIC(10), ID_PROCESS NUMERIC(10), ID_TASK NUMERIC(10)); CREATE INDEX IEGI$INDEX#WRD ON WSI$INDEX(ID_WORD);
- Script para base de datos en Oracle
CREATE TABLE WS$USERS (ID NUMBER(10) PRIMARY KEY, NIF VARCHAR2(10), NAME VARCHAR2(50), FULLNAME VARCHAR2(50), EMAIL VARCHAR2(50), FORM LONG RAW); CREATE TABLE WS$PROCESSES (ID NUMBER(10) PRIMARY KEY, LABEL VARCHAR2(100), TRAMITATION_STATUS VARCHAR2(100), ID_PROCEDURE NUMBER(10), ID_USER NUMBER(10), STATUS NUMBER(1), CREATE_DATE DATE, START_DATE DATE, END_DATE DATE, LAST_READ_DATE DATE); CREATE TABLE WS$TASKS (ID NUMBER(10) PRIMARY KEY, ID_PROCESS NUMBER(10), ID_EGE NUMBER(10), ID_DEFINITION NUMBER(10), CREATE_RECEIVE_DATE DATE, SEND_RESPONSE_DATE DATE, STATUS NUMBER(1), RESPONSE_TO NUMBER(10), CONTENT LONG RAW); CREATE TABLE WS$TASK_SIGNATURES (ID NUMBER(10) PRIMARY KEY, SIGNATURE LONG RAW); CREATE TABLE WS$TASK_SNAPSHOTS (ID NUMBER(10) PRIMARY KEY, SNAPSHOT LONG RAW); CREATE TABLE WS$FILES (ID NUMBER(10), ID_TASK NUMBER(10), ID_EGE NUMBER(10), ATTACH_DATE DATE, SOURCE NUMBER(1), FILE_NAME VARCHAR2(50)); CREATE TABLE EG$SEQUENCES (NAME VARCHAR2(50), SUBSEQUENCE VARCHAR2(50), CURRENT_VALUE NUMBER(10)); CREATE TABLE WSI$WORDS (ID NUMBER(10), CAPTION VARCHAR2(15)); CREATE INDEX IEGI$WORDS#CAP ON WSI$WORDS (CAPTION); CREATE TABLE WSI$INDEX (ID_WORD NUMBER(10), ID_PROCESS NUMBER(10), ID_TASK NUMBER(10)); CREATE INDEX IEGI$INDEX#WRD ON WSI$INDEX(ID_WORD);
Arrancar el Sistema de Tramitación Electrónica
Para iniciar el Sistema de Tramitación Electrónica debemos iniciar una series de aplicaciones en un cierto orden. Las aplicaciones que debemos iniciar y como, se listan a continuación.
- XAMPP
Para iniciar el XAMPP, debemos ir a la ruta donde lo tenemos instalado, en este caso c:\xampp y ejecutar el archivo con nombre xampp-control.exe.
- Servidor de Apache
Una vez abierto el panel de control del XAMPP, debemos hacer clic en el botón start para el Apache.
- Tomcat
Para iniciar el Tomcat, debemos ir a la ruta c:\xampp y ejecutar el archivo de procesos por lotes (.bat) con nombre tomcat_start.bat.
- Servicio web del Sistema de Tramitación Electrónica
Para iniciar el servicio web, debemos ir a la ruta donde se instaló, para este ejemplo debemos ir a la carpeta tramitacion con ruta C:\STE\tramitacion y ejecutar el archivo de procesos por lotes con nombre lanzar.bat. El archivo lanzar.bat contiene el comando de consola que hay que ejecutar para iniciar el servicio web, este comando se compone por la ruta y el nombre del archivo Tramitacion_server.exe y el argumento que se le pasa al ejecutable, el cual es la ruta donde esta el archivo de configuración del servicio web. Para este ejemplo el archivo lanzar.bat contiene lo siguiente.
"c:\STE\tramitacion\Tramitacion_server.exe" "c:\STE\tramitacion\webservice.ini"
Una vez arrancada todas las aplicaciones, solo nos queda ir al navegador y introducir la URL que definimos en los ficheros de condiguración, para acceder al servicio de tramitación electrónica. En este ejemplo debemos introducir http://ste
¿Y ahora que?
Una vez completados todos estos pasos, ya disponemos en nuestra maquina del Sistema de Tramitación Electrónica. A continuación ya podemos pasar a desarrollar en la plataforma egeasy, para hacer que el centro del que disponga haga uso del Sistema de Tramitación Electrónica. Le invito a seguir leyendo el siguiente artículo: Desarrollar con el STE