HIPERGATE TABLA DE CONTENIDO

1. Que es Hipergate.
a. Que hace Hipergate único. 2. Modulos Funcionales.

a. Modulos Funcionales Incluidos en el Producto Estándar.
b. Funcionalidades Comunes para todos los Modulos.

3. Ventajas y Beneficios. 4. Diseño y Tecnología. a. Requisitos y Prioridades del Diseño. b. Lenguajes, Componentes y Plataformas Utilizados.
c. Estructura interna. d. Servidor sin Estados.

e. Separación de Datos por Clientes y Departamentos.
f. Modelos de Seguridad.

5. Manual de Instalación para la versión 4.0. a. Para los Impacientes. b. Planificar la Instalación. c. Requisitos. d. Contenido del paquete de Distribución. e. Instalar y Configurar un Sitio Web de ejemplo. f. Instalar las Librerías.

g. Crear la Base de Datos. h. Ejecutar el Asistente de Configuración. i. j. Configuración de Seguridad y Áreas de Trabajo. Pruebas de Conexión de Acceso.

k. Configuración de Servlets. l. Usos de Múltiples instancias de Hipergate en el mismo Servidor.

m. Incompatibilidades desconocidas. n. Descargas Adicionales. o. Herramientas de Administración. p. Instalación sobre JBoss. q. Apéndice 1: Propiedades de Hipergate.cnf. r. Apéndice 2: Carga Manual de la Base de Datos.

s. Apéndice 3: Configuración de Granjas de Servidores. t. Apéndice 4: Librerías de Terceros.

u. Apéndice 5: Librerías de Depuración. v. Apéndice 6: Notas para Recompilara los Fuentes. w. Como actualizarse de la versión 3.0 a la 4.0 x. Diagnostico de Problemas.

1. Que es Hipergate:
hipergate es una suite de aplicaciones de código abierto basadas en web. El propósito del conjunto de programas es cubrir un amplio rango de necesidades de tecnología de información en cualquier organización. Todas las aplicaciones se acceden desde Internet Explorer sin necesidad de descargar ningún software en el puesto cliente. La suite tiene capacidad multi-entidad y puede utilizarse indistintamente para dar servicio a una empresa, a un grupo de empresas, o en modalidad ASP para alojar un número ilimitado de entidades cliente diferente.

a. Que hace Hipergate Único:

• • • • • • • •

Es completamente gratuito. Es la única aplicación Open Source con una cobertura funcional tan amplia. Funciona sobre múltiples bases de datos y sistemas operativos. Tiene un diseño conceptual e implementación unitarios. Es apropiado para su uso en modalidad ASP. Es multi-idioma. Dispone de una red de servicios profesionales de soporte. Está bien documentado.

2. Módulos Funcionales:
a. Módulos funcionales incluidos en el producto estándar

Modulo de Herramientas Colaborativas y Trabajo en Grupo
• • • • •
Calendario y Agenda de Reuniones Compartida. Foros Libres y Moderados con múltiples grupos. Área de Preguntas Frecuentes. Directorio de Personal Listado y Reserva de Salas y otros Recursos Compartidos

Modulo de Gestión de Contactos
• • • • • • • •
BB.DD. de Clientes, Proveedores, Competidores y Partners. BB.DD. de contactos personales Múltiples Direcciones por Contacto. Gestión de Demarcaciones Territoriales (Delegaciones) Gestión del Pipeline de Ventas (Oportunidades Comerciales) Listas de Distribución de diversos tipos. Carga Directa de Windows Address Book (Outlook Express) Carga Directa de ficheros de Contactos.

Modulo de Gestión de Proyectos y Soporte a Incidencias
• • • •
Árbol Jerárquico de Proyectos. Seguimiento de Tareas Pendientes. Control de Averías e Incidencias. Contratos de Mantenimiento con Clientes.

Modulo de Tienda Virtual
• • • • • • • • •
Múltiples Catálogos Independientes. Jerarquía ilimitada de Categorías de Productos. Atributos Variables por Producto. Gestión de Stock en múltiples almacenes. Gestión de Pedidos. Gestión de Facturación. TPV Banesto. TPV Banco Popular. TPV BBVA.

Modulo de Producción de Contenidos
• • • • • • •
Plantillas para comunicación vía e-mail. Plantillas para websites. Formularios electrónicos. Plantillas para fax. Inclusión de contenidos multimedia. Gestión categorizada de contenidos. Librería de portlets para la presentación de contenidos dinámicos.

Ventajas y Beneficios del Producto hipergate es software de última generación. Integración con LDAP. Informes y Consultas • • • • Herramienta de Consulta Guiada por Formulario. Enlaces Favoritos compartidos. Biblioteca Corporativa • • • • • Disco Virtual 100% basado en Web. Funcionalidades Comunes para todos los módulos Seguridad basada en roles • • • • • Múltiples dominios independientes de seguridad. Seguridad a nivel de empresa y a nivel de departamento. Roles predefinidos listos para utilizar en las aplicaciones. Tesauro lexicográfico. Volcados a Excel. Ejecutor multi-hilo en segundo plano. El CRM Java Libre más completo .Modulo de Envío Masivo de Correos Electrónicos • • Gestión de envíos múltiples de e-mails a listas de distribución. Categorización de objetos. Número ilimitado de usuarios y grupos de permisos. Gestión e Indexación de propiedades de documentos OLE. 3. Importar/Exportar favoritos al PC cliente. Estadísticas de recepción de mensajes. Planificador de Tareas • • Gestión de colas de procesos. Consultas online en formato HTML. Seguridad por usuario basada en roles para los archivos. Informes remitidos por e-mail. Gestión de datos jerárquicos • • • Tesauro geográfico. diseñado. programado y testeado con las herramientas y técnicas más modernas. b.

La suite está orientada a facilitar el trabajo diario. SQL Server. . empresa o departamento. Se fijaron una serie de requisitos y prioridades que el producto debía cumplir estrictamente. superusuario. El usuario puede en cualquier momento contratar el uso de las aplicaciones hipergate mediante pago a través de Internet aunque también se dan opciones de otras formas de pago. usuario e invitado. Una vez realizado el pago el usuario puede empezar a trabajar con las aplicaciones contratadas. Las facilidades de auto-administración sirven dos propósitos: 1º) reducir el coste de propiedad de la aplicación en el cliente y 2º) reducir el coste de mantenimiento si la plataforma se ofrece en modalidad ASP. a los que se asocia unas operaciones que pueden hacer sobre su información de forma muy parecida a como funciona el sistema operativo. 4. Entorno intuitivo y fácil de manejar Cada aplicación es fácilmente accesible desde un menú principal de pestañas. Las aplicaciones pueden activarse o desactivarse en caliente de forma particular para cada cliente. PostgreSQL o MySQL. Solución Integral hipergate está concebido y pensado tanto en profesionales independientes como en empresas. Soporte en todas las plataformas y bases de datos comunes hipergate funciona indistintamente sobre Linux o Windows. Integración con Office hipergate reconoce e indexa documentos Office.Ningúte otro producto libre sobre plataforma Java ofrece un conjunto de funcionalidades tan amplio como hipergate. Registro rápido y a trabajar Al usuario se le da opción de que pruebe la herramienta durante un periodo de tiempo. y sobre Oracle. Aplicaciones independientes pero sinérgicas Cada aplicación de la suite puede funcionar de forma independiente o junto con las otras aplicaciones. permite cargar y exportar datos a Outlook Express y generar consultas en formato Excel. Esto hace que el usuario final pueda contratar las aplicaciones que realmente necesita sin tener que comprar toda la solución como sucede con los paquetes de software actuales. El administrador de la instancia concreta. Requisitos y Prioridades de Diseño hipergate fue diseñado desde el principio como una suite orientada a dar un servicio de alta calidad a los clientes más exigentes. Diseño y Tecnología: a. Auto-administrable por el usuario final hipergate suministra un modelo de administración predefinido basado en 4 perfiles de usuario: administrador. El interface con el usuario está diseñado para ser homogéneo y de esta forma de fácil y rápido aprendizaje. creando así una base de usuarios que utilicen el software constantemente. de manera que puedan derivar todos sus procesos informáticos hacia la plataforma.

Mantenibilidad La estructura del código se diseñó pensando en que resultase sencillo de mantener y de ampliar por programadores sin conocimientos profundos de los detalles del sistema. El modelo de objetos que aísla el modelo físico de la base de datos del modelo de la lógica de negocio proporciona un marco natural para hacer ampliaciones con una curva de aprendizaje . Estabilidad La suite es un producto pensado para tener disponibilidad 24x7. Por último. Tolerancia a Fallos La aplicación puede configurarse para funcionar en clustering tanto con los servidores web como con la base de datos. El diseño hace énfasis en la capacidad para crear granjas y repartir la carga entre múltiples servidores. modelo conceptual sencillo. En este apartado se prefirió la expansión horizontal del producto por múltiples módulos antes que fabricar unas pocas aplicaciones específicas de alta complejidad. Para reducir el consumo de memoria y aumentar la capacidad de servicio de cada servidor web. Cada nuevo módulo es meticulosamente testeado en sucesivos walkthroughts de código. Esto se consigue mediante: • • • • • arquitectura de información homogénea a través de todos los módulos. la suite incorpora un sofisticado sistema propietario de cache distribuido con la misión de mantener información local en los servidores web y reducir la sobrecarga de los nodos de la base de datos. completitud en la gama de operaciones disponibles. y. El código Java dispone de 3 modos de ejecución: 100% Java Puro. Escalabilidad Durante todo el ciclo de desarrollo no se quiso sacrificar en ningún momento el rendimiento por la transportabilidad o la ampliación funcional del producto. Unix y Win32. Una parte de la lógica de proceso emplea procedimientos almacenados PL/SQL. La aplicación está diseñada en 3 capas: servidor web. El código está optimizado para hacer uso de las funcionalidades específicas de cada base de datos y plataforma sobre los que puede ejecutarse. servidor de aplicación y servidor de base de datos. según se configure explota las llamadas atómicas de cada sistema operativo para obtener el mejor rendimiento. Alcance Funcional La suite está pensada para cubrir el 80% de las necesidades más típicas de cada módulo funcional. la aplicación funciona sin sesiones ni estados mantenidos en el lado servidor. tiempos de respuesta rápidos para todas las operaciones.Ergonomía y Usabilidad La primera prioridad del producto es que cada parte proporcione una buena experiencia de usuario. PL/pgSQL o Transact-SQL reescritos manualmente para aprovechar al máximo las opciones más avanzadas de cada SGBDR. fácil acceso a todas las funcionalidades. pruebas de caja negra y pruebas de stress en condiciones críticas. La filosofía del producto es que las empresas pequeñas y medianas obtengan prácticamente todas las funcionalidades necesarias para cada departamento y que las grandes dispongan de una base sólida para desarrollar extensiones propietarias.

Componentes utilizados bajo licencias Open Source • • • • • • Jakarta Bean Scripting Framework 2.8 a la 1.27 con Java 1. la suite está diseñada y codificada para ser muy simple parte por parte.2 Componentes utilizados bajo licencia de SUN Microsystems Inc.1.5 Jakarta ORO 2. • • • JavaBeansTM Activation Framework 1. La máquina que aloje el servidor web debe ser Linux. BSD.1a con Java 1. Tomcat 4. es el uso racional de la CPU y el disco que se consideran recursos escasos. Economía La aplicación puede funcionar basada 100% en software libre con el propósito de eliminar casi por completo los costes de licencias. la información de cada cliente puede extraerse limpiamente en cualquier momento de la base de datos compartida para hacer una copia de respaldo exclusiva del cliente o para instalarse en una instancia de base de datos dedicada.3.3 Jakarta POI 2.1.3. AIX o Windows 2000. Componentes y Plataformas Utilizados Java y Tomcat Todos los módulos de hipergate están escritos en 100% Java Puro.2 Enterprise DT Ltd Java FTP Library 1.4 y Tomcat 5.2 JavaTM Advanced Imaging 1.5 con Java 1. b. Lenguajes.2 JavaMailTM 1. Separación de datos entre clientes hipergate comparte información de varios clientes en una misma base de datos para evitar una proliferación insostenible de bases de datos.5. El software puede correr en cualquier versión de la máquina virtual desde la 1.2 Xalan XSLT Processor 2.1. etc.2 .0.2. Simplicidad A pesar de su amplio alcance técnico y funcional. como requisito imprescindible para poder dar servicio ASP. Muchas de las tareas rutinarias de codificación: generación de formularios. tablas de remonte.1.suave.0 de hipergate ha sido testeada sobre Tomcat 3. validación de datos. gestión de fechas. Otro factor. La versión 1.6.6.8 Xerces2 XML Java Parser 2. Además se aboga por el uso exclusivo de plataformas con respaldo explícito para su continuidad de las grandes empresas del sector. Tecnología Estándar Sólo se emplean componentes y tecnologías de uso muy común en el mercado.0.5. Solaris. ya están resueltas de forma estándar en componentes reutilizables. No obstante.

Capa 5: Procedimientos almacenados en el SGBDR. Servidor sin estados hipergate no utiliza sesisones ni estados mantenidos en el servidor. Esta división persigue alcanzar el mejor grado de escalabilidad y extensibilidad de la aplicación. Realizar el máximo de validaciones y procesamiento en cliente para reducir el tráfico entre el navegador y el servidor web. 6. puede ejecutarse dentro de Tomcat o de forma separada sobre JBoss. Separar la capa de presentación de la persistencia de objetos. 3. Estas cookies sólo contienen un mínimo de información: • dominio de seguridad al que se está conectado . 5. Esto es una medida destinada a reducir el consumo de memoria y aumentar la escalabilidad en el servidor web.4 Servidor de Aplicaciones El la persistencia objetos en base de datos. Capa 2: Páginas JSP servidas por el servlet runner (Tomcat) Capa 3: Modelo abstracto de objetos Java. Utilizar el máximo de código compilado y optimizado para el núcleo de librerías del sistema. 2.0 (opcional) Sistemas Gestores de Base de Datos Relacional Soportados • • • Oracle 9i. c. Externalizar la lógica de negocio en scripts de servidor que no requieran ser recompilados para ejecutarse. el módulo de cache distribuido y el planificador de tareas pueden instalarse separados del servidor web sobre JBoss 3. Capa 4: Scripts Java BeanShell.0 (opcional) DipuTree Java tree applet 3. 4. 7.0. Estructura Interna Diseño multi-capa El código de hipergate está dividido en 5 capas: • • • • • Capa 1: Código JavaScript ejecutado por el navegador cliente. 10g Microsoft SQL Server 2000 PostgreSQL 7.3. Proporcionar un API para todos los objetos de la aplicación. d. Toda la información se mantiene mediante cookies de sesión almacenadas en el cliente.Otros Componentes • • Infomentum AppletFile 3. con los objetivos de: 1. Reducir el número de llamadas a la base de datos en aquellas operaciones que puedan ejecutarse de forma atómica dentro del gestor de base de datos.

Un controlador de cache se encarga de mantener la coherencia de los datos en instalación con múltiples servidores web funcionando de forma concurrente contra la misma base de datos. puede crear nuevos usuarios o activar y desactivar aplicaciones dentro de su dominio. al mismo tiempo invitado del área de trabajo del departamento de soporte técnico. las utilidades de administración disponen de subrutinas para cortar y separar la información de un cliente en una base de datos aislada de uso exclusivo. Este vendedor podría crear nuevas fichas de clientes o generar oportunidades comerciales en el área de trabajo de ventas. la división de datos y permisos de acceso puede llegar a nivel departamental. para mantener el requisito indispensable de la separación de datos por cliente. incluso aunque dicha información se encontrase previamente almacenada en una base de datos compartida. Las áreas de trabajo suelen representar departamentos funcionales en las entidades cliente. Así el administrador de una entidad cliente. pero no puede ver ni alterar los datos de otras entidades clientes en dominios diferentes. Esto reduce el tráfico de red y aligera la carga sobre la base de datos. Por ejemplo. El uso principal de los dominio es establecer los límites de asignación de permisos para cada administrador. Modelo de Seguridad . Sin embargo. aunque otro uso común es usarlo como contenedor de usuarios individuales no adscritos a ninguna entidad (por ejemplo. yendo un paso más lejos. Áreas de Trabajo Cada Dominio puede contener una o más Áreas de Trabajo. Caches El sistema utiliza un cache distribuido que permite almacenar información de la base de datos de forma local en los servidores web. Típicamente representa una entidad cliente completa. Toda la información de estado se transfiere de una página a otra mediante métodos GET o POST de HTTP. La ventaja de este enfoque es que permite separar fácil y limpiamente los datos de cada cliente El inconveniente es que se genera una proliferación de bases de datos clónicas prácticamente imposibles de mantener a partir de cierto volumen de instancias. y. sin posibilidad de modificarlas. Dominios Conceptualmente. el Dominio de hipergate es la unidad de mayor nivel de división de datos. e. Separación de datos por clientes y departamentos Muchas aplicaciones que funcionan en modalidad ASP lo hacen replicando automáticamente un modelo de datos para cada una de las instancias cliente. incluso. En un momento dado cada usuario sólo ve la información de aquella área de trabajo a la que está conectado con un rol determinado. Las áreas de trabajo forman los compartimentos estancos de información. un vendedor podría ser usuario del área de trabajo del departamento de ventas. f. consiguiendo que las personas de un departamento tengan acceso a un conjunto de datos y aplicaciones diferente de los de otro departamento. profesionales independientes que contratan una cuenta de uso personal). pero su nivel de privilegio en el área de trabajo de soporte sólo le permitiría ver las incidencias abiertas pendientes de resolución. no existe el concepto de identificador de la sesión actual.• • • área de trabajo a la que se está conectado identificador único de del usuario conectado token de acceso de sesión encriptado Como no hay sesiones. En hipergate se ha seguido una aproximación híbrida al problema de la separación de datos: una única base de datos puede contener información de múltiples entidades cliente sin solapamientos.

Se dispone de cuatro roles predefinidos más un quinto definible por entidad cliente: administrador. superusuario. cada usuario tiene disponible un subconjunto de todas las aplicaciones y ejerce un rol en cada una de ellas en función de los grupos de permisos a los que pertenezca. Por ejemplo. la cuenta profesional y la cuenta de sistema.hipergate implementa un modelo de seguridad a nivel de sesión basado en roles. Así. En este caso se crearía un dominio para la empresa y un área de trabajo para cada delegación. Cuenta Una cuenta es lo mismo que un contrato de uso con un cliente final. Usuario Rol Grupo Diagrama ilustrativo del modelo de seguridad . Existen 3 tipos de cuenta predefinidas: la cuenta corporativa. un usuario podría tener rol de Administrador en el módulo del Directorio de Personal y Rol de Invitado en el módulo de ventas. Se desea que la creación y gestión de usuario esté centralizada en Barcelona y que los usuarios de cada sede vean sólo la agenda y el directorio de su localidad. Se permite crear un número ilimitado de usuarios cada uno con su propio conjunto de roles y clave de acceso. Dominio Área de Trabajo Un dominio representa un conjunto de usuarios que se administran de forma independiente. Cada dominio contiene una o varias áreas de trabajo. Se pueden añadir o quitar aplicaciones sin afectar al funcionamiento del resto del sistema. invitado y variable. En un momento dado. una en Madrid y otra en Barcelona. Cada dominio tiene uno o más administradores. Los grupos en si mismos no otorgan roles a los usuarios. pero no crear nuevos clientes. Es posible definir un número arbitrario de grupos. El modelo maneja los siguientes conceptos: Aplicación El producto funciona como un conjunto de aplicaciones interoperables. Es preciso asignar un rol al grupo dentro de una aplicación y área de trabajo para que los usuario adquieran el rol deseado. supongamos que la entidad cliente es una empresa con dos delegaciones. Estos roles marcan lo que el usuario puede hacer en cada aplicación. Las cuentas corporativas permiten un número arbitrario de usuarios y están asociadas a su propio dominio. usuario. Las cuentas del sistema se usan por los operadores del ISP que proporcionan el servicio como un medio de administrar todos los dominios contratados con clientes. Esto le permitiría crear nuevas fichas de empleados. El área de trabajo es una entidad que sirve para establecer la visibilidad de conjuntos de datos en la aplicación. Las cuentas profesionales representan usuarios individuales que no pueden hacer uso de las funcionalidades de trabajo en equipo de la aplicación. Cada usuario pertenece a uno a más grupos.

en una unidad con espacio suficiente.xml (se puede hacer más tarde pero hasta que no esté hecho no funcionará el módulo de disco virtual) (Opcional) Si se ha instalado hipergate en un directorio que no es el raíz del dominio utilizado modificar el valor de la variable config. Los directorios /storage y /web/workareas.x-aa.16 (o superior) o PostgreSQL 8.jar. Planificar la instalación La instalación de hipergate consiste. básicamente. que es donde se almacenan los archivos manejados por hipergate que no residen en la base de datos.BaseUrl en el archivo /fckeditor/js/fck_config. Es importante pesar de antemano dónde se ubicarán los siguientes archivos: • • • • La base de datos.x. La diferencia esencial entre /storage y /web es que los archivos de /storage no necesitan ser visibles por HTTP (aunque en la instalación por defecto lo son) mientras que los de /web deben colgar de una URL bajo el servidor web. Microsoft SQL Server 2005/DE or Oracle 10g/XE o MySQL 5.6 (o superior) o Tomcat 6.zip en cualquier parte. 5. 1. Para que hipergate funcione es necesario haber pre-instalado (al menos) Java 1. de forma que no colisionen con otros ya instalados (por defecto en WEB-INF/lib). Los .0. 6. Copiar el directorio /storage en cualquier sitio fuera del árbol del servidor web. Abrir la página http://servidor:puerto/admin/setup.0 a.jar en el servidor web y lanzar el asistente de web de instalación. Requisitos Sistema Operativo Linux o Windows . Configurar /WEB-INF/web. Las páginas JSP de hipergate. Para los impacientes. un contenedor de servlets (ej. Un tamaño inicial de 30Mb para la base de datos es más que suficiente para tareas de desarrollo. Es preciso tener pre-instalado o Java 1. 2.js b. c.x. Tomcat) y un gestor de base de datos. Copiar todos los archivos del directorio /web o /web al servidor web. Descargar y descomprimir hipergate-4..0. en copiar las páginas JSP y los archivos . 7. 3. 4.Manual de Instalación para la Versión 4..htm para iniciar el asistente de instalación. /storage y /web/workareas son dos directorios que pueden crecer indefinidamente según se suban archivos a la aplicación.4.

d.DD. Se puede utilizar BSD pero es imprescindible que la plataforma seleccionada tenga soporte para una máquina virtual de Java 1. database: Volcados binarios de la base de datos de ejemplo. Oracle 9 Por defecto. Se puede comprobar si el lenguaje está cargado lanzando la siguiente sentencia SQL: select lanname from pg_language. El lenguaje plpgsql debe estar instalado en la instancia de BB.0. Contenedor de servlets/JSP El desarrollo inicial de hipergate se ha realizado con Apache Tomcat 6. La base de datos debe ser creada con juego de caracteres UNICODE.DD. De lo contrario. java: Código fuente de la librería de hipergate. y contien los siguientes subdirectorios: • • • • • • bin: Librería estándar de hipergate. No existe soporte para MySQL 4. antes de crear la base de datos hay que abrir el archivo de configuración de la instancia de BB. JRE 1.ora) y poner la opción: "open_cursors=100" (como mínimo). storage: Contenidos de ejemplo del directorio de almacenamiento privado. antes de cargar el juego de datos inicial. Este parámetro es incompatible con el funcionamiento de la instalación. Por consiguiente. con la seguridad integrada en Windows no es suficiente. Oracle 9/10g/XE y MySQL 5. (initXXXX. de lo contrario se producirá el error SQLException 42P01 ERROR: no existe la relación k_x_app_workarea. Oracle XE Oracle XE usa por defecto el mismo puerto de administración que Tomcat. doc: Documentación adicional. funcione. web-XX: Juego de páginas JSP con una aplicación de ejemplo.x. y ha sido probado en otros servidores como Sun Web Server. Contenidos del paquete de distribución El paquete de hipergate se distribuye en formato ZIP.16. Microsoft SQL Server Es necesario activar el protocolo TCP/IP en el servidor. Solaris o AIX.0.x. el 8080.4/8. licencias y referencia del API de hipergate. BEA WebLogic e IBM WebSphere. hay que ejecutar la siguiente sentencia utilizando el usuario administrador de la base de datos: createlang plpgsql nombre_bbdd. Microsoft SQL Server 2000/2005/DE. Pramati.4. aparecerá el siguiente error mientras se realiza la carga inicial: "[SQLServer 2005 Driver for JDBC][SQLServer]INSERT failed because the following SET options have incorrect settings: 'ARITHABORT'".DD. hay que conectarse a la base de datos master desde SQL Query Analyzer y ejecutar la sentencia: ALTER DATABASE nombre_bbdd SET ARITHABORT ON. que deja un cursor preparado por tabla. Para ello. También es necesario activar la seguridad nativa de SQL Server. Base de datos relacional hipergate soporta de forma nativa PostgreSQL 7.Preferentemente Linux (cualquier distro). si se ejecutan ambas aplicaciones en la misma máquina hay que cambiar el puerto para alguna de las dos. Oracle admite un máximo de 50 cursores abiertos por conexión. Para ello usar el programa SQL Server Client Network Utility.6 de Sun JDK en distintas plataformas. Para ello. A continuación se presenta un detalle de los contenidos de los directorios web y storage: . En algunos casos puede ser necesario configurar el parámetro ARITHABORT de SQL Server para que la carga inicial de BB.6 hipergate 4 ha sido probado con la versión 1. puesto que se utilizan procedimientos almacenados no soportados por esta base de datos. Existen una serie de requisitos por cada gestor de base de datos utilizado con hipergate: PostgreSQL PostgreSQL debe estar atendiendo peticiones por TCP/IP.

Contenidos del directorio web .

hay que modificar el valor de la variable config. puesto que las necesitará más adelante en el Asistente de Instalación.0 . Instalar y configurar un sitio web de ejemplo La primera decisión a tomar es donde se ubicarán las páginas JSP de la aplicación. Debe tener configurado un motor de servlets/JSP en el servidor.Contenidos del directorio storage e. como: http://localhost:8080/ Si se desea instalar hipergate en un directorio por debajo del raiz. Se recomienda instalar hipergate justo debajo de la raiz del dominio utilizado. Tome nota de la configuración y URLs donde instala las JSP.BaseUrl en el archivo /fckeditor/js/fck_config.js Instalación sobre Tomcat 6.

Puede instalar una copia de Apache Tomcat en el directorio /opt/tomcat/.CoyoteConnector" Puede crear un nuevo <Context> para hipergate o utilizar uno existente.cnf Establece la cadena de conexión a la BB.cnf Establece el usuario y contraseña de acceso a la BB.http (HttpBinaryServlet. y configurarla para que escuche peticiones a través de HTTP en el puerto 8080 (configuración por defecto).apache..DD.DD. Si no se especifica el parámetro file. Servlets hipergate incluye tres servlets para la descarga de archivos desde el directorio privado storage.catalina. Es necesario indicar a Tomcat que debe esperar archivos fuente Unicode estableciendo el parámetro -Dfile.txt" timestamp="true"/> </Context> </Host> </Engine> </Service> </Server> Archivos con juego de caracteres Unicode Los archivos fuente JSP de hipergate utilizan el juego de caracteres Unicode codificado como UTF-8.. /> className="org.apache. Por ejemplo.encoding..DD. igual que el parámetro dburl de hipergate.jasper.tomcat4." suffix=". es posible que se produzca un error del estilo org. HttpBLOBServlet y HttpQueryServlet) hay que configurar los siguientes parámetros: jdbcDriverClassName jdbcURL Establece el driver de acceso a BB.apache.logger. Para recoger archivos desde la BB. HttpBLOBServlet y HttpQueryServlet) pueden especificarse en el archivo dbUserName/dbUserPassword .apache.FileLogger" prefix="hipergate_log. puede copiar toda la rama web del paquete ZIP de hipergate al directorio $CATALINA_HOME/webapps/hipergate y configurar un nuevo <Context> en el archivo server.jsp Cannot read file: ze file al arrancar la aplicación. Compruebe la siguiente línea en su archivo $CATALINA_HOME/conf/server..xml instalado. es necesario configurar una serie de entradas en el fichero web/WEBINF/web.DD.tomcat4. igual que los parámetros dbuser/dbpassword de hipergate. Para cada unos de los servlets (HttpBinaryServlet.CompileException: /common/desktop.xml: <Connector port="8080" .CoyoteConnector" port="8080" minProcessors="5" maxProcessors="75" enableLookups="true" redirectPort="8443" acceptCount="100" debug="0" connectionTimeout="20000" useURIValidationHack="false" disableUploadTimeout="true" /> <Host name="localhost" debug="0" appBase="$CATALINA_HOME/webapps/hipergate" unpackWARs="true" autoDeploy="true"> <Context path="" docBase="" debug="0" reloadable="true" crossContext="true"> <Logger className="org. igual que el parámetro driver de hipergate.coyote.encoding=UTF-8 en la variable de entorno CATALINA_OPTS.knowgate..cnf Los parámetros de conexión a la base de datos para los servlets del paquete com.coyote.xml de la siguiente forma: <Server port="8005" shutdown="SHUTDOWN" debug="0"> <Service name="Tomcat-Standalone"> <Connector className="org.compiler.

dbf' SIZE 100M. Si no se encuentran parámetros de conexión en web. 4.CREATE SEQUENCE. Usually there is no need to change them to another place.CREATE SYNONYM. CREATE TRIGGER TO HIPERGATE. Si tiene dudas acerca de cómo crear una aplicación web en su motor de servlets lea una de las siguientes guías de instalación. Normalmente.CREATE PUBLIC SYNONYM. Instalar las librerías El segundo paso es instalar las páginas y las librerías de hipergate en un directorio donde el motor de servlets pueda referenciarlas.de /WEB-INF/web. no hay necesida de cambiarlas de sitio.CREATE PROCEDURE. Puede mover las librerías a shared/lib si tiene problemas para cargarlas desde WEB-INF/lib.xml pueden dejarse vacíos si se tiene una única instancia de la aplicación corriendo en el mismo servidor. g.cnf y no a otros archivos de configuración como real.cnf.xml es prioritaria sobre la de hipergate. master y ejecutar: ALTER DATABASE hipergate4 SET ARITHABORT ON Notas sobre Microsoft SQL Server Desktop Engine Aunque hipergate puede correr sobre MSDE. Las librerías JAR se colocan por defecto en el directorio $CATALINA_HOME/webapps/hipergate/WEBINF/lib. .html funciona correctamenente. 2. Crear una nueva base de datos desde Microsoft SQL Server Management Studio.DROP PUBLIC SYNONYM.cnf de modo que si ambas difieren se tomará como válida la de web. Crear una base de datos vacía Oracle 10g 1.CREATE TABLE.cnf o portal.DD. Añadir las librerías al CLASSPATH no es suficiente. Abrir una conexión a Oracle con SQL*Plus. Tomcat utiliza el directorio $CATALINA_HOME/shared/lib para los JARs compartidos por todas las aplicaciones web. Microsoft SQL Server 2005 1. CREATE USER HIPERGATE IDENTIFIED BY HIPERGATE DEFAULT TABLESPACE HIPERGATE4 QUOTA UNLIMITED ON HIPERGATE4 QUOTA 0 ON SYSTEM. Los parámetros de web. SQL*Worksheet o Server Manager y ejecutar las sentencias: CREATE TABLESPACE HIPERGATE4 DATAFILE 'C:\oraclexe\oradata\XE\hipergate4. ya que la mayoría de los contenedores de servlets utilizan su propia estructura de directorios y cargadores de clases para buscar las librerías JAR. 3. Asegurarse de que el servidor está configurado para aceptar autentificación nativa.cnf. Por último.xml o en el archivo /etc/hipergate. La informacion de web.xml el servlet irá a buscarlos a hipergate. compruebe que la URL http://hostname:8080/login. conectarse a la BB. Abrir SQL Query Analyzer.xml. Habilitar el soporte de conexiones por TCP/IP.CREATE VIEW. pero es imprescindible rellenarlos si se tienen varias instancias de la aplicación corriendo en el mismo servidor contra bases de datos diferentes. f. no se recomienda para entornos de producción. GRANT CONNECT. Si no se activa la seguridad nativa se obtendrán el error "Not associated with a trusted SQL Server connection" al intentar la conexión con SQL Server.

Es posible iniciar y parar el servicio MSSQLServer usando el Panel de Control de Windows o "NET STAART/STOP" desde la línea de comandos.4. Los últimos dos parámetros habilitan el soporte TCP/IP y la autentificación dual SQL Server+Windows • MSDE no incluye herramientas administrativas. Se necesita el Enterprise Manager Snap-in para Microsoft Management Console. . Si no se activa el PL/pgSQL antes de crear el modelo de datos. Activar el lenguaje PL/pgSQL.0 1. y un usuario: # createdb -E UNICODE hipergate4 # createuser knowgate # grant all on database hipergate4 to knowgate 2. # createlang plpgsql hipergate4 4. de modo que es preciso conectarse al servidor de alguna de las siguiente maneras para crear la base de datos vacía: .* TO 'knowgate'@'%' IDENTIFIED BY 'knowgate'.o si se dispone de IIS y el SDK de .BAK distribuido con hipergate a una nueva base de datos. 127. PostgreSQL 8.asp. a través de SSH/Telnet. hacer: # update pq_language set lanpltrusted=true where lanname='c'. (postgres). Conectar al servidor de BB. usando el usuario administrador de la BB. Siguiendo las instrucciones de la sección 3. . y crear una nueva BB.0.DD.o usar una herramienta de consulta SQL como WinSQL . # grant usage on language c to knowgate.DD.1' port = 5432 3. configurar hiperate.DD. El PL/pgSQL debe estar activado antes de ejecutar el asistente de instalación o de cargar el modelo de datos manualmente.microsoft. Esta es la forma más fácil de administrar MSDE. Habiendo instalado todo esto.x 1.conf tcpip_socket = true virtual_host = '127.o (puramente experimental) quizá exista una utilidad de línea de comando para restaurar el archivo .cnf para usar el SAPWD. He aquí como proceder: • • • Obtener MSDE Release A de http://www. pero no es gratis.1 como host y puerto 1433. Leer el archivo README incluido en MSDE sobre cómo instalarlo teniendo en cuenta que MSDE no está pensado para ser instalado manualmente por un humano.0. Configurar PostgreSQL para que atienda peticiones por TCP/IP estableciendo los siguientes parámetros en el archivo postgresql. GRANT ALL PRIVILEGES ON *. MySQL 5.0.0.Sin embargo.Instalar las herramientas cliente de SQL Server Standard/Enterprise. MSDE es fácil de instalar y puede ser útil para hacer demos en Windows 2000/XP.com/sql/msde/downloads/default.3 del README. Si se encuentran problemas de permisos accediendo al lenguaje c. SAPWD es la clave de super usuario de la base de datos. . CREATE USER knowgate IDENTIFIED BY 'knowgate'. se producirá un error en la función k_sp_authenticate al intentar conectarse por primera vez y será necesario volver a crear el modelo de datos desde cero. el nombre de la instacia podrías ser HGOLTP2D y el directorio destino C:\MSSQL.NET es posible utilizar Web Data Administrator. Conectarse al servidor como root y ejecutar: CREATE DATABASE hipergate4 CHARACTER SET utf8. ejecutar: setup SAPWD="AStrongPassword" INSTANCENAME="InstanceName" TARGETDIR="C:\MyInstanceFolder" DISABLENETWORKPROTOCOLS=1 SECURITYMODE=SQL.

acceda a http://myserver/admin/test_connect. Configuración de Seguridad y Áreas de Trabajo Para crear nuevos Dominio. Tener las librerías (JARs) necesarios en su sitio (por defecto ya lo están en WEB-INF/lib).html. Se utiliza para generar copias clónicas de los dominios.com (password model.cnf se crea por defecto en el directorio /etc (o C:\WINNT en Windows) pero su ubicación puede cambiarse asignando el nombre del directorio donde se encuentre a la variable de entorno KNOWGATE_PROFILES Tener creado el modelo de datos 2. hipergate. Se utiliza para generar copias clónicas de los dominios. en minúsculas) Cuenta de usuario avanzado del dominio modelo de la base de datos. Se recomienda proteger el directorio /admin con autentificación básica del servidor web una vez finalizada la instalación inicial. Ejecutar el Asistente de Instalación Para iniciar hipergate básicamente existen tres requisitos: 1. administrator@hipergate-model.jsp?profile=hipergate.Nótese que la base de datos debe estar creada con juego de caracteres UTF-8 y que no es suficiente con hacer un GRANT ALL PRIVILEGES ON knowgate. areas de trabajo y usuarios que pueden acceder a la aplicación a nivel global. El Asistente de Instalación que se encuentra en http://servidor:puerto/admin/setup. h. en minúsculas) . j.com (password hipergate) Cuenta de administrador del sistema completo de hipergate. administrator@hipergate-system.cnf para inidicar a la aplicación a qué base 3. Áreas de Trabajo y Usuarios lea el Manual de Usuario. i. Configurar las propiedades del archivo hipergate. El sistema de carga de base de datos genera una serie de usuarios y contraseñas por defecto. en minúsculas) Cuenta de usuario ordinario del dominio modelo de la base de datos.* ya que esto no otorga el privilegio de SUPER que es requerido durante el proceso de creación inicial del modelo de datos para crear triggers.cnf. Gestiona los dominios. Se utiliza para generar copias clónicas de los dominios. aparecerá una pantalla con el driver y cadena de conexión JDCB y un mensaje de éxito. superuser@hipergate-model.com (password model. aunque se recomienda cambiar su contraseña por defecto.com (password model.htm Una vez finalizada su ejecución el asistente de instalación salta automáticamente a la pantalla de inicio de sesión de la aplicación. Pruebas adicionales de conexión y acceso Una la siguiente URL: Si todo funcionó correctamente. user@hipergate-model. de datos debe conectarse. guest@hipergate-model. vez cargada la base de datos.com (password model. hipergate tiene dos dominios reservados con 5 usuarios que deben conservarse. Es preciso dar permisos de escritura al usuario que ejecute el servidor web sobre el directorio /tmp o /C:\TEMP o cualquier otro que se designe como directorio temporal en el archivo hipergate. Puede acceder a la aplicación de ejemplo a través de la URL: http://myserver/login. en minúsculas) Cuenta de administrador del dominio modelo de la base de datos.

en mayúsculas) [administrator|superuser|user|guest]@hipergate-demo. Cada dominio (test. HttpBlobServlet y HttpQueryServlet. • • • [administrator|superuser|user|guest]@hipergate-test.http.xml: <servlet> <servlet-name>HttpBinaryServlet</servlet-name> <servlet-class>com.com (password DEMO.xml para configurar los parámetros de los servlets del paquete com. Se utiliza para generar copias clónicas de los dominios. es conveniente revisar el contenido del archivo /WEBINF/web.knowgate.com (password TEST.http. Configuración de servlets Tras ejecutar el Asistente de Instalación. en mayúsculas) k.com (password REAL. en mayúsculas) [administrator|superuser|user|guest]@hipergate-real. demo y real) se puede emplear en los procesos de prueba. el proceso de instalación genera tres dominios de pruebas para que los usuarios puedan empezar a trabajar con la aplicación directamente.Cuenta de usuario invitado del dominio modelo de la base de datos. Este usuario no tiene permisos de escritura en la aplicación. Adicionalmente.HttpBinaryServlet</servlet-class> <init-param> <param-name>jdbcDriverClassName</param-name> <param-value></param-value> </init-param> <init-param> <param-name>jdbcURL</param-name> <param-value></param-value> </init-param> <init-param> <param-name>dbUserName</param-name> <param-value></param-value> </init-param> <init-param> <param-name>dbUserPassword</param-name> <param-value></param-value> </init-param> <init-param> <param-name>id_product</param-name> <param-value></param-value> </init-param> <init-param> <param-name>id_location</param-name> <param-value></param-value> </init-param> <init-param> <param-name>id_category</param-name> <param-value></param-value> </init-param> <init-param> <param-name>id_user</param-name> . aceptación y producción de cambios en la aplicación. Para ello agregar las siguientes líneas al archivo web.knowgate. Deben estar creados los servlets: HttpBinaryServlet.

HttpQueryServlet</servlet-class> <init-param> <param-name>jdbcDriverClassName</param-name> <param-value></param-value> </init-param> <init-param> <param-name>jdbcURL</param-name> <param-value></param-value> </init-param> <init-param> <param-name>dbUserName</param-name> <param-value></param-value> .knowgate.knowgate.http.<param-value></param-value> </init-param> </servlet> <servlet> <servlet-name>HttpBLOBServlet</servlet-name> <servlet-class>com.http.HttpBLOBServlet</servlet-class> <init-param> <param-name>jdbcDriverClassName</param-name> <param-value></param-value> </init-param> <init-param> <param-name>jdbcURL</param-name> <param-value></param-value> </init-param> <init-param> <param-name>dbUserName</param-name> <param-value></param-value> </init-param> <init-param> <param-name>dbUserPassword</param-name> <param-value></param-value> </init-param> <init-param> <param-name>nm_table</param-name> <param-value></param-value> </init-param> <init-param> <param-name>nm_field</param-name> <param-value></param-value> </init-param> <init-param> <param-name>pk_field</param-name> <param-value></param-value> </init-param> <init-param> <param-name>pk_value</param-name> <param-value></param-value> </init-param> <init-param> <param-name>bin_field</param-name> <param-value></param-value> </init-param> </servlet> <servlet> <servlet-name>HttpQueryServlet</servlet-name> <servlet-class>com.

driver.SQLServerDriver} URL de acceso a la base de datos (igual que la propiedad dburl del archivo cnf correspondiente) Usuario de base de datos (igual que la propiedad dbuser del archivo cnf correspondiente) Clave del Usuario (igual que la propiedad dbpassword del archivo cnf correspondiente) jdbcDriverClassName oracle.jdbc.postgresql.Driver | com.microsoft.sqlserver.</init-param> <init-param> <param-name>dbUserPassword</param-name> <param-value></param-value> </init-param> <init-param> <param-name>queryspec</param-name> <param-value></param-value> </init-param> <init-param> <param-name>columnlist</param-name> <param-value>*</param-value> </init-param> <init-param> <param-name>where</param-name> <param-value></param-value> </init-param> <init-param> <param-name>orderby</param-name> <param-value></param-value> </init-param> <init-param> <param-name>showas</param-name> <param-value>XLS</param-value> </init-param> </servlet> <servlet-mapping> <servlet-name>HttpBinaryServlet</servlet-name> <url-pattern>/servlet/HttpBinaryServlet</url-pattern> </servlet-mapping> <servlet-mapping> <servlet-name>HttpBLOBServlet </servlet-name> <url-pattern>/servlet/HttpBLOBServlet</url-pattern> </servlet-mapping> <servlet-mapping> <servlet-name>HttpQueryServlet</servlet-name> <url-pattern>/servlet/HttpQueryServlet</url-pattern> </servlet-mapping> Configuración de múltiples instancias de hipergate en la misma máquina Todos los parámetros por defecto de los servlets pueden dejarse en blanco excepto si se utilizan varias instancias de hipergate en la misma máquina. en cuyo caso es preciso especificar valores pordefecto de la siguiente forma: Nombre de la clase Java del driver JDBC {org.jdbc.OracleDriver | jdbcURL dbUserName dbUserPassword .

dataobjs.cnf com.cnf: demo.3 El driver de Oracle que se suministra con la build sólo sirve para la versión 11g El driver de SQL Server que se suministra con la build sólo sirve para el Service Pack 2 de SQL Server 2005 hipergate 4 no funciona con Microsoft SQL Server 7. n.0 y no puede modificarse fácilemnte para que funcione hipergate 4 no funciona con Oracle 8.dataobjs.jsp debe ser: <jsp:useBean id="GlobalDBBind" class="com.cnf devel.cnf test.DBPortal com. Múltiples instancias de hipergate en el mismo servidor Es posible utilizar varias instancias de hipergate corriendo contra diferentes bases de datos en el mismo servidor.DBTest Por consiguiente para utilizar el archivo de propiedades test.cnf portal. BeanShell se utiliza durante el proceso inicial de creación de la base de datos con ModelManager. Se puede usar hipergate con JBoss si se carga el modelo de datos con alguna de las exportaciones binarias.knowgate. Se debe reemplazar la clase com.DBBind en dbbind.knowgate. Para usar un archivo de propiedades diferente de hipergate. Incompatibilidades conocidas Versión 4.l. aunque no es muy difícil modificarla para que funcione hipergate 4 no funciona con versiones de MySQL anteriores a la 5.DBDevel com.cnf. devel.0. Java BeanShell 2.knowgate.cnf real.cnf. portal.cnf.jsp por la subclase apropiada para cada archivo de propiedades: demo. Todos los archivos de propiedades para todas las instancias deben colocarse en el mismo directorio.knowgate.knowgate.cnf.1 o.knowgate.jsp.dataobjs. Herramientas de Administración Consulta SQL .dataobjs.knowgate.dataobjs.cnf pero con nombre distinto.DBReal com.cnf el contenido de dbbind. Descargas Adicionales • • • • • • Drivers JDBC para PostgreSQL MySQL Connector/J 5.cnf hay que editar include de JSP situado en /web/methods/dbbind. La versión pública de hipergate viene preparada para trabajar con 5 archivos de propiedades adicionales además de hipergate.0b1 no es compatible con JBOSS 4.0 Drivers JDBC para Oracle Oracle Instant Client Microsoft SQL Server 2000 JDBC Driver SP3 Microsoft SQL Server 2005 JDBC Driver 1.DBDemo com. real.0. Cada instancia requiere el uso de un archivo de propiedades propio igual que hipergate.0 • • • • • • • El driver de PostgreSQL que se suministra con la build sólo sirve para la versión 8.dataobjs.DBTest"/> scope="application" m.dataobjs. por defecto /etc o C:\WINNT o el que se especifique en la variable de entorno KNOWGATE_PROFILES.cnf y test.

cnf y no en otros archivos de propiedades.0.1:5432/hgoltp8t</connection-url> <!-.zip en vez de hipergate-xx-src.x.xml for para la base de datos que se vaya a utilizar.Clase del driver --> <driver-class>org. Instalación sobre JBoss Contribuido por Nam Tu nguyen • • • • • • • • • • • • • • • • • • Usar el archivo etiquetado hipergate-xx-war.htm.Usuario y Contraseña --> <user-name>knowgate</user-name> <password>knowgate</password> <security-domain>PostgreSqlDbRealm</security-domain> <metadata> <type-mapping>Postgre SQL</type-mapping> </metadata> </local-tx-datasource> .0. Se recomienda deshabilitar cualquer acceso a esta herramienta por parte de los usuarios finales. Permite lanzar uno o varios comandos SQL con el delimitador seleccionado por el susuario y recoger el conjunto de resultados de una consulta. Esta utilidad se conecta por defecto siempre contra la base de datos especificada en hipergate.jsp Valor de las variables de entorno Pueden inspeccionarse llamando a la página /admin/environment.cnf Copiar los drivers JDBC y la librería hipergate-x.zip Crear el modelo de datos usando un volcado binario en lugar de utilizando el Asistente de Instalación. Java BeanShell (necesario para ejecutar el asistente) no funciona bien sobre JBoss 4.html p.postgresql. Por ejemplo si es PostgreSQL podría ser postgre-ds. Configurar manualmente hipergate. Estado del pool de conexiones Puede consultarse llamando a la página /admin/connectionpool.jsp Valor de las cookies de sesión Pueden leerse llamando a la página /admin/viewcookies.Driver</driver-class> <!-.jar a %JBOSS_HOME%/server/default/lib/ Crear una conexión para JBoss en %JBOSS_HOME%/server/default/deploy/ Hacer una copia de hsql-ds. de modo que tenga mucho cuidado en su uso cuando maneje varias instancias diferentes de hipergate en el mismo servidor ya que podría conectarse a la instancia equivocada.xml como: <local-tx-datasource> <jndi-name>KnowgateDS</jndi-name> <connectionurl>jdbc:postgresql://127.0.xx.Existe una herramienta de consulta directa por SQL contra la base de datos en /admin/sql.

ni nada.xml.1. mbean.cnf contiene la siguiente información (NOTA. UNIX=1.30:5432/test schema= dbuser=postgres dbpassword=postgres # [Pool de conexiones] # Parámeteros que gobiernan el comportamiento del pool de conexiones de hipergate poolsize=32 maxconnections=100 logintimeout=20 connectiontimeout=60000 connectionreaperdelay=30000 # [Acceso a Ficheros] # Directorio para archivos temporales temp=/tmp # Acceso a ficheros por parte del servidor # Modo de acceso a ficheros (PUREJAVA=0. host.cnf El archivo hipergate.Driver dburl=jdbc:postgresql://192. se utilizan por claridad): # [Base de Datos] # Parámetros de conexión a la base de datos driver=org. • • Copy hiperweb. Apéndice 1: Propiedades de hipergate. usuario y contraseña de acceso a los siguientes recursos fileprotocol=file:// fileserver=localhost fileuser= filepassword= # Directorio raíz de almacenamiento privado storage=$CATALINA_HOME/webapps/storage # Directorio para almacenar tareas de borrado shelldir=/tmp # Directorio raíz de almacenamiento público workareasput=$CATALINA_HOME/webapps/hipergate/workareas # URL raíz de almacenamiento público workareasget=http://hostname:8080/workareas # Tamaño máximo de fichero (bytes) . tan sólo hay que modificar /default/conf/login-config.postgresql. las variables $CATALINA_HOME no son válidas en este fichero.war to /server/default/deploy Abrir http://localhost/hiperweb/ q.No se requiere un servicio. WINDOWS = 2) javamode=0 # URL raíz de la aplicación web webserver=http://hostname:8080 # URL raíz al servidor de imágenes opcional imageserver=http://hostname:8080/images # Protocolo.168.

1" o "localhost".LDAPNovell A continuación se describe cada uno de los parámetros y su función driver Nombre del driver JDBC.yourserver.dc=org ldapuser=cn=Manager.outgoing=smtp.jdbc.DatabaseName=nombre_bbdd (SQL Server 2000) • jdbc:sqlserver://nombre_host:1433.sqlserver.SQLServerDriver (SQL Server 2005) Cadena de conexión JDBC a la base de datos: • jdbc:postgresql://host_name:5432/nombre_bbdd (PostgreSQL) • jdbc:mysql://host_name/nombre_bbdd (MySQL) • jdbc:oracle:thin:@nombre_host:1521:oracle_sid (Oracle) • jdbc:microsoft:sqlserver://nombre_host:1433.yourserver.jdbc.maxfileupload=10485760 # [Miscelánea] # ¿Realizar validación XML de documentos? setXMLValidation=1 # Número de hilos del planificador de tareas maxschedulerthreads=1 # [WebMail] # Poner los nombres de los protocolos en minúsculas mail.Driver (MySQL) oracle.jdbc.postgresql.protocol=smtp mail. Puede ser el usuario propietario de las tablas.forName: • • • • • dburl org.microsoft.SelectMethod=curs or.Databas eName=nombre_bbdd (SQL Server 2005) La cadena de conexión contiene siempre al menos el nombre o direcció IP del servidor (host) el puerto y el nombre de la base de datos.SQLServerDriver (SQL Server 2000) com. Si el servidor web y la base de datos están en la misma máquina el host es "127.0.mysql.com mail.incoming=pop3.0.user= # LDAP ldapconnect=ldap://127.com mail.ldap.0.Driver (PostgreSQL) com. schema Esquema de la base de datos. En PostgreSQL dejar este parámetro en blanco excepto si se experimentan problemas de acceso a la tabla sql_features en cuyo caso la propiedad schema debe ser public. • • dbo (SQL Server) HIPERGATE (Oracle) .jdbc.knowgate.store.transport.SelectMethod=cursor. Dejar en blanco también para MySQL.microsoft.OracleDriver (Oracle) com.protocol=pop3 mail.1:389/dc=hipergate.dc=org ldappassword=manager ldapclass=com.dc=hipergate.sqlserver.0.driver. según se utilizaría en la función Class.

Mientras que el modo PUREJAVA mantiene la compatibilidad entre plataformas.DD. Se utiliza para componer las URLs relativas y absolutas a cada módulo de la aplicación. • • • http://server:port/webapp http://myserver:8080/ http://localhost:7001/hipergateWeb (ejemplo con WebLogic) imageserver URL al servidor de imágenes opcional.• public (PostgreSQL) dbuser/dbpassword Usuario y contraseña de conexión a la BB. en segundos. via JDBC. etc) pueden ubicarse en un servidor separado. los modos nativos proporcionan un acceso a ficheros mucho más eficaz. El valor por defecto para este parámetro es 32.DriverManager. Esta opción solo es útil cuando el .mycompany. En WebLogic bajo Windows se debe utilizar el modo PUREJAVA.io).getConnection(). iconos. • • • http://images. • • /tmp (Linux) C:\\TEMP (Windows) javamode Modo de trabajo con el sistema de ficheros del servidor. temp Directorio temporal para la aplicación. Todas las imágenes estáticas de la aplicación (pantallas. Una conexión sólo puede permanecer en el pool sin ser utilizada por un máximo de 5 minutos. NFS o directorios montados directamente en el servidor. no soportado) fileserver Nombre del servidor que contiene el repositorio de ficheros. Los modos 1 y 2 (UNIX y WINDOWS) utilizan comandos del sistema para realizar las mismas acciones. El modo 0 (PUREJAVA) accede al sistema de archivos a través del API de Java (java. se deshabilita el pool y cada conexión se obtiene llamando directamente al método java. Si este parámetro se pone a cero. o dejarse en un subdirectorio dentro del mismo servidor. Tras este periodo de inactividad todas las conexiones no usadas se cierran y el tamaño del pool se reduce eventualmente a cero. para obtener una conexión a la base de datos.com/hipergate http://myserver:8080/images http://localhost:7001/hipergateWeb/images (ejemplo con WebLogic) fileprotocol hipergate puede acceder a los ficheros almacenados de distinas maneras: por FTP. El valor por defecto es 20. En él se almacenan los archivos de subida (upload) y algunos archivos de generación temporal. En este parámetro se establece el protocolo de acceso al repositorio de ficheros. • • • file:// (ficheros locales) ftp:// (acceso por FTP) nfs:// (acceso por NFS.sql. poolsize Número de conexiones que permanecerán abiertas en el pool en espera de ser utilizadas. maxconnections Número máximo absoluto de de conexiones que se pueden abrir contra la base de datos. logintimeout Tiempo máximo de espera. webserver URL completa a la raíz de la aplicación web.

Para cada elemento a borrar.protocolo de acceso fileprotocol es distinto de file://. • • /workareas /hipergateWeb/workareas maxfileupload Tamaño máximo (en bytes) de fichero que se permite subir a la aplicación setXMLValidation Activar las trazas de validación de XML al fusionar las plantillas XSLT de los módulos webbuilder y mailings.incoming Servidor de recepción de correo POP3 (por defecto localhost) . se añade una linea al fichero cleanup. maxschedulerthreads Número máximo de hilos (threads) que arranca el planificador de ejecución. Actualmente solo se utiliza para acceso por FTP. website o cuenta de acceso hay que borrar todos los directorios relacionados con este objecto.txt con la ruta completa al directorio a borrar. • • • (Windows 2000) $CATALINA_HOME/webapps/storage /vol/1/hipergate_storage C:\\bea\\weblogic81\\samples\\workshop\\hipergate\\storage shelldir Algunos contenedores de servlets (sobre todo Tomcat) bloquean ficheros y directorios.protocol Transporte que se utilizará para enviar mensajes de correo electrónico (por defecto smtp) mail.transport.store.com (acceso por FTP) fileuser/filepassword Nombre de usuario y contraseña utilizados para el acceso a repositorios remotos. • • • /tmp $CATALINA_HOME/webapps/shell C:\\BEA\\weblogic81\\samples\\workshop\\hipergate\\shell (Windows 2000) workareasput Directorio raíz de almacenamiento público. visible a través de web. Se puede crear un script que lea este fichero y borre cada directorio y añadirlo como una tarea programada (cronjob) o ejecutarlo cada vez que se rearranca el servicio. storage Directorio raíz de almacenamiento privado de usuarios. • $CATALINA_HOME/webapps/hipergate/workareas • /vol/1/hipergate_workareas • C:\\BEA\\weblogic81\\samples\\workshop\\hipergate\\hipergateW eb\\workareas (Windows 2000) workareasget URL absoluta para acceder al directorio workareasput. pero Java impide este borrado y por tanto hay que crear una tarea que borre los directorios desde fuera del contendor de servlets. • • localhost (ficheros locales) ftp-server. mail. plantillas y scripts de ejecución SQL (QBF). o bien en otro directorio. Puede estar dentro de la raíz del servidor web. Si desea eliminar una newsletter.protocol Protocolo de almacenamiento de correo electrónico (por defecto pop3) mail.domain.

Copiar h4mssql2005. añadir h4mssql2005. Oracle 10g/XE 1.outgoing Servidor de envío de correo SMTP (por defecto localhost) r. Escribir la siguiente sentencia desde la línea de comandos: IMP system/manager fromuser=HIPERGATE touser=HIPERGATE buffer=128000 commit=yes ignore=yes file=h4orclxe. usuario y contraseña disponibles en el fichero de configuración. Creación de la base de datos con la clase Java ModelManager Para utilizar una base de datos primero debe comprobar que dispone del driver JDBC correspondiente y que lo ha configurado en el fichero hipergate. Restaurar la BB. seleccionar "From Device". El proceso de carga de base de datos de hipergate utilizará los parámetros de conexión. ejecute el . # grant usage on language c to knowgate.dmp Microsoft SQL Server 2005 1.mail.DUMP: # pg_restore -d hipergate4 h4pgsql83.x 1. hacer: # update pq_language set lanpltrusted=true where lanname='c'.backup Si se encuentran problemas de permisos accediendo al lenguaje c. Crear una base de datos Unicode: # createdb -E UNICODE hipergate4 Crear un nuevo usuario: # createuser knowgate # grant all on database hipergate4 to knowgate 2. desde el fichero H3PGSQL8. 2.. Hacer click con el botón derecho sobre la nueva BB.cnf manualmente e importar los volcados binarios del modelo de datos que hay en el directorio database/ de la distribución. PostgreSQL 8.DD. La base de datos utilizada en el parámetro dburl debe estar creada y vacía antes de ser cargada. seleccionar All Tasks -> Restore Database. Para cargar la base de datos con el modelo básico de trabajo y un juego de datos de ejemplo.cnf.bak a una unidad de disco local.DD. Apéndice 2: Carga manual de la base de datos Creación de la base de datos con volcados binarios En vez de utilizar el Asistente de Instalación es posible configurar el archivo hipergate.bak a la lista de dispositivos y hacer click en OK.

Cuando la aplicación funciona sobre varias máquinas en paralelo.knowgate. valores de remonte.datamodel.sh create database.0.sh. busca todos los paquetes JAR en /opt/tomcat/webapps/hipergate/WEB-INF/lib/ y los añade al CLASSPATH (-cp) del comando java que se ejecuta al final: #!/bin/sh cp=`ls -1 /opt/tomcat/webapps/hipergate/WEB-INF/lib/*. opciones de menú.jar. jakarta-oro-2. Un coordinador HTTP utiliza uno de los servidores web en la granja para coordinar al resto.cnf create database NOTA: Será necesario que en su variable de entorno CLASSPATH se encuentren todas las librerías incluidas en la distribución de hipergate. Si se ponen varios servidores web en pararelo existe la posibilidad de que uno de los servidores actualice en la base de datos información que está locamente cacheada en otro.bsh-2. No es posible pasar información de un cache local a otro.datamodel. xmlParserAPIs.bsf-2. El coordinador en si mismo no almacena ninguna información. Apéndice 3: Configuración de granjas de servidores Introducción hipergate puede funcionar instalado en granjas de servidores. Esta es la configuraci&oacut .siguiente comando (respetando mayúsculas y minúsculas): java [-cp . Cada servidor web de hipergate mantiene un cache local de información de acceso frecuente: claves de usuuente: claves de usuario.hipergate. xercesImpl. El siguiente script puede facilitar esta tarea. La parte cliente está en el paquete com. sino simplemente otorga tickets con fechas de caducidad a los caches locales para coordinarlos entre ellos. La parte servidor puede.knowgate. El coordinador de cache se divide en dos partes: cliente y servidor. El conjunto mínimo de librerías de las incluidas en la distribución para que funcione ModelManager es: beanshell. También hay que incluir el driver JDBC apropiado. a su vez. ser de dos tipos: HTTP o EJB. Por este motivo es necesario instalar un coordinador de caches locales.8. Cuando se actualiza la información en un nodo. se marca como inválida para todos los demás y el resto deben re-cargarla de la base de datos. es necesario habilitar el Coodinador de Cache Distribuido. etc. y ejecutar la sentencia modelmanager..jar.] com.ModelManager $@ Puede guardar el anterior script en /usr/local/bin/modelmanager.knowgate. ibm.jar.hipergate.ModelManager /etc/hipergate. Cada vez que se ejecuta.jar.0b1. s.jar | tr '\n' ':'` java -cp "$cp" com.cache en hipergate.2.jar y es independiente del servidor que se utilice.jar..

el resto de los nodos dejarán de funcionar.jboss.xml añadir: <container-configuration> <container-name>Singleton Stateless SessionBean</container-name> <call-logging>false</call-logging> <container-invoker>org.ejb. si el coordinador cae. Para habilitar el coordinador.jboss.TxInterceptorBMT </interceptor> <interceptor transaction = "Bean" metricsEnabled = "true"> org.ejb.common-client.provider.jboss. Parte Cliente (servidores web) Para utilizar JBoss es preciso instalar librerías adicionales en cada uno de los clientes • • • • • cachecoordinator-jboss30.jar jboss-3.ejb.naming.connectionmanager.plugins.plugins.MetricsInterceptor </interceptor> <interceptor> org.0. escalabilidad y tolerancia a fallos.SecurityInterceptor</interceptor> <!-.jar Parte Servidor (JBoss) En el archivo standardjboss.Un coordinador EJB utiliza un servidor de aplicaciones como JBoss o WebLogic como servidor de tickets para los servidores web cliente.0.plugins.resource.jnp-client.StatelessSessionInstanceInterceptor </interceptor> <interceptor transaction = "Bean"> org.BMT --> <interceptor transaction = "Bean"> org.jboss. Sólo puede haber un coordinador.jar apache.plugins. abrir el archivo de propiedades appserver.CachedConnectionInterceptor .jboss.log4j.ejb.cnf de cada nodo y poner: threetiers=enabled java.jboss. Configuración del coordinador sobre un servidor HTTP Cualquierna de los nodos en una granja de servidores hipergate puede actuar como coordinador del resto.jndi.ejb.jsp Configuración del coordinador sobre un servidor EJB La instalación del coordinador sobre un contenedor de EJBs es más compleja que directamente sobre un servidor web aunque también proporciona mejor rendimiento.jar jboss-3.ProxyFactory</containerinvoker> <container-interceptors> <interceptor>org.plugins.jboss.proxy.LogInterceptor</interceptor> <interceptor>org.url=http://DIRECCION_IP:PUERTO/cache/server.jar sun.ejb.

invocation.jboss.1.HomeInterceptor</interceptor> <interceptor>org. Jakarta Lucene . Para ello: • • • Copiar el JAR al directorio jboss/server/all/deploy. escrito en Java.0.SecurityInterceptor</interceptor> <interceptor>org.jboss.0) El proyecto OROMatcher fue cedido a The Apache Software Foundation y ahora es Jakarta .jboss.jboss.5 Acceso a ficheros basados en el formato de Documento OLE 2 de Microsoft desde Java.2.proxy.SecurityInterceptor</interceptor> <interceptor>org.Java API To Access Microsoft Format Files .0 Parser XML de la Fundación Apache Bean Scripting Framework . Jakarta ORO 2. Apéndice 4: Librerías de terceros J2EE Client .4.2.jar.9.TransactionInterceptor</interceptor> <interceptor>org.invocation.jar (ej.proxy. Java BeanShell .0b4 BeanShell es un intérprete de código fuente de Java con características de scripting.proxy.jboss.plugins. file://C:\jboss\server\all\deploy\cachecoordinatorjboss30.StatelessSessionInstancePool</instance-pool> <instance-cache/> <persistence-manager/> <transaction-manager/> <container-pool-conf> <MaximumSize>1</MaximumSize> <MinimumSize>1</MinimumSize> <strictMaximumSize>true</strictMaximumSize> </container-pool-conf> </container-configuration> Arrancar JBoss y desplegar el archivo cachecoordinator-jboss30.</interceptor> </container-interceptors> <client-interceptors> <home> <interceptor>org.0 Contiene clases J2EE necesarias para el cache distribuido de hipergate Xerces2 Java Parser 2.proxy.0 Un conjunto de clases Java que proporcionan un lenguaje de scripting dentro de aplicaciones Java.3. Jakarta POI .StatelessSessionInterceptor</interceptor> <interceptor>org.jboss.8 (sólo a partir de la versión 2.proxy.jboss.jboss.ejb.ejb.InvokerInterceptor</interceptor> </bean> </client-interceptors> <instancepool>org.proxy.2.jar) t.InvokerInterceptor</interceptor> </home> <bean> <interceptor>org.TransactionInterceptor</interceptor> <interceptor>org. jboss/server/default/deploy o jboss/server/minimal/deploy Abrir la consola de administración de JBoss (http://servidor:8080/jmx-console/ seleccionar el menú "MainDeployer" para desplegar el archivo cachecoordinatorjboss30.4 Jakarta Lucene es un motor de indexación de alto rendimiento escrito en Java.jboss.ejb.

Apéndice 5: Librerías de Depuración La versión estándar de hipergate se distribuye con una librería de depuración llamada hipergatedebug. 6.JiBXException: Unable to access binding information for class com.0 Para actualizar la versión 2.C:\JAR\jibx-bind-1.Menu Para solucionar este error hay que ejecutar el post-compilador de JiBX tras compilar normalmente el proyecto ejecutando: C:\JRE\bin\java -cp C:\JAR\bcel.jar. Actualización manual alternativa Los scripts para alterar un modelo de datos de versión 2.0.hipergate. 4.0) Las librerías LDAP de SUN proporicionan acceso a Novell eDirectory™.1 y actualizarlo a la 3. 7.0 se encuentran en /java/com/knowgate/hipergate/datamodel/updgrade/ Hay que ejecutar el archivo 210-300.ModelManager desde la línea de comandos. u. Esta librería vuelca trazas detalladas de ejecución en el archivo /tmp/javatrc.Compile C:\knowgate\storage\xslt\schemas\menu-def-jixb.4.0 a la misma base de datos de la 2.1. java [-cp .1) JiBX XML binding 1.jar al compilar el proyecto.datamodel.knowgate.jar.jar org.1.jar ya no viene dentro del directorio /WEB-INF/lib como en la 2.xml w.1 reutilizando el hipergate.hipergate.0 en una nueva ubicación en el servidor web. Sun JSR-168 Portlet API 1. Sun JavaMail .0 (sólo desde la versión 2. El archivo hipergate. Apéndice 6: Notas para recompilar los fuentes com. Sun Java Advanced Imaging API .0 (excepto el driver JDBC que se esté usando). El asistente detectará automáticamente la versión anterior y actualizará convenientemente el modelo de datos. 5.runtime. sino descomprimido en el directorio /WEB-INF/classes de la 3.1..hipergate. 2. Hacer una copia de respaldo de la base de datos y de las páginas JSP de la 3. v.jar. 3. Abrir el asistente de instalación en http://servidor/admin/setup.htm.0.knowgate.CacheHttpServlet: Cannot resolve symbol method getContentType() Para solucionar este error incluir la librería /lib/compile/servlet. Esto puede hacerse utilizando la clase com.binding.cnf upgrade 210 300 . org.txt (o C:\javatrc.cnf que ya existiese.datamodel.ORO.0.5 JiBX es un entorno de trabajo para manipular archivos XML usando objetos Java isomorfos.ModelManager /etc/hipergate.1.0 a la 4.3 Las librerías JAI de SUN proporcionan acceso a tratamiento de imágenes en el lado del servidor sin emplear AWT Novell LDAP classes for Java(sólo a partir de la versión 2. OpenLDAP u otros directorios basados en LDAP. Descargar el archivo ZIP comprimido de la 3.txt en Windows).C:\JAR\jibxextras. Actualización desde la versión 3.oreilly.5.jar.ddl para la base de datos correspondiente..1. No se debe utilizar la versión de depuración en sistemas de producción final ya que pueden degradar el rendimiento o llenar el disco.jibx. Cambiar todas las librerías del /WEB-INF/lib de la 3.C:\JAR\xpp3.knowgate.jibx.0 efectuar los siguientes pasos : 1.1.servlet. Apuntar la instancia de 3. Instalar las páginsa JSP de la 3.] com.1 a la 3.0 El API de JavaMail proporciona un conjunto de clases para el acceso a un sistema de correo.0 por las de la 4.

Este error es debido a que la seguridad de servidor no permite hacer relay de correo. Ver http://java. you need the SUPER privilege for this operation Durante la creación inicial del modelo de datos.cnf MySQL MessagingException Illegal mix of collations for operation 'UNION' Esto es debido a que la base de datos ha sido creada con juego de caracteres LATIN1 (u otro) en vez de UTF8. Ejecutar el GRANT según se especifica en la sección de creación de usuarios para MySQL de esta guía.cnf. SET AUTOCOMMIT TO OFF is no longer supported La versión del driver JDBC no coincide con la de la base de datos.smtp. Ver http://forum.mail.1 Unable to relay for . Busque en los foros públicos para obtener información adicional sobre problemas con la instalación.java.sun.sun.ddl General Posted content length of XXX exceeds limit of YYY Aumentar el valor en bytes de la propiedad maxfileupload en hipergate.SMTPAddressFailedException: 550 5.k_sp_prj_cost does not exist Desde una herramienta de consulta SQL volver a crear sobre el propietario adecuado (típicamente dbo o db_accessadmin) la función Transact/SQL k_sp_prj_cost cuyo código fuente puede encontrarse en java\com\knowgate\hipergate\datamodel\procedures\mssql\projtrack..7.html#norelay No provider for SMTP Escribir el nombre del protocolo smtp en minúlas en la propiedad mail.mail. ERROR: function k_sp_autenticate("unknown". Debe activar el lenguage PL/pgSQL ANTES de iniciar la creación del modelo de datos con el asistente de instalación.smtp. SQL Server FUNCTION dbo.com/products/javamail/FAQ. "unknown") does not exist.com/thread.7. Diagnóstico de Problemas JavaMail com..sun.cnf y reiniciar el servidor web para que coja los cambios. Access denied.protocol de hipergate. PostgreSQL Impossible to get connection to the database relation "sql_features" does not exist Pruebe a establecer la propiedad schema=public en hipergate.transport.x. . that domain isn't in my list of allowed rcpthosts (#5.jspa?threadID=586817&tstart=0 com. The authentication service is temporaly unavailable.SMTPAddressFailedException: 553 sorry.sun.1) Este error suele ser debido a que el servidor de correo requiere autentificación al enviar.