26 noviembre 2013

[Anecdota] La vida más sencilla con servicios online: Reniec, PNP, Interbank y Google

El día de hoy tuve la mala fortuna de extraviar mi billetera (o cartera como se le llama en otros países) con mis documentos, tarjetas y dinero, por cierto, fue la primera vez que me ocurre un hecho de esta naturaleza en mi vida. Sin embargo, ante la situación en que me vi envuelto era necesario actuar con cierta prontitud, asi que armado de mi laptop y mi modem, empecé a realizar los trámites de modo virtual:

La denuncia, para evitar cualquier incidente por la pérdida del DNI es necesario acercarse a una comisaría para efectuar una denuncia, sin embargo, la Policía Nacional del Perú (@policíaperu) ha habilitado en su servicio de comisaría virtual la opción de Pre-Registro de Denuncias, mediante el cual puedes registrar una denuncia indicando la comisaría en la que se realizará la confirmación, de esta forma basta con acercarte a la comisaría y confirmar la denuncia pre-registrada. También sirve para realizar denuncias anónimas.

El bloqueo de tarjetas, una simple llamada desde mi celular al 013119000, y unas cuantas pulsaciones en el teclado de mi celular, fueron suficiente para hacer el bloqueo rápido de todas mis tarjetas vía la banca celular de Interbank (@interbank), no tuve necesidad de conversar con nadie, lo cual me parece genial porque ante una emergencia la acción es inmediata. Quizá algo para mejorar es dejar el número de la central telefónica un poco más visible en su web.

El duplicado de mi documento de identidad, tiempo atrás cuando se me venció mi DNI (sí señores, acá en el Perú, los DNIs vencen), tuve que acercarme hasta la oficina misma de la Reniec (@reniecdigital) para realizar un trámite que me hacía perder varias horas de largas colas; hoy en día eso ya cambió, gracias a los Servicios en línea, disponibles en su portal web puedo de forma sencilla y rápida realizar el trámite para la obtención del duplicado que estaba necesitando. Basta con realizar el pago correspondiente en cualquier agencia del Banco de la Nación o BCP y listo, con los datos de la boleta, el trámite sale en un, dos por tres! Y el servicio te da la fecha aproximada de entrega y un número de consulta :D

La impresión de la constancia. Bueno, del trámite anterior era necesario imprimir una constancia y San Google (@google), fue de mucha ayuda, gracias a su servicio Google Cloud Print (aun en beta), el cual permite agregar una impresora adicional y puedo, enviar mi documento para su impresión a una impresora remota conectada a la nube o bien enviar el documento en formato PDF a mi Google Drive. Un magnifico servicio.

Y así, muchas cosas que antes se hacían de forma presencial o manual, hoy en día se ven aligeradas gracias a los servicios online!! :D

Creando un Custom Portlet Service con Maven y sin RAD

En la entrega anterior les mostré como desarrollar un portlet básico sin RAD. En esta ocasión nos toca ver cómo desarrollar un Custom Portlet Service para WebSphere Portal, obviamente sin RAD y empleando Maven.

Lo primero que vamos a necesitar es el archivo public_spi.jar que contiene algunas de las clases e interfaces que requeriremos para desarrollar el portlet service. Habitualmente este archivo se encuentra en una ruta similar a esta: /doc/compile.

Luego, nos valemos de Maven para agregar este jar a nuestro repositorio de dependencias.

mvn install:install-file -Dfile=public_spi.jar -DgroupId=com.ibm /
-DartifactId=public-spi -Dversion=1.0 -Dpackaging=jar
A continuación, creamos un proyecto simple con Maven y agregamos las dependencias correspondientes a la api portlet 2.0 y al jar que acabamos de agregar.

Ahora crearemos una interfaz que contendrá la declaración de métodos públicos que se expondrán a través del servicio y, obviamente, crearemos también la clase que la implementará:


En este punto, debemos generar el JAR del servicio para luego registrarlo en el Portal.

  • Colocamos el jar en la ruta: /wp_profile/PortalServer/config
  • En la consola del WAS del Portal, registraremos el portlet service valiéndonos del Resource Environment Provider llamado "WP PortletServiceRegistryService".
  • Creamos  un nuevo registro en los Custom Properties. En el nombre ingresamos jndi.pe.apiconz.portletsapps.portletserviceexample.MyPortletService y en el valor colocamos el nombre completo de la clase que lo implementa: pe.apiconz.portletsapps.portletserviceexample.MyPortletServiceImpl.
  • Guardamos y reiniciamos el portal.
La invocación del portlet service que acabamos de crear sería como sigue:


18 noviembre 2013

Google Maps - Ejemplo sencillo de multimarcadores

Aquí les dejo un ejemplo sencillo de multimarcadores empleando Google Maps API. Para la visualización de este ejemplo necesitan una API KEY que pueden generar en http://cloud.google.com/console.

El ejemplo debería verse de la siguiente manera:
El código lo dejo a continuación:

14 noviembre 2013

AngularJS - Obteniendo publicaciones de Google+ a través de un servlet

Recientemente estoy probando el uso de AngularJS, un framework de javascript que es mantenido por Google. Me puse a experimentar cómo invocar a un servlet para que me provea datos por medio de un controller de angularjs. En este escenario estoy trayendo las publicaciones de un perfil de Google+.

Lo primero que hice fue construir mi servlet, efectuando la invocación al servicio. Debido a la facilidad que tiene AngularJS para trabajar con JSON, la respuesta que viene de la invocación la paso a dicho formato. Observen también la manera en que, a través del controller, se realiza la invocación al servlet. Finalmente, itero el resultado empleando el forEach con AngularJS.

A continuación, les dejo el código de este ejemplo. Si tienen algún comentario, consulta o ven alguna mejora que se le pueda hacer, siéntanse libres de escribirme.

Algunos enlaces que me fueron de utilidad:

Si recién vas a iniciar, te recomiendo el tutorial que se encuentra en la misma página de AngularJS:

18 octubre 2013

Exploring Reverse AJAX (enlace

Encontré este interesante artículo, muy didáctico, para entender el concepto de Reverse AJAX

Exploring Reverse AJAX

17 octubre 2013

Creando portlets sin RAD (Eclipse+Maven)

Hola a todos, en esta ocasión iré señalando los pasos que seguí para crear un portlet básico usando Eclipse y Maven.

El primer paso es crear una aplicación web con Maven empleando el archetype "maven-archetype-webapp". Para este ejemplo me estoy apoyando en el wizard que viene incluído en mi Eclipse.


Parece tratarse de un bug, pero al crear el proyecto no me muestra la carpeta "src/main/java" para que aparezca siempre debo crear la carpeta "java" tal como lo señalo en la siguiente figura:



Modifico mi archivo POM.xml y le agrego las dependencias correspondientes.
Luego, creo un archivo portlet.xml similar al que aparece a continuación:

Finalmente, creo mi portlet HelloWorld.

He subido mi ejemplo en GitHub

He subido este ejemplo en mi repositorio en Github.

15 agosto 2013

Activar opciones para el desarrollador en Android 4.2+

Cuando trataba de probar una app en mi nuevo Nexus y no encontraba cómo activar el modo de Depuración. Pues había que entrar a la opción Acerca del tablet y pulsar varias veces sobre Número de Compilación. Una pequeña alerta nos reconocerá como desarrolladores y con ello tendremos habilitada las Opciones del Programador.

 

Aca les dejo un pequeñísimo video en el que activo dicha opción:



26 julio 2013

[apps] RemoteDroid - Tu droide como trackpad

De casualidad me encontré con esta aplicación llamada RemoteDroid, es una aplicación sencilla que te permite usar tu equipo Android como trackpad/teclado remoto. Basta con descargarte a tu PC un zip desde la misma página web, desempaquetarlo y ejecutar el archivo correspondiente (funciona tanto en Windows como Linux).

Por el lado del equipo Android, basta con instalar la aplicación RemoteDroid que está en el Play Store, ingresamos la IP de la PC y listo.

Fuente: RemoteDroid

04 marzo 2013

Coding Dojo en Everis Peru, los pasado 7 y 21 de Febrero

Hola a todos! Los días 7 y 21 de febrero organicé un Coding Dojo Multilenguaje en Everis Perú y quería compartir con ustedes algunas de las fotos que tomé.
Everis Perú - Coding Dojo #1

Les comparto también la presentación con la info de la kata que resolvimos en estas dos sesiones:

13 febrero 2013

WebSphere Portal 7 - Cambiar el titulo por defecto


Para cambiar el título de las páginas del portal, en la siguiente ruta:
/portal7/WebSphere/PortalServer/ui/wp.ui/shared/app
Ubicamos el archivo: 
wp.ui.jar
Y dentro ubicaremos el siguiente archivo properties (dependiendo del idioma): 
engine_en.properties