java.lang.IllegalStateException: getOutputStream() has already been called for this response. Glassfish 4.1.1.

Desde hace un tiempo, utilizo Glassfish como servidor de aplicaciones en mis desarrollos web con Java. Sin embargo en el proyecto que actualmente trabajo, al descargar la última versión y querer añadir un nuevo pool de conexiones, la consola de administración gráfica de Glassfish 4.1.1 me arroja el siguiente error:

java.lang.IllegalStateException: getOutputStream() has already been called for this response.

Buscando la causa me encuentro que es un bug en esta nueva versión de Glassfish que aún no ha sido resuelto. Hay que recordar que Oracle dejó de dar soporte sobre este producto y por lo tanto, las correcciones de errores son más lentas que antes. En el misma dirección donde se reporta este bug se indica algunas soluciones.

Dentro de las soluciones, me enteré que existe una empresa que ha empezado otro desarrollo en base al código de Glassfish y realiza funciones de mantenimiento más prontas: Payara Server. Lo he descargado y funciona perfectamente hasta el momento. De ahora en adelante utilizaré este servidor de aplicaciones en futuros desarrollos.

¡Felices fiestas!

(Por favor visita a los patrocinadores).

 

Ubuntu 14.04: mount: unknown filesystem type ‘exfat’

Este error lo marca Ubuntu al querer montar un disco externo que fué formateado con el tipo de sistema de archivos exFAT. Por defecto Ubuntu no instala los paquetes necesarios para montar este tipo, así que es necesario instalar los paquetes necesarios. Para eso ejecutamos en una ventana de terminal las órdenes siguientes:

$ sudo apt-get install exfat-fuse exfat-utils

Una vez instalados, será posible montar este disco externo o memoria USB. No olvides visitar a los patrocinadores, dando un click en los anuncios. Me ayudas a seguir conservando este sitio.

¡Gracias!

psql version 8.4, server version 9.3. Some psql features might not work. CentOS 6.x

Si recibes este mensaje mientras tratas de ejecutar el programa cliente psql para conectarte a postgresql 9.3, es debido a un conflicto de versiones. CentOS 6 lleva por defecto con las utilitarias de conexión de la versión 8.4 y al instalar una versión más actual como la 9.3 puede surgir este conflicto.

Para solucionar este problema sigue los siguientes pasos (a mi me funcionó):

Listamos los paquetes que tenemos instalados de postgresql:

# rpm -qa | grep postgres
postgresql93-contrib-9.3.10-1PGDG.rhel6.x86_64
postgresql-8.4.20-3.el6_6.x86_64
postgresql-devel-8.4.20-3.el6_6.x86_64
postgresql93-9.3.10-1PGDG.rhel6.x86_64
postgresql93-libs-9.3.10-1PGDG.rhel6.x86_64
postgresql-libs-8.4.20-3.el6_6.x86_64
postgresql93-server-9.3.10-1PGDG.rhel6.x86_64
postgresql93-jdbc-9.3.1101-1PGDG.rhel6.x86_64

Como se puede observar en mi caso, tenemos paquetes de la versión antigua 8.4.x. Procedemos a desinstalar dichos paquetes (yo estoy seguro que no estoy usando la versión 8) con un usuario con derechos administrativos (yo uso el usuario root):

#  rpm -e postgresql-devel-8.4.20-3.el6_6.x86_64
#  rpm -e postgresql-8.4.20-3.el6_6.x86_64
#  rpm -e postgresql-libs-8.4.20-3.el6_6.x86_64

Una vez esto hecho, si intentamos ejecutar el  programa cliente psql no funcionará, porque el psql por defecto fue desinstalado y el sistema no lo hallará en la ruta de ejecutables:

# ls /usr/bin/psql
ls: cannot access /usr/bin/psql: No such file or directory

Por lo tanto procedemos con el siguiente comando:

# update-alternatives --install /usr/bin/psql pgsql-psql /usr/pgsql-9.3/bin/psql 930

Una vez realizada la ejecución del comando, entramos con cualquier otro usuario y ejecutamos el programa psql para comprobar que el mensaje ha desaparecido:

$ psql -U postgres
Password for user postgres: 
psql (9.3.10)
Type "help" for help.

postgres=#

¡No olvides visitar a los patrocinadores dando un clic en los anuncios! ¡Me ayudaras a conservar este sitio! ¡Gracias!