Cómo integrar el Sistema de Tramitación Electrónica en egeasy

De Egeasy
Revisión del 13:39 3 ago 2009 de Imhernandez (Discusión | contribuciones) (Configurar el servicio web STE)

Saltar a: navegación, buscar

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 esta en la ruta C:\xampp\tomcat\webapps\ste\WebContent\WEB-INF\classes\org\siani\ste\configuration, que para este ejemplo será donde esta instalado.

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:

// DIRECTORIES
SITE_DIR = c:/xampp/tomcat/webapps/ste/WebContent
SITE_URL = http://ste
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://ste/api
SITE_IMAGES_DIR = c:/xampp/tomcat/webapps/ste/WebContent/images
SITE_IMAGES_URL = http://ste/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://ste/styles
WS_SOAP_URL = http://ste/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, para indicar mediante un nombre de dominio donde esta situado el Sistema de Tramitación Electrónica, para nuestro caso, el sistema esta instalado en local. Por lo tanto solo debemos ir a la ruta de nuestro equipo donde está el fichero hosts, que esta en C:\WINDOWS\system32\drivers\etc\ e introducir lo siguiente:

 127.0.0.1       ste

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 y indices en la base de datos. Par este ejemplo vamos a utilizar la misma base de datos y esquema donde tenemos implantada ya la plataforma egeasy. A continuación se listaran 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