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.

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

Diseño y Tecnología: a. Una vez realizado el pago el usuario puede empezar a trabajar con las aplicaciones contratadas. Integración con Office hipergate reconoce e indexa documentos Office. Entorno intuitivo y fácil de manejar Cada aplicación es fácilmente accesible desde un menú principal de pestañas. Auto-administrable por el usuario final hipergate suministra un modelo de administración predefinido basado en 4 perfiles de usuario: administrador. 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. empresa o departamento. Las aplicaciones pueden activarse o desactivarse en caliente de forma particular para cada cliente. creando así una base de usuarios que utilicen el software constantemente. 4. SQL Server. superusuario. Soporte en todas las plataformas y bases de datos comunes hipergate funciona indistintamente sobre Linux o Windows.Ningúte otro producto libre sobre plataforma Java ofrece un conjunto de funcionalidades tan amplio como hipergate. a los que se asocia unas operaciones que pueden hacer sobre su información de forma muy parecida a como funciona el sistema operativo. La suite está orientada a facilitar el trabajo diario. usuario e invitado. 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 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. de manera que puedan derivar todos sus procesos informáticos hacia la plataforma. Aplicaciones independientes pero sinérgicas Cada aplicación de la suite puede funcionar de forma independiente o junto con las otras aplicaciones. . Solución Integral hipergate está concebido y pensado tanto en profesionales independientes como en empresas. 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. El administrador de la instancia concreta. Se fijaron una serie de requisitos y prioridades que el producto debía cumplir estrictamente. El interface con el usuario está diseñado para ser homogéneo y de esta forma de fácil y rápido aprendizaje. y sobre Oracle. Registro rápido y a trabajar Al usuario se le da opción de que pruebe la herramienta durante un periodo de tiempo. PostgreSQL o MySQL. permite cargar y exportar datos a Outlook Express y generar consultas en formato Excel.

El código Java dispone de 3 modos de ejecución: 100% Java Puro.Ergonomía y Usabilidad La primera prioridad del producto es que cada parte proporcione una buena experiencia de usuario. según se configure explota las llamadas atómicas de cada sistema operativo para obtener el mejor rendimiento. 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. 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. Por último. Una parte de la lógica de proceso emplea procedimientos almacenados PL/SQL. Cada nuevo módulo es meticulosamente testeado en sucesivos walkthroughts de código. 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. 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. 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. Esto se consigue mediante: • • • • • arquitectura de información homogénea a través de todos los módulos. pruebas de caja negra y pruebas de stress en condiciones críticas. La aplicación está diseñada en 3 capas: servidor web. 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. PL/pgSQL o Transact-SQL reescritos manualmente para aprovechar al máximo las opciones más avanzadas de cada SGBDR. Estabilidad La suite es un producto pensado para tener disponibilidad 24x7. 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 . fácil acceso a todas las funcionalidades. completitud en la gama de operaciones disponibles. tiempos de respuesta rápidos para todas las operaciones. servidor de aplicación y servidor de base de datos. la aplicación funciona sin sesiones ni estados mantenidos en el lado servidor. modelo conceptual sencillo. Alcance Funcional La suite está pensada para cubrir el 80% de las necesidades más típicas de cada módulo funcional. Unix y Win32. Tolerancia a Fallos La aplicación puede configurarse para funcionar en clustering tanto con los servidores web como con la base de datos. y. Para reducir el consumo de memoria y aumentar la capacidad de servicio de cada servidor web. El diseño hace énfasis en la capacidad para crear granjas y repartir la carga entre múltiples servidores.

3. etc. Componentes y Plataformas Utilizados Java y Tomcat Todos los módulos de hipergate están escritos en 100% Java Puro. Muchas de las tareas rutinarias de codificación: generación de formularios. 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. tablas de remonte.6. Tecnología Estándar Sólo se emplean componentes y tecnologías de uso muy común en el mercado. Solaris.2 . es el uso racional de la CPU y el disco que se consideran recursos escasos.5 Jakarta ORO 2.1a con Java 1.1.1.4 y Tomcat 5. El software puede correr en cualquier versión de la máquina virtual desde la 1.1.27 con Java 1.2 Xalan XSLT Processor 2.2.2 JavaMailTM 1. BSD. ya están resueltas de forma estándar en componentes reutilizables. Lenguajes.6. validación de datos.2 Enterprise DT Ltd Java FTP Library 1.2 JavaTM Advanced Imaging 1. Además se aboga por el uso exclusivo de plataformas con respaldo explícito para su continuidad de las grandes empresas del sector. AIX o Windows 2000. como requisito imprescindible para poder dar servicio ASP.1. La versión 1. Tomcat 4. Otro factor. • • • JavaBeansTM Activation Framework 1.8 Xerces2 XML Java Parser 2. 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.0.8 a la 1.3 Jakarta POI 2.2 Componentes utilizados bajo licencia de SUN Microsystems Inc. b. Componentes utilizados bajo licencias Open Source • • • • • • Jakarta Bean Scripting Framework 2.3.5. Simplicidad A pesar de su amplio alcance técnico y funcional. No obstante.5 con Java 1.0 de hipergate ha sido testeada sobre Tomcat 3. La máquina que aloje el servidor web debe ser Linux. gestión de fechas. 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.suave.0. la suite está diseñada y codificada para ser muy simple parte por parte.

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

sin posibilidad de modificarlas. Sin embargo.• • • á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. Esto reduce el tráfico de red y aligera la carga sobre la 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. Este vendedor podría crear nuevas fichas de clientes o generar oportunidades comerciales en el área de trabajo de ventas. El uso principal de los dominio es establecer los límites de asignación de permisos para cada administrador. 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. Modelo de Seguridad . 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. Típicamente representa una entidad cliente completa. pero no puede ver ni alterar los datos de otras entidades clientes en dominios diferentes. Dominios Conceptualmente. y. yendo un paso más lejos. no existe el concepto de identificador de la sesión actual. al mismo tiempo invitado del área de trabajo del departamento de soporte técnico. Las áreas de trabajo suelen representar departamentos funcionales en las entidades cliente. el Dominio de hipergate es la unidad de mayor nivel de división de datos. la división de datos y permisos de acceso puede llegar a nivel departamental. un vendedor podría ser usuario del área de trabajo del departamento de ventas. profesionales independientes que contratan una cuenta de uso personal). Toda la información de estado se transfiere de una página a otra mediante métodos GET o POST de HTTP. Caches El sistema utiliza un cache distribuido que permite almacenar información de la base de datos de forma local en los servidores web. f. Las áreas de trabajo forman los compartimentos estancos de información. Por ejemplo. 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. aunque otro uso común es usarlo como contenedor de usuarios individuales no adscritos a ninguna entidad (por ejemplo. incluso. 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. puede crear nuevos usuarios o activar y desactivar aplicaciones dentro de su dominio. 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. para mantener el requisito indispensable de la separación de datos por cliente. e. incluso aunque dicha información se encontrase previamente almacenada en una base de datos compartida. Áreas de Trabajo Cada Dominio puede contener una o más Áreas de Trabajo. consiguiendo que las personas de un departamento tengan acceso a un conjunto de datos y aplicaciones diferente de los de otro departamento. Así el administrador de una entidad cliente.

Las cuentas corporativas permiten un número arbitrario de usuarios y están asociadas a su propio dominio. Las cuentas profesionales representan usuarios individuales que no pueden hacer uso de las funcionalidades de trabajo en equipo de la aplicación. Por ejemplo. superusuario. Es preciso asignar un rol al grupo dentro de una aplicación y área de trabajo para que los usuario adquieran el rol deseado. Existen 3 tipos de cuenta predefinidas: la cuenta corporativa. Estos roles marcan lo que el usuario puede hacer en cada aplicación. 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. 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. Usuario Rol Grupo Diagrama ilustrativo del modelo de seguridad . 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. Cada dominio contiene una o varias áreas de trabajo. El modelo maneja los siguientes conceptos: Aplicación El producto funciona como un conjunto de aplicaciones interoperables.hipergate implementa un modelo de seguridad a nivel de sesión basado en roles. Cada dominio tiene uno o más administradores. Se pueden añadir o quitar aplicaciones sin afectar al funcionamiento del resto del sistema. Así. una en Madrid y otra en Barcelona. pero no crear nuevos clientes. Se dispone de cuatro roles predefinidos más un quinto definible por entidad cliente: administrador. Se permite crear un número ilimitado de usuarios cada uno con su propio conjunto de roles y clave de acceso. El área de trabajo es una entidad que sirve para establecer la visibilidad de conjuntos de datos en la aplicación. invitado y variable. Es posible definir un número arbitrario de grupos. En un momento dado. Los grupos en si mismos no otorgan roles a los usuarios. 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. la cuenta profesional y la cuenta de sistema. En este caso se crearía un dominio para la empresa y un área de trabajo para cada delegación. supongamos que la entidad cliente es una empresa con dos delegaciones. Dominio Área de Trabajo Un dominio representa un conjunto de usuarios que se administran de forma independiente. usuario. Cada usuario pertenece a uno a más grupos. Cuenta Una cuenta es lo mismo que un contrato de uso con un cliente final.

Es importante pesar de antemano dónde se ubicarán los siguientes archivos: • • • • La base de datos.16 (o superior) o PostgreSQL 8.js b. c. 1. Los directorios /storage y /web/workareas. Microsoft SQL Server 2005/DE or Oracle 10g/XE o MySQL 5. en copiar las páginas JSP y los archivos . Para que hipergate funcione es necesario haber pre-instalado (al menos) Java 1.htm para iniciar el asistente de instalación. Configurar /WEB-INF/web.x.x-aa..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.jar en el servidor web y lanzar el asistente de web de instalación. de forma que no colisionen con otros ya instalados (por defecto en WEB-INF/lib). 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. Los . Tomcat) y un gestor de base de datos. 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. Copiar todos los archivos del directorio /web o /web al servidor web. 7. 6.Manual de Instalación para la Versión 4. 3. 5. /storage y /web/workareas son dos directorios que pueden crecer indefinidamente según se suban archivos a la aplicación. 2. Abrir la página http://servidor:puerto/admin/setup..x.0.0 a.BaseUrl en el archivo /fckeditor/js/fck_config. Requisitos Sistema Operativo Linux o Windows .4. Para los impacientes.jar.0. 4. básicamente. Las páginas JSP de hipergate.6 (o superior) o Tomcat 6. Copiar el directorio /storage en cualquier sitio fuera del árbol del servidor web. que es donde se almacenan los archivos manejados por hipergate que no residen en la base de datos. en una unidad con espacio suficiente. Descargar y descomprimir hipergate-4.zip en cualquier parte. un contenedor de servlets (ej. Planificar la instalación La instalación de hipergate consiste.

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

Contenidos del directorio web .

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. Tome nota de la configuración y URLs donde instala las JSP.BaseUrl en el archivo /fckeditor/js/fck_config. como: http://localhost:8080/ Si se desea instalar hipergate en un directorio por debajo del raiz.0 .js Instalación sobre Tomcat 6. Se recomienda instalar hipergate justo debajo de la raiz del dominio utilizado.Contenidos del directorio storage e. hay que modificar el valor de la variable config. puesto que las necesitará más adelante en el Asistente de Instalación. Debe tener configurado un motor de servlets/JSP en el servidor.

es necesario configurar una serie de entradas en el fichero web/WEBINF/web. /> className="org.encoding.CompileException: /common/desktop.DD. Es necesario indicar a Tomcat que debe esperar archivos fuente Unicode estableciendo el parámetro -Dfile.jsp Cannot read file: ze file al arrancar la aplicación.compiler..encoding=UTF-8 en la variable de entorno CATALINA_OPTS.cnf Establece la cadena de conexión a la BB. igual que el parámetro driver de hipergate.tomcat4.knowgate. Para recoger archivos desde la BB.. igual que los parámetros dbuser/dbpassword de hipergate.Puede instalar una copia de Apache Tomcat en el directorio /opt/tomcat/.apache.catalina.apache.http (HttpBinaryServlet.DD.apache.cnf Los parámetros de conexión a la base de datos para los servlets del paquete com.coyote. HttpBLOBServlet y HttpQueryServlet) pueden especificarse en el archivo dbUserName/dbUserPassword .tomcat4.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. Compruebe la siguiente línea en su archivo $CATALINA_HOME/conf/server.coyote.logger. Para cada unos de los servlets (HttpBinaryServlet. es posible que se produzca un error del estilo org.xml: <Connector port="8080" . HttpBLOBServlet y HttpQueryServlet) hay que configurar los siguientes parámetros: jdbcDriverClassName jdbcURL Establece el driver de acceso a BB.CoyoteConnector" Puede crear un nuevo <Context> para hipergate o utilizar uno existente. Por ejemplo.DD.. y configurarla para que escuche peticiones a través de HTTP en el puerto 8080 (configuración por defecto). Si no se especifica el parámetro file...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.cnf Establece el usuario y contraseña de acceso a la BB." suffix=".xml instalado.xml de la siguiente forma: <Server port="8005" shutdown="SHUTDOWN" debug="0"> <Service name="Tomcat-Standalone"> <Connector className="org.DD.jasper.apache. 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. igual que el parámetro dburl de hipergate.FileLogger" prefix="hipergate_log. Servlets hipergate incluye tres servlets para la descarga de archivos desde el directorio privado storage.

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

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

aparecerá una pantalla con el driver y cadena de conexión JDCB y un mensaje de éxito. Configuración de Seguridad y Áreas de Trabajo Para crear nuevos Dominio. Configurar las propiedades del archivo hipergate. j. hipergate.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. 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. administrator@hipergate-system. guest@hipergate-model.cnf. superuser@hipergate-model. user@hipergate-model. acceda a http://myserver/admin/test_connect. Puede acceder a la aplicación de ejemplo a través de la URL: http://myserver/login.cnf para inidicar a la aplicación a qué base 3. en minúsculas) Cuenta de usuario avanzado del dominio modelo de la base de datos. i. de datos debe conectarse. Se recomienda proteger el directorio /admin con autentificación básica del servidor web una vez finalizada la instalación inicial.html. en minúsculas) Cuenta de administrador del dominio modelo de la base de datos. aunque se recomienda cambiar su contraseña por defecto.com (password model.com (password model.com (password hipergate) Cuenta de administrador del sistema completo de hipergate. Tener las librerías (JARs) necesarios en su sitio (por defecto ya lo están en WEB-INF/lib). Se utiliza para generar copias clónicas de los dominios.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. hipergate tiene dos dominios reservados con 5 usuarios que deben conservarse.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. Se utiliza para generar copias clónicas de los dominios. h. vez cargada la base de datos. en minúsculas) Cuenta de usuario ordinario del dominio modelo de la base de datos.com (password model. El sistema de carga de base de datos genera una serie de usuarios y contraseñas por defecto.jsp?profile=hipergate. Gestiona los dominios. areas de trabajo y usuarios que pueden acceder a la aplicación a nivel global.* 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. Ejecutar el Asistente de Instalación Para iniciar hipergate básicamente existen tres requisitos: 1.com (password model. Se utiliza para generar copias clónicas de los dominios. administrator@hipergate-model. en minúsculas) . Pruebas adicionales de conexión y acceso Una la siguiente URL: Si todo funcionó correctamente. Áreas de Trabajo y Usuarios lea el Manual de Usuario. El Asistente de Instalación que se encuentra en http://servidor:puerto/admin/setup.

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

<param-value></param-value> </init-param> </servlet> <servlet> <servlet-name>HttpBLOBServlet</servlet-name> <servlet-class>com.knowgate.http.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> .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.knowgate.http.

en cuyo caso es preciso especificar valores pordefecto de la siguiente forma: Nombre de la clase Java del driver JDBC {org.Driver | com.postgresql.microsoft.jdbc.</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.OracleDriver | jdbcURL dbUserName dbUserPassword .jdbc.sqlserver.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.

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

xml como: <local-tx-datasource> <jndi-name>KnowgateDS</jndi-name> <connectionurl>jdbc:postgresql://127.0.x. Configurar manualmente hipergate.0.Existe una herramienta de consulta directa por SQL contra la base de datos en /admin/sql. Java BeanShell (necesario para ejecutar el asistente) no funciona bien sobre JBoss 4.cnf y no en otros archivos de propiedades. Por ejemplo si es PostgreSQL podría ser postgre-ds. Permite lanzar uno o varios comandos SQL con el delimitador seleccionado por el susuario y recoger el conjunto de resultados de una consulta. Se recomienda deshabilitar cualquer acceso a esta herramienta por parte de los usuarios finales.htm.Clase del driver --> <driver-class>org.cnf Copiar los drivers JDBC y la librería hipergate-x.jsp Valor de las cookies de sesión Pueden leerse llamando a la página /admin/viewcookies. 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.jsp Valor de las variables de entorno Pueden inspeccionarse llamando a la página /admin/environment.xx.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> .xml for para la base de datos que se vaya a utilizar.1:5432/hgoltp8t</connection-url> <!-.0.zip Crear el modelo de datos usando un volcado binario en lugar de utilizando el Asistente de Instalación. Instalación sobre JBoss Contribuido por Nam Tu nguyen • • • • • • • • • • • • • • • • • • Usar el archivo etiquetado hipergate-xx-war. Estado del pool de conexiones Puede consultarse llamando a la página /admin/connectionpool.html p.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.zip en vez de hipergate-xx-src.postgresql. Esta utilidad se conecta por defecto siempre contra la base de datos especificada en hipergate.

se utilizan por claridad): # [Base de Datos] # Parámetros de conexión a la base de datos driver=org.cnf El archivo hipergate. tan sólo hay que modificar /default/conf/login-config.1. 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) . mbean. Apéndice 1: Propiedades de hipergate.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.168.xml. ni nada. las variables $CATALINA_HOME no son válidas en este fichero. • • Copy hiperweb.war to /server/default/deploy Abrir http://localhost/hiperweb/ q.Driver dburl=jdbc:postgresql://192.postgresql. 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. host.No se requiere un servicio.

sqlserver.jdbc.jdbc.user= # LDAP ldapconnect=ldap://127.LDAPNovell A continuación se describe cada uno de los parámetros y su función driver Nombre del driver JDBC.ldap.sqlserver.dc=org ldapuser=cn=Manager. schema Esquema de la base de datos. Puede ser el usuario propietario de las tablas.outgoing=smtp.mysql.0.knowgate.microsoft.microsoft.transport.yourserver.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.0.store.1" o "localhost".SQLServerDriver (SQL Server 2000) com.incoming=pop3.0.com mail.dc=org ldappassword=manager ldapclass=com.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.DatabaseName=nombre_bbdd (SQL Server 2000) • jdbc:sqlserver://nombre_host:1433. Si el servidor web y la base de datos están en la misma máquina el host es "127.postgresql.jdbc.jdbc.protocol=smtp mail.0.OracleDriver (Oracle) com.SelectMethod=cursor.Driver (PostgreSQL) com.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. • • dbo (SQL Server) HIPERGATE (Oracle) . 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.1:389/dc=hipergate.driver.Driver (MySQL) oracle.dc=hipergate.forName: • • • • • dburl org. Dejar en blanco también para MySQL.com mail.protocol=pop3 mail.yourserver. según se utilizaría en la función Class.SelectMethod=curs or.

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

plantillas y scripts de ejecución SQL (QBF).domain. website o cuenta de acceso hay que borrar todos los directorios relacionados con este objecto. maxschedulerthreads Número máximo de hilos (threads) que arranca el planificador de ejecución. visible a través de web. storage Directorio raíz de almacenamiento privado de usuarios. Actualmente solo se utiliza para acceso por FTP.incoming Servidor de recepción de correo POP3 (por defecto localhost) . o bien en otro directorio.store. pero Java impide este borrado y por tanto hay que crear una tarea que borre los directorios desde fuera del contendor de servlets. Puede estar dentro de la raíz del servidor web. • $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.txt con la ruta completa al directorio a borrar. • • localhost (ficheros locales) ftp-server. Si desea eliminar una newsletter. • • • /tmp $CATALINA_HOME/webapps/shell C:\\BEA\\weblogic81\\samples\\workshop\\hipergate\\shell (Windows 2000) workareasput Directorio raíz de almacenamiento público. • • • (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.com (acceso por FTP) fileuser/filepassword Nombre de usuario y contraseña utilizados para el acceso a repositorios remotos. • • /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. mail. Para cada elemento a borrar. 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.protocol Transporte que se utilizará para enviar mensajes de correo electrónico (por defecto smtp) mail.transport.protocolo de acceso fileprotocol es distinto de file://.protocol Protocolo de almacenamiento de correo electrónico (por defecto pop3) mail. se añade una linea al fichero cleanup.

usuario y contraseña disponibles en el fichero de configuración.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.x 1.DD.mail. seleccionar All Tasks -> Restore Database.bak a una unidad de disco local.backup Si se encuentran problemas de permisos accediendo al lenguaje c. La base de datos utilizada en el parámetro dburl debe estar creada y vacía antes de ser cargada. Oracle 10g/XE 1.. PostgreSQL 8. 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. # grant usage on language c to knowgate.bak a la lista de dispositivos y hacer click en OK. hacer: # update pq_language set lanpltrusted=true where lanname='c'. Restaurar la BB. desde el fichero H3PGSQL8.cnf manualmente e importar los volcados binarios del modelo de datos que hay en el directorio database/ de la distribución. 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. Copiar h4mssql2005. Crear una base de datos Unicode: # createdb -E UNICODE hipergate4 Crear un nuevo usuario: # createuser knowgate # grant all on database hipergate4 to knowgate 2. El proceso de carga de base de datos de hipergate utilizará los parámetros de conexión. Para cargar la base de datos con el modelo básico de trabajo y un juego de datos de ejemplo. 2. Hacer click con el botón derecho sobre la nueva BB.dmp Microsoft SQL Server 2005 1. añadir h4mssql2005. seleccionar "From Device". ejecute el .outgoing Servidor de envío de correo SMTP (por defecto localhost) r.DUMP: # pg_restore -d hipergate4 h4pgsql83.cnf.

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

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

Para ello: • • • Copiar el JAR al directorio jboss/server/all/deploy.jar) t. escrito en Java.1.jar (ej.Java API To Access Microsoft Format Files .jboss.proxy.invocation.proxy.3. Apéndice 4: Librerías de terceros J2EE Client .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.jboss.0) El proyecto OROMatcher fue cedido a The Apache Software Foundation y ahora es Jakarta .proxy.9.5 Acceso a ficheros basados en el formato de Documento OLE 2 de Microsoft desde Java.0 Contiene clases J2EE necesarias para el cache distribuido de hipergate Xerces2 Java Parser 2.jboss.plugins.0b4 BeanShell es un intérprete de código fuente de Java con características de scripting. Java BeanShell .SecurityInterceptor</interceptor> <interceptor>org.2.jboss.jboss.TransactionInterceptor</interceptor> <interceptor>org. Jakarta POI .SecurityInterceptor</interceptor> <interceptor>org.0 Un conjunto de clases Java que proporcionan un lenguaje de scripting dentro de aplicaciones Java.proxy. Jakarta Lucene .HomeInterceptor</interceptor> <interceptor>org.ejb. file://C:\jboss\server\all\deploy\cachecoordinatorjboss30.InvokerInterceptor</interceptor> </bean> </client-interceptors> <instancepool>org.0.0 Parser XML de la Fundación Apache Bean Scripting Framework .jboss.invocation.jar.</interceptor> </container-interceptors> <client-interceptors> <home> <interceptor>org.InvokerInterceptor</interceptor> </home> <bean> <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.TransactionInterceptor</interceptor> <interceptor>org.4 Jakarta Lucene es un motor de indexación de alto rendimiento escrito en Java.proxy.8 (sólo a partir de la versión 2.jboss.jboss.ejb.StatelessSessionInterceptor</interceptor> <interceptor>org.2.2.jboss. Jakarta ORO 2.proxy.4.ejb.

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

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

Sign up to vote on this title
UsefulNot useful