Ir al contenido principal

Entradas

Grails, Imágenes y Postgresql

Pues he estado probando postgresql desde que salió la versión 9.0 beta1, y el no saber qué pasará con MySQL, en fin, eso es otra historia. El chiste es que hoy, bueno desde ayer, me topé con algo que me hacia considerar regresar a MySQL, aunque sé que en MySQL no es cualquier cosa hacerlo. Estoy guardando en la base de datos unas imágenes, y aquí van a empezar a polemizar en cuanto a si es mejor o no guardar datos binarios en la BD, pero una rápida respuesta a sus interrogantes es que pienso poner mi aplicación en clúster, por lo que me es más fácil si esos recursos se encuentran en la BD, no me importa tanto el rendimiento. En fin, intenté hacer eso, porque no funcionó, llegué al punto de intentarlo en una aplicación vacía con HSQLDB, y que funciona... charros, entonces es Postgresql, seguí debugueando y encontré el problema, resulta que en Postgresql 9.0 (ya estoy en el beta2, por bajar el beta3), cambiaron una opción que en versiones anteriores estaba de otra forma, la regresé a com...

Migración de Webspace a Liferay

Deseas cambiar de webspace de sun a liferay? Tengo una instalación de webspace basado en liferay 5.2.2 y decidimos actualizar a la versión 5.2.3, ya que liferay acaba de liberar su versión 6.0.0. SGCampus es uno de los sitios administrados en esa instancia, visítalo. Para la migración fue necesario montarlo en una máquina virtual, en la cual estuvimos probando hasta que le dimos... una vez encontrados los pasos apropiados para la migración es bastante sencillo (CUIDADO: Siga este procedimiento bajo su responsabilidad). Las especificaciones del servidor son: Web Space Server 10.1 Community Build 2, esto está instalado sobre un glassfish v2 y conectado a una base de datos MySQL 5. Descomprimir liferay en donde lo vas a usar en el servidor (yo lo pongo en /opt/portal/liferay-portal-5.2.3) Respaldar directorio donde webspace sube los archivos del portlet de documentos, en mi caso se encuentra en [instalación de webspace]/var/webspace/data y ponerla en [instalación de liferay]/data, qu...

Configuración Inicial de Liferay 5.2.3

Una vez instalado Java 6, mysql 5 en tu servidor, imagino que ya bajaste liferay 5.2.3 con tomcat 6 desde liferay.com. Bueno lo desempacamos y lo corremos y que pasa, pues resulta que correo bien y todo pero con Hypersonic DB y esta base de datos no es suficiente para un ambiente productivo, por lo que tenemos que configurar liferay para que se conecte a MySQL. Para esto creamos un archivo de texto con el nombre de portal-ext.properties en el home del usuario que va a levantar el tomcat, en mi caso el usuario que estoy utilizando es jdmr y el servidor es ubuntu así es que mi archivo queda en /home/jdmr/portal-ext.properties y le ponemos lo siguiente adentro # # MySQL # jdbc.default.driverClassName=com.mysql.jdbc.Driver jdbc.default.url=jdbc:mysql:///lportal?createDatabaseIfNotExist=true&useUnicode=true&characterEncoding=UTF-8&useFastDateParsing=false jdbc.default.username=lportal jdbc.default.password=lportal Por supuesto puedes cambiar el usuario, pas...

Grails Transactions

Las transacciones en Grails la podemos hacer con Aunque esta no es la forma recomendada, es la más fácil, porque funciona en todos lados (controladores, servicios, etc). Ahora bien, si usamos la capa de servicios de grails, esta viene con esa funcionalidad Como pueden ver, es interesante el manejo de transacciones en Grails...

Pruebas de Integración con seguridad en Grails

Pues no existe mucha documentación en cuanto a las pruebas de integración con el nuevo plugin de Burt Beckwith, así que aquí les voy a poner lo que necesitan, use una clase base para las pruebas de integración aunque, si lo desean, pueden poner ese código en cada prueba que necesite la seguridad BaseTest.groovy package general import groovy.util.GroovyTestCase import org.springframework.security.core.GrantedAuthority import org.springframework.security.core.authority.GrantedAuthorityImpl import org.codehaus.groovy.grails.plugins.springsecurity.GrailsUser import org.springframework.security.core.context.SecurityContextHolder as SCH import org.springframework.security.authentication.TestingAuthenticationToken abstract class BaseTest extends GroovyTestCase { def authenticateAdmin() { def user = general.Usuario.get(1) def authorities = [new GrantedAuthorityImpl('ROLE_ADMIN'),new GrantedAuthorityImpl('ROLE_USER')] def credentials = 'test...

JSF y el javax.validation.UnexpectedTypeException

Pues nos encontramos aprendiendo una nueva tecnología, y como todo lo nuevo, uno se topa con varias dificultades en el camino... existe un error del cual no encontré mucha información y es por lo que la publico en el blog; el error es javax.validation.UnexpectedTypeException: No validator could be found for type: java.lang.Integer Pero igual aplica para java.math.BigDecimal o algunos otros tipos, por el error y el stacktrace uno no da con cuál es el verdadero problema, hasta que me topé con este link de "solid". El cual me dio idea de lo que era, resulta que yo tenía para los campos en los que tenía problemas una anotacion @Size(min=0), me imagino que tendré que investigar cómo utilizar bien esas validaciones, pero quitándolas se resolvió el problema, mientras aprendo a utilizarlas tendré que hacer las validaciones por afuera... Espero le sirva a alguien...