Geoserver y las extensiones “ImageIO-ext” no se llevan bien con Tomcat (>= 6.0.24)

Parece que tenemos un problema, Houston. Y uno gordo.

Muchas de las personas que utilizamos Geoserver como servidor de mapas, nos hemos decidido por la combinación Geoserver+Tomcat, ya que parece una forma “ordenada” y “optimizada” de implantar un servidor de mapas.

Pero todo tiene problemas.

Si hemos instalado las extensiones “ImageIO-ext” para obtener la posibilidad de usar muchos más formatos de fuentes de cartografía en nuestro servidor, y por casualidad hemos actualizado a una versión de Tomcat por encima de la 6.0.24 (inclusive) nos encontramos que al intentar usar un formato de los que nos da soporte las extensiones “ImageIO-ext”, encontramos este fantástico error:

Caused by: java.lang.IllegalArgumentException: Incorrect input type!
       at javax.imageio.ImageReader.setInput(ImageReader.java:290)
       at it.geosolutions.imageio.gdalframework.GDALImageReader.setInput(GDALImageReader.java:838)

¿Yuhu?. Bueno, al menos, es un error reconocido por la gente de Geoserver y ahora mismo esta trabajando en ello, aunque no creo que tengan una solución próxima, ya que el problema esta en la extensión, no en el servidor Geoserver. La extensión tiene un problema de “leak” de memoria en ciertas condiciones, y las nuevas versiones de Tomcat tiene un nuevo mecanismo que detecta esto fallos que pueden peligrar el buen funcionamiento del servidor y hacen que no permita el registro de la extensión en el sistema (et voilà, ya no tenemos acceso a la extensión).

Aunque haya algún “workaround” a la vista, como deshabilitar dicho mecanismo de protección anti-fugas de memoria en el servidor Tomcat. Aunque esperemos que no quede mucho para que lo solucionen de una manera mas “fina”.

Referencias:

Please follow and like us:

Android te da un “Android.process.acore” al sincronizar tus contactos con Google

Parece que el problema se extiende, ya que no son pocos los que se encuentran con un “Android.process.acore” cuando tratan de sincronizar sus contactos con Google.

El problema viene en la mayoría de los casos por saltos de línea que no espera el programa, o caracteres raros dentro de los campos que tiene un contacto. En muchos casos en el campo de Facebook de un contacto, por lo que sería lo primero a revisar.

Para investigar sin problemas, sólo tendremos que desactivar la “Sincronización de datos” automática dentro del submenu “Google” en el apartado de “Ajustes>Sincronización de datos“.

Este problema esta reconocido, y tiene su propio “Bug” en el sistema de Bugs de Android que obviamente, sigue abierto… Pero en el hilo de dicho bug, también hay un método bastante sencillo y cómodo. Baja al comentario 39 de dicho hilo y verás un sencillo método que nos permitirá no tener problemas con los caracteres ni los saltos de linea.

En resumen:

  1. Quitar la sincronización automática de los contactos con Google en “Ajustes->Sincronización de datos->Google->Sincronización automática“.
  2. Instalarnos en el teléfono el programa “ExportContacts” y crear un fichero .csv con nuestros contactos dentro de nuestra tarjeta SD. Saca este fichero a nuestro ordenador.
  3. Ese .csv puede ser importado a nuestros contactos de Gmail sin problema, entra en Gmail, en “Contactos->Importar“. Ojo, ya que los unirá a los contactos que tengas en Gmail, y quizás quieras borrar alguno que no te interese en Gmail.
  4. Borrar todos los contactos del teléfono. Sin miedo, ahora los tiene Google.
  5. Volver a activar la sincronización de los contactos en el teléfono.
  6. Si te aparece un mensaje de advertencia al sincronizar sobre que “Demasiados contactos borrados“, pulsa en “Deshacer borrado” (a mi no me salió dicho mensaje)
  7. Sincroniza… en un rato tendrás todos los contactos en tu teléfono de nuevo.

Un saludo 🙂

Please follow and like us: