miércoles, 27 de noviembre de 2013

Cambiar valores booleanos en la BD con CheckBox desde Grails

En nuestro día a día como programadores muchas veces nos vamos a enfrentar a la situación de idear un mecanismo para encender o apagar una bandera de alguna tabla en nuestra base de datos, seguramente hay miles de ejemplos así que aquí les muestro mi solución implementada en Grails. Lo único que necesitamos es un campo de tipo “Boolean” en alguna tabla de nuestra base de datos, en mi caso presento una tabla en pantalla con la información, a esta tabla le agregue una nueva columna donde aparece el checkBox, el código de dicha columna se verá más o menos así:
 
En el código anterior podemos destacar solo tres atributos importantes el value en el cual le asignamos el id de nuestro dominio, checked este atributo va mapeado contra el campo booleano en la tabla esto con el fin de indicar cuales están marcados y cuales no y finalmente la invocación a la función “cambiarBooleano” en el evento onChange del checkBox y el parámetro que le enviamos es el id de la entidad seleccionada. Lo que nos resta es invocar a una función remota desde JavaScript lo cual lo podemos lograr con el siguiente código:
   function cambiarBooleano(idEntidad){
      
  }
En el bloque de código anterior solo hacemos una llamada al método cambiarBooleano definido en el controlador, y ahí es donde obtendremos el registro de la entidad y le cambiaremos el valor al campo booleano.

miércoles, 11 de septiembre de 2013

Como activar el soporte para mapas en Android Virtual Device Manager


En esta entrada les mostrare un dato curioso del cual no me había percatado pero que suele sernos muy útil a la hora de desarrollar con mapas, como todos ustedes saben uno de los requisitos para poder desarrollar para Android es contar con el SDK y este a su vez contiene el famoso Android Virtual Device Manager.


Creando un emulador

Como ya es bien sabido en la siguiente pantalla nos muestra las opciones con las cuales podemos configurar nuestro emulador.


jueves, 5 de septiembre de 2013

Subiendo una aplicación Grails a Cloud Foundry parte 1


Muchas de las veces cuando terminamos una pequeña aplicación por pequeña que parezca tenemos el deseo de enseñársela (presumirla) al mundo, y en el caso de las aplicaciones hechas con tecnología Grails es un poco difícil encontrar un servidor gratuito que nos permita hacerlo, sin embargo, no es difícil ya que sí existen algunos PaaS como son Heroku, GAE, CloudFoundry, Jelastic entre otros. 

En esta ocasión hablaremos un poco acerca de Cloud Foundry la cual se define así misma como: 

The open platform as a service providing a faster and easier way to build, test, deploy and scale applications. 

lunes, 26 de agosto de 2013

Dividiendo una lista en sub listas Groovy

Hay ocasiones en las que nos encontramos con la necesidad de divir una lista en varias sub listas, recién me acaba de pasar y les comparto mi implementación:
/*obtener solo 2000 elementos por vez*/
  def subListas=[]
  def i=0
  def inicial = 0
  def final= 1999
  while(miListota.size()>20000){
     subListas[i]=new LinkedList(miListota.subList(inicial, final))
     miListota.removeAll(subListas[i])
     i++
  }
  //agregamos el resto de la lista a una nueva posición
  subListas[i]= new LinkedList(miListota)

Un compañero me sugirió este método que hace totalmente lo mismo pero sin la necesidad de quebrarnos la cabeza para implementarlo.
  miListota.collate(2000)

martes, 30 de julio de 2013

Instalar y configurar Spring Security en Grails parte 2

Esta es la continuación para terminar de configurar Spring Security en Grails, acá la primera parte

Para finalizar la configuración solo nos resta agregar los permisos a la base de datos (en un post anterior muestro como agregar datos a la BD cada vez que se carga nuestra aplicación, para esta parte nos va a ser muy útil) pongamos lo siguiente en el archivo catalogos.sql en el orden en que los pongo aquí mismo:

Primero necesitamos definir que roles tendrá nuestro sistema en este ejemplo solo habrá dos: Administrador y Usuarios

insert into rol (id, version, authority ) values (1, 0, 'ROLE_ADMINISTRADOR');
insert into rol (id, version, authority ) values (2, 0, 'ROLE_USUARIO');


Insertamos los usuarios de ejemplo

insert into usuario (id, version, username, "password", enabled, account_expired, account_locked, password_expired, nombre, apellido_paterno, apellido_materno, email, fecha_alta) values (1, 0, 'administrador', '5f4dcc3b5aa765d61d8327deb882cf99', 1, 0, 0, 0, 'Administrador', 'del', 'Sistema', 'administrador@example.com', current_timestamp);
insert into usuario (id, version, username, "password", enabled, account_expired, account_locked, password_expired, nombre, apellido_paterno, apellido_materno, email, fecha_alta) values (2, 0, 'usuario', '5f4dcc3b5aa765d61d8327deb882cf99', 1, 0, 0, 0, 'usuario', 'del', 'Sistema', 'usuario@example.com', current_timestamp);


jueves, 25 de julio de 2013

¿Como usar el Debug en Eclipse?








Actualmente me he dado cuenta que Eclipse es el IDE por excelencia de muchos desarrolladores, el cual cuenta con muchas herramientas ya preinstaladas para su integración con la mayoría de tecnologías existentes y sino se pueden agregar plugis de manera muy simple, en este video demostramos el uso del Debug que es una herramienta muy útil a la hora de buscar errores o simplemente probar el flujo de nuestro código y como muchos no saben usarlo aquí esta un video demostrativo del poder de esta herramienta.

miércoles, 17 de julio de 2013

Conociendo más a fondo el Blog hecho en Grails llamado Anelisse

En esta ocasión me he dado a la tarea de redactar esta pequeña entrada para seguir dando a conocer mi proyecto iniciando desde el primer post con lo mas general el cual pueden encontrar en “Un Blog hecho en Grails? así es y se llama Anelisse” para los que no sepan de que se trata les recomiendo seguir el enlace y después regresar.
Página principal de Anelisse


 
Esta es la página inicial y puede ser usada para mostrar contenido estático como por ejemplo los datos más importantes de alguna empresa, o contenido dinámico como pueden ser los post más votados o aquellos seleccionados por el administrador.

martes, 25 de junio de 2013

Instalar y configurar Spring Security en Grails parte 1


En este tutorial aprenderemos a instalar y configurar el plugin de Spring Security para Grails y poder usarlo de manera adecuada en nuestros proyectos, agradeciendo la colaboración de Miguel Coba por las dudas resueltas :D


Instalando el plugin de Spring Security

Para realizar la instalación del plugin (asumimos que ya tenemos un proyecto grails) simplemente necesitamos ejecutar el siguiente comando desde nuestro IDE favorito o bien desde la línea de comandos con Grails.



Configurando el plugin de Spring Security

miércoles, 5 de junio de 2013

martes, 4 de junio de 2013

Configurando un archivo sql para cargarse con el BootStrap de Grails


Muchas de las veces necesitamos meter información a la base de datos ya sea para llenar los catálogos o bien para cargar información de prueba que nos ahorra tener que seguir procesos simples pero repetitivos, el caso más común los insert hacia la base.

En este pequeño tutorial vamos a definir un archivo .sql y aprenderemos como invocarlo desde el bootstrap de grails para que se ejecute cuando termine de arrancar nuestra aplicación y meta datos a la BD. Lo primero que deberemos de hacer es crear un directorio debajo de “conf” al que llamaremos “sql” y dentro de este directorio un archivo llamado “catalogos.sql”.




viernes, 31 de mayo de 2013

Compilar y ejecutar programas en java



En este vídeo tutorial, aprenderemos: la estructura básica de una clase java, así como también veremos como compilar y ejecutar nuestros programas desde Eclipse.

martes, 28 de mayo de 2013

Características del lenguaje Java 2


En este vídeo tutorial veremos las características de Java, las cuales nos van a permitir aprender mas acerca de este gran lenguaje de programación.

lunes, 27 de mayo de 2013

Características del lenguaje Java 1


En este vídeo tutorial veremos las características de Java, las cuales nos van a permitir aprender mas acerca de este gran lenguaje de programación.

jueves, 16 de mayo de 2013

Instalar y configurar el ambiente de desarrollo Java




En este vídeo tutorial aprenderemos a configurar la variable path en nuestro sistema para poder aprovechar mejor las características de java, ademas vemos como configurar eclipse que sera nuestro IDE con el cual llevaremos este curso, así como también recomendare el uso de JCreator para principiantes.
Actualizado, ahora utilizaremos IDEA pero es exactamente lo mismo con cualquier IDE.

Explorando el mundo Groovy

Groovy
Últimamente me ha dado la locura de programar en cuanto lenguaje se me ponga en frente, es por ello que hoy toca el turno a Groovy, en este video tutorial aprenderemos a instalarlo configurarlo y hacer el clásico “Hola Mundo Groovy”.

miércoles, 15 de mayo de 2013

Historia de Java




En este vídeo tutorial veremos la introducción y presentación del curso de Java de lo básico a lo complejo así como también una muy breve historia de java.

martes, 14 de mayo de 2013

Como utilizar el Bootstrap de twitter en Grails

¿Qué es el Bootstrap de twitter?
Twitter Bootstrap es una solución flexible que ofrece muchas más potencia que el CSS normal. Conseguimos una serie de características extras como las declaraciones anidadas, mixins, operaciones y funciones de color. Es fácil de implementar en el código tan sólo incluyendo la declaración en la cabecera y usar los componentes disponibles. La evolución de Bootstrap dentro de Twitter ha sido un trabajo constante para disponer de una herramienta que les permitiera escalar más fácilmente y mantener los proyectos que iban desarrollando. Al principio de todo cada ingeniero usaba cualquier librería con la que estuviera familiarizado lo que producía graves inconsistencias al intentar crecer. Por lo tanto Twitter Bootstrapes un gran ejemplo para todos los desarrolladores que trabajamos en compañías grandes en la que es necesario disponer de un framework uniforme para ir evolucionando. Podéis echar un vistazo a todo el código en la sección que dispone Twitter en GitHub. Allí comprobaréis todo lo los archivos que lo componen por separado:
- reset.css para eliminar los elementos innecesarios.
-variables de color y preboot.less mixins para conseguir gradientes, transparencias y transiciones.
scaffolding.less elementos básicos y globales para generación de grid, diseño estructural y las diferentes plantillas de páginas.
- type.less con estilos para el cuerpo de textos, listas y tipologías versátiles.
-pattern.less elementos para navegación, modales, paneles de advertencias…
-forms.less estilos para los campos de entrada, formularios y estados de validación.
-tables.less estilos para maquetar datos tabulados.
 Mas info en: https://dev.twitter.com/blog/bootstrap-twitter 
Referencia: http://www.genbetadev.com/desarrollo-web/twitter-libera-bootstrap-su-framework-css-para-aplicaciones-web

Empezar a desarrollar en Android (Hola Mundo)



Android

Es hora de empezar a escribir código en Android pero antes de ello necesitamos algunas cosas para empezar para ello primero debemos instalar el SDK de desarrollo que nos proporciona google en la siguiente dirección: http://developer.android.com/sdk/index.html aquí lo único que debemos hacer es descargar el instalador de acuerdo a la plataforma que estemos utilizando en mi caso descargare para Windows. 

Instalando el SDK de Android 
Como único requisito antes de instalar el SDK de Android debemos tener instalado el SDK de java en nuestra computadora. Una vez que descargamos el instalador, lo ejecutamos y seguimos las instrucciones, este proceso es un poco largo y tardadito a mi me tomo poco mas de 10 minutos lo bueno de este es que no hay que configurar casi nada para poder a empezar a desarrollar. Una vez que termina el proceso de instalación nos ejecuta el SDK Manager que es un proceso que lanza la aplicación Android SDK and AVD Manager, esta utilidad nos permite tener actualizado nuestro SDK de Android ya que nos muestra las actualizaciones que google lanza y que están disponibles para que nosotros las tengamos, así como también nos permite crear dispositivos o emuladores que nos van a permitir correr nuestras aplicaciones, el Android SDK tiene la siguiente apariencia: