@ agnasg

agnasg


Las actualizaciones tendrán que esperar… java… otra vez

10-11-2008 4:41 PM

La lista de correcciones es extensa: agregar los usuarios (hay 100 y pico de personas registradas), todavía en IE las listas se ven centradas, los enlaces a la izquierda todavía están ocultos, etc.. Estoy envuelto en un proyecto lamentablemente con java, así que estaré missing in action por un buen tiempo.

Para poner el cuento corto, estoy haciendo un datawarehouse con Mondrian, y bueno, Mondrian y su visualizador (JPivot) están hechos en java. Por si están interesados esta es una solución software libre, de Inteligencia de Negocios. Yo solía trabajar con Business Objects y Cognos, pero como ahora pasaron a formar parte de los grandes imperios (Sap e IBM, respectivamente) ya no me resultan tan simpáticos. Mondrian es realmente fascinante como herramienta, aunque su instalación y configuración es un verdadero fastidio (java, por supuesto). El problema es que las posibilidades de cometer errores son astronómicas, y java, con su listado de errores y toda la información sobre lo que estaba haciendo cuando cometió el error es inútil para el desarrollador desprevenido (y también para el que está alerta)

Por si fuera poco mi instalación incluye a mysql así que hay que usar el tristemente célebre mysql-connector-java (estoy usando la versión 5.1.7), lo cual suma un nivel adicional de problemas. Si colocas el string de conexión mal, el error producido puede ser cualquier cosa, y entonces no sabes si mysql está fallando, o tomcat (el servidor de aplicaciones), o java o es Mondrian. Una pesadilla.

Mi primera instalación tuvo una diversión extra, que fue el terrible “no se puede cargar el com.mysql.jdbc.Driver”. En todas partes (aquí, aquí, aquí, aquí, aquí, y aquí ) dice que o no es necesario, o que basta con instalarlo en un directorio llamado TOMCAT_HOME/common/endorsed). Inclusive se sugiere que debe ser instaldo en TOMCAT_HOME/common/lib (peor aun, la guia de instalación dice que lo  coloques en TOMCAT_HOME/common/endorsed si hace falta: ¿qué demonios significa si hace falta?). En mi caso, por razones que desconozco todavía (posiblemente debido a que mi máquina es de desarrollo y está envenenada) nada de eso funcionó. Bien al final, luego de 3 horas masticando el problema se me ocurrió colocarlo en TOMCAT_HOME/lib… y voilà… funcionó. Eso no está documentado en ninguna parte. Por supuesto, antes de eso probé colocar el path original del conector en la variable CLASSPATH (en Panel de Control->Sistema->Opciones Avanzadas->Variables de Entorno), lo declaré en mondrian.properties, etc, etc, etc. Esas 3 horas se las voy a cargar, nuevamente, a java. Otra vez…