JLibrary
From Wickle Wiki
Un poco de ayuda al desarrollador de Jlibrary !
Contents |
Como compilar el jlibrary desde linux
- nos traemos las fuentes del CVS, con lo que nos genera un estructura
org.jlibrary.client ...
creamos el directorio base-deploy/linux y base-deploy/windows , de modo que tengamos algo asi :
en el directorio base-deploy/windows tendremos que meter las librerias necesarias de windows para compilar el jlibrary :
os bajais este archivo: eclipse-RCP-3.0.1-win32.zip
y lo descomprimis en base-deploy/windows/jlibrary-client/plugins/ de modo q aparezca asi: base-deploy/windows/jlibrary-client/plugins/org.eclipse.swt.win32_3.0.1/ws/win32/swt.jar
luego en ant en la raiz y listo ...
Como compilar el jlibrary desde eclipse
Directorios a crear vacios :
- org.jlibrary.client/logs
- workspace/base-deploy/windows/jlibrary-client/plugins/org.eclipse.swt.win32_3.1.0/
- workspace/base-deploy/linux
importamos los 3 proyectos INDEPENDIENTEMENTE desde el eclipse :
- org.jlibrary.client
- org.jlibrary.server
- org.jlibrary.web
modificamos los build*.xml
copiamos build.properties.samples a build.properties
lo modificamos de acorde a nuestro sistema.
copiamos en org.jlibrary.clien/lib las librerias :
- freemarker.jar
- swt.jar
- swt-win32.jar (siendo esta la q SOLO tiene los paquetes
- org.eclipse.swt.internal.*
- org.eclipse.swt.ole.*
Estructura de directorios
Problemas y Soluciones
Problema Communication link failure
Communication link failure
no conecta el driver Mysql con la base de datos ... es generico de DEBIAN por defecto y el driver Mysql para Java.
Solucion
- /etc/hosts.allow
mysqld:ALL
Problema ClassnofoundException
Ocurre DURANTE la ejecucion del cliente y es por que falta la libreria jlibrary-server.jar en el directorio jlibrary-client/lib
Solucion
copiarla ALLI ...
seria bueno, modificar el build.xml para q lo haga automaticamente
Problema Servidor no conecta con BBDD
el servidor da problemas al conectar a la base de datos, ademas el archivo jlibrary.properties esta perfectamente.
El problema es q el servidor lee el jlibrary.properties de :
/home/vic/workspace/org.jlibrary.client/conf/jlibrary.properties
es decir lo lee MAL .... deberia leerlo de :
/home/vic/jlibrary/dist/20050125/jlibrary-server/conf/jlibrary.properties
o el equivalente.
El verdadero problema es que busca el archivo DESDE DONDE LANCEMOS EL tomcat en la ruta:
workspace/org.jlibrary.client/conf/jlibrary.properties
de modo que si lo lanzamos desde la home del usuario vic, el archivo properties debe estar aqui:
/home/vic/workspace/org.jlibrary.client/conf/jlibrary.properties
Solucion
Copiarlo al sitio adecuado y MODIFICAR las fuentes.
Problema: java.lang.NoClassDefFoundError: org/eclipse/swt/internal/win32/TCHAR
Este error aparece en el siguiente log:
/home/vic/runtime-workspace/.metadata/.log
y se produce justo cuando intentamos abrir (o simplemente clicar sobre) un documento (siempre q usemos LINUX como SO)
Solucion
hay q añadir al classpath las librerias de win32, para ello creamos un swt-win32.jar con las librerias de swt para win32 y añadimos esta linea al org.jlibrary.client/plugin.xml:
<library name="lib/swt-win32.jar"/>
Problema java.lang.reflect.InvocationTargetException
Este es un error que me encuentro al acceder desde un windows a un linux. Me pasa al añadir cualquier archivo al servidor recien instalado. Image:Captura.JPG

