OpenXpertya >> Instrucións de instalación



REQUIRIMENTOS PARA A INSTALACIÓN

Primeiro hai que ter o contorno básico.


  • Software requirido para a instalación
    • Debian GNU/Linux [1]
    • Java de Sun (está incluída na paquetería de Debian)
    • Sistema xestor de bases de datos PostgreSQL 8.1 (está incluída na paquetería de Debian)
    • Soporte Java para a base de datos PostgreSQL 8.1 [2]
    • Binarios de openXpertya
    • JBOSS JBOSS (está incluída na aplicación OpenXpertya)
    • Tomcat Apache Tomcat (tamén está incluído no JBOSS, incluído en openXpertya, pero se pode instalar para usar outros paquetes más recentes)

En Debian etch o Java de Sun pasou a formar parte das aplicacións "non-free", polo que se modificamos o ficheiro sources.list para incluír este tipo de aplicacións podemos utilizar a ferramenta apt-get para a súa instalación.

openxp# nano /etc/apt/sources.list

Inclúe os termos "contrib" e "non-free" detrás do tármino "main".

p.e.

deb http://ftp.es.debian.org/debian/ etch main contrib non-free

Agora, poderemos instalar a versión 1.5 do Java de Sun.

openxp# apt-get update
openxp# apt-get install sun-java5-jdk

Agora, os paquetes Java atópase na seguinte ruta /usr/lib/jvm/java-1.5.0-sun-1.5.0.10. Para facilitar o seu localización creamos un vínculo simbólico:

openxp# ln -s /usr/lib/jvm/java-1.5.0-sun-1.5.0.10 /usr/lib/java

Finalmente, debemos comprobar que a versión de Java que o sistema está utilizando é a que instalamos.

openxp# java -version
java version "1.5.0_10"
Java(TM) 2 Runtime Environment. Standard Edition (build 1.5.0_10-b03)
Java Hotspot(TM) Client VM (build 1.5.0_10-b03, mixed mode, sharing)

No caso en que non sexa a que acabamos de instalar deberemos executar o comando:

openxp# update-alternatives --config java

E seleccionar a opción correcta.

Descarga OpenXpertya 2.1

É necesario descomprimir o binario, o mesmo poderá colocalo no seguinte cartafol:

openxp# cp ServidorOXP_v2_1.tar.gz /var/www/
openxp# cd /var/www/
openxp# tar zxfv ServidorOXP_v2_1.tar.gz
openxp# cd ServidorOXP/
openxp# find . -name '.sh' -exec chmod a+x '{}' \;

Variables de Contorna

Agora débense configurar as variables que se necesitarán mais adiante cando se configure OpenXpertya.

openxp# export OXP_HOME=/var/www/ServidorOXP
openxp# export Java_HOME=/usr/lib/java
openxp# env # para verificar que están as rutas creadas.

Instalación de Tomcat (opcional)

Tomcat é un servidor web con soporte de servlets e JSPs. Inclúe o compilador Jasper, que compila JSPs convirtíndoas en servlets. O motor de servlets de Tomcat a miúdo preséntase en combinación co servidor web Apache ou JBOSS.

openxp# apt-get install tomcat5.5

Instalación de PostgreSQL 8.1

Para a instalación da Base de Datos PostgreSQL débense realizar os seguintes pasos.

openxp# apt-cache search postgresql
openxp# apt-get install postgresql-8.1 postgresql-contrib-8.1 pgadmin3

O paquete "pgadmin3" (PgAdmin III) instálase para administrar as bases de datos nunha contorna gráfico.


Para aumentar a seguridade do sistema de bases de datos recoméndase establecer unha contrasinal para o superusuario (postgres).

openxp# o seu postgres 
openxp$ psql --command "ALTER USER postgres PASSWORD '<o teu_password>'"
openxp$ exit

Recorda esta contrasinal posto que vas necesitala para acceder ao servidor SQL desde PgAdmin III, e para realizar a configuración de openXpertya.


Agora, informamos a PostgreSQL da localización da JVM.

openxp# nano /etc/postgresql/8.1/main/environment

Engadimos a liña:

Java_HOME='/usr/lib/java'

Configuración da Base de Datos

Unha vez instalados os paquetes procederase a crear o usuario na Base de Datos, este será o propietario da mesma.

openxp# o seu postgres
openxp$ createuser --non-createdb --non-superuser --non-createrole --pwprompt openxp
openxp$ exit

O seguinte paso é para crear a Base de Datos.

openxp# o seu postgres
openxp$ createdb --owner openxp --encoding UNICODE openxp # Crear a bd openxp
openxp$ exit

Instalación e configuración de PL/Java

Antes de importar a base de datos de openXpertya debemos habilitar o soporte pljava en postgresql. O paquete etch de pljava esta preparado para gcj, non para a VM de Sun. A maiores, existe un bug neste paquete que impide que a aplicación funcione.

xpertya# apt-cache search pljava
postgresql-8.1-pljava-gcj - Java procedural language for PostgreSQL

Debemos baixarnos entón e instalar pljava: http://pgfoundry.org/frs/download.php/967/pljava-i686-pc-linux-gnu-pg8.1-1.3.0.tar.gz Descomprimimos e copiamos os contidos de tal xeito que estes ficheiros queden nestes sitios:

/usr/lib/postgresql/8.1/lib/pljava.so
/usr/lib/postgresql/8.1/lib/pljava.jar
/usr/share/postgresql-8.1-pljava/install.sql
/usr/share/postgresql-8.1-pljava/uninstall.sql

Engadimos ao final de /etc/postgresql/8.1/main/postgresql.conf

dynamic_library_path = '$libdir:/usr/lib/postgresql/8.1/lib/'
custom_variable_classes = 'pljava'              # list of custom variable class names
pljava.classpath='/usr/lib/postgresql/8.1/lib/pljava.jar'

Creamos un vínculo simbólico para libjvm.so:

openxp# ln -s /usr/lib/java/jre/lib/i386/server/libjvm.so /usr/lib/libjvm.so

Para finalizar, creamos e executamos este script:

#!/bin/bash

boto "
CREATE FUNCTION plpgsql_call_handler () RETURNS OPAQUE AS
 '/usr/lib/postgresql/8.1/lib/plpgsql.so' LANGUAGE 'C';
 CREATE TRUSTED PROCEDURAL LANGUAGE 'plpgsql'
  HANDLER plpgsql_call_handler
    LANCOMPILER 'PL/pgSQL';
" > /tmp/.buffer

cat /usr/share/postgresql-8.1-pljava/install.sql /usr/share/postgresql/8.1/contrib/tsearch2.sql >> /tmp/.buffer

boto "
CREATE schema openxp;
SELECT sqlj.install_jar('file:/var/www/ServidorOXP/lib/sqlj.jar','sqlj',true);
INSERT INTO sqlj.classpath_entry (schemaname, ordinal, jarid) VALUES ('openxp', 1, 1);

" >> /tmp/.buffer
psql -d openxp -Ou openxp -h localhost -f /tmp/.buffer
rm /tmp/.buffer


Se este script falla, posiblemente necesites executalo como usuario postgres, substitúe a liña:

psql -d openxp -Ou openxp -h localhost -f /tmp/.buffer

por

psql -d openxp -Ou postgres -h localhost -f /tmp/.buffer

Isto serve para:
a) Habilitar a linguaxe pgSQL na base de datos
b) Habilitar as funcións de instrumentación
c) Instalar o repositorio sqlj.jar implementado en openXpertya


Para finalizar coa configuración da base de datos de deberá cargar as táboas necesarias para que a aplicación funcións correctamente.

openxp# o seu postgres
openxp$ psql --username openxp --password --host localhost --dbname openxp < $OXP_HOME/data/openxpdb.sql 
ao meu marcábame un erro por que non atopaba o arquivo (open xpertya 2.1)
openxp$ psql --username openxp --password --host localhost --dbname openxp < $OXP_HOME/data/openxp_db.sql
openxp# exit


Para que as aplicacións conéctense coa Base de Datos sen problema debe modificar os seguintes parámetros no arquivo pg_hba.conf situado na seguinte ruta: /etc/postgresql/8.1/main/ .

openxp# nano /etc/postgresql/8.1/main/pg_hba.conf

Ao final do arquivo agregar as seguintes liñas.

local all postgres trust
#
# All other connections by UNIX sockets
local all all trust
#
# All IPv4 connections from localhost
host all all 127.0.0.1 255.255.255.255 trust
host all all [o teu IP asignada a eth0] 255.255.255.255 trust
#
# reject all other connection attempts
host all all 0.0.0.0 0.0.0.0 reject

No meu caso tamén tiven que modificar o arquivo /etc/postgresql/8.1/main/postgresql.conf

listen_addresses = ''

Unha vez que agregadas as liñas no arquivo debe reiniciar o servizo de PostgreSQL desde a consola:

openxp# /etc/init.d/postgres8.1 reload

No meu caso(Debian 4.0) era :
openxp# /etc/init.d/postgresql-8.1 reload

Configuración de OpenXpertya

Para configurar a aplicación deberá realizar os seguintes pasos:

openxp# cd /var/www/ServidorOXP/
openxp# ./Configurar.sh

Neste ultimo paso debe colocar os parámetro solicitados e os mesmos se poderán comprobar se están correctos ao colocarse todo en verde, unha vez comprobado que todo este ben se procede a gardar os cambios e desde este momento instalarase a aplicación.


Posibles problemas neste paso:

1) Se o locale por defecto non está configurado como gl_ES, a pantalla de configuración non arrinca. O erro que aparece é: java.util.MissingResourceException: Can't find resource for bundle. Deberán executar o seguinte comando; na primeira pantalla elixir gl_ES, e na segunda volver elixilo.

openxp# dpkg-reconfigure locais

2) Se o porto 80 está sendo utilizado (p.e. Apache), utiliza outro alternativo (p.e. 8081).

3) Se obtés un erro relacionado con template1, revisa a variable listen_addresses = '', de postgresql.conf.

4) Se obtés un erro relacionado co JDBC, revisa a configuración do pg_hba.conf.

5) Ao final débese ver unha mensaxe deste estilo:


BUILD SUCCESSFUL
Total estafe: 46 seconds
Mapped windows:
54525958->sun.awt.X11.XFramePeer@16cd7d5(3400006)

Se aparece algo como

BUILD FAILED
/home/openxp_21/ServidorOXP/build.xml:230: Warning: Could not find file /home/openxp_21/ServidorOXP/utils/PlantillaFTPDescargarOXP.txt to copy

é que fan falta os seguintes arquivos que se atopan no tar.gz da versión 2.0

/ServidorOXP/utils/PlantillaFTPDescargarOXP.txt
/ServidorOXP/utils/PlantillaSubirExportacion.bat
/ServidorOXP/utils/PlantillaSubirExportacion.sh
/ServidorOXP/utils/PlantillaSubirExportacion.txt 

Iniciando o Servidor de Aplicacións

No sub-directorio utils atópase un script, debe executar o script para iniciar o servizo.

openxp# cd /var/www/ServidorOXP/utils
openxp# ./IniciarServidor.sh

A seguinte mensaxe indica que esta arriba o servizo:

22:54:47,252 INFO  [Server] JBoss (MX MicroKernel) [4.0.2 (build: CVSTag=JBoss_4_0_2 
dáche=200505022023)] Started in 1m:16s:726ms

Unha vez finalizado este paso vostede xa poderá facer uso da ferramenta.

http://localhost:porto/


Na versión 2.1 despois de realizar todos os pasos da instalación, é posible que teña o seguinte erro na interface Java.

message

description The server encountered an internal erro () that prevented it from fulfilling this request.

exception

java.lang.StringIndexOutOfBoundsException: String index out of range: 2
    java.lang.String.charAt(String.java:558)
    org.openXpertya.model.MRole.canView(MRole.java:1825)
    org.openXpertya.model.MTabVO.loadTabDetails(MTabVO.java:351)
    org.openXpertya.model.MTabVO.create(MTabVO.java:197)
    org.openXpertya.model.MWindowVO.createTabs(MWindowVO.java:312)
    org.openXpertya.model.MWindowVO.create(MWindowVO.java:272)
    org.openXpertya.www.WWindow.doGet(WWindow.java:193)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:697)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:810)
    org.openXpertya.www.WFilter.doFilter(WFilter.java:172)
    org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:81)

Parece que hai un dato mal na táboa MRole e que por iso dá o erro que mencionás. Na táboa ad_role, debe modificar a columna userlevel para que os datos conteñan sempre sempre 3 caracteres con espazos: "S " " C " " Ou" A maiores, antes de xerar unha empresa no sistema, débese modificar a táboa ad_ref_list con este esquema onde sexa necesario nas filas correspondentes (ad_ref_list_ide: 451, 452, 453, 454).

Todo isto pódelo facer utilizando o pgAdmin.

Obtido de "http://wiki.openxpertya.org/index.php/Instalaci%C3%B3n_Debian_GNU/Linux"

Cambiar o idioma ao Galego

Descargar a tradución. Desde system, en configuración (administrador)>idiomas>importar/exportar tradución cargar os xmls.

[Atrás]