Ir al contenido principal

Entradas

Mostrando las entradas de 2010

Búsqueda de Artículos por Etiqueta en Liferay

Pues no me había encontrado con nada interesante para escribir, por lo que había dejado a un lado el blog ya por un tiempo, en fin... ahora me encontré queriendo hacer una búsqueda por tag de contenido en liferay debido a una aplicación que estoy realizando, y me topé con que no hay mucha información al respecto por lo que hago este post para que le sirva a alguien y para acordarme cómo hacerlo después... :) Donde curso es una variable de entorno que cuando le pides su código, te regresa un string... Si quisieras hacer la búsqueda por varias etiquetas solo le pasas "TAG1,TAG2,TAG3" al StringUtil y te va a hacer el arreglo que necesitas para hacer la búsqueda por los tags, la primera opción que está puesta en false significa que si buscas por varios tags lo hagas con un AND si es true o con un OR si es false, esto es, que si le pones true, lo que busques debe tener todos los tags asignados, con false, solo hace falta que tenga uno. Si necesitas solo articulos, busca el id de

Alfresco 3.3 & GMail (Google Apps)

Alfresco  es una excelente herramienta para administrar documentos de una manera más amigable que GIT . Esta es la herramienta perfecta para el almacenamiento de documentos en una empresa y el trabajo en equipo, ya en esta versión está integrada con Google Docs para la edición de documentos, y viene más fuerte su implementación del protocolo SPP (este es el que permite que puedas editar documentos entre varias personas desde Word, Excel y PowerPoint). En fin, se los recomiendo... Hay una documentación en el sitio de alfresco acerca de cómo configurar la herramienta para mandar correos por GMail, pero no me funcionó así que tuve que ir a otro sitio para obtener lo que faltaba, en fin, voy a ponerlo aquí para recordarme yo cómo lo hice y para ayudarle a alguien que lo esté buscando. Es fácil sólo hay que editar un archivo y crear otro, primero por el que hay que editar, se llama alfresco-global.properties y se encuentra en  [INSTALACIÓN DE ALFRESCO]/tomcat/shared/classes/alfresco-global.

Nuevo Proyecto de Fábrica de Software (Intento 2010)

Henos aquí después de una semana algo llena, "lamentablemente" no pude trabajar todo el tiempo en el desarrollo de software (mi pasión), me tomé el tiempo para dedicarle a los muchachos que están trabajando para el departamento de sistemas. Estos muchachos son estudiantes y tienen una beca-trabajo u horas de servicio. Este año estamos intentando algo nuevo, en vez de que ellos tengan que asistir a las oficinas de sistemas, estamos proveyéndoles de un lugar de trabajo en la facultad, dentro de su laboratorio de computación, de tal forma que más muchachos se puedan unir sin sentirse fuera de lugar o menos, dado que son sus instalaciones... realmente tanto el personal administrativo de la facultad, sus maestros y nosotros (personal de sistemas) esperamos que funcione y que dé varios resultados (mejorar el nivel de los alumnos egresados de nuestra facultad, una mayor participación maestro-estudiante, involucrar a los estudiantes con un ambiente laboral y demás), la verdad es que

Pablo y la ley

Pablo no disminuye en nada la necesidad o la importancia de la ley moral; por el contrario, su evangelio en realidad sirve para ensalzar la ley. Una de sus principales preocupaciones es que los hombres comprendan la relación correcta que existe entre la ley y el Evangelio, y su gran mensaje es que los pecadores no deben depender de ley, ni siquiera de la ley de Dios , para que haga por ellos lo que sólo puede alcanzarse mediante la gracia de Dios que justifica y santifica por medio de Jesucristo. La comprensión de esta verdad fundamental para la salvación no disminuye el respeto por la ley de Dios; por el contrario, produce un efecto precisamente opuesto en los que tienen fe.

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...

Instalando Oracle en Desarrollo

Pues ahora que hice todo para que jalara en producción (ya en dos equipos diferentes) resulta que tengo que hacer que funcione en desarrollo, pues no soporta importar los dumps... Pero el DVD que bajé, sólo funciona para equipos x64 y desarrollo es de i686 (32 bits), por lo que tengo que bajar nuevamente el DVD para esa máquina, y mientras tanto no puedo subir los presupuestos del 2010 (podría, si apunto todo para que se vaya a producción directamente, pero no me parece bien)... En fin, estoy bajándolo, pero cada más me decido más y más a cambiar de base de datos... realmente no creo que valga la pena pagar lo que estamos pagando por tener oracle, cuando claramente lo estamos subutilizando. Espero este año, poder hacer el esfuerzo de migrar nuestras aplicaciones a otra base de datos (Postgres es la que tiene la ventaja, y ahora con lo de MySQL, pues más...).