October 21st, 2009 by mcicchinelli | Tags: ,

Requerimientos

Javamail-1-4-2 o superior
Java 1.6

Nota: Si se quiere mandar mail con una versión anterior de java es necesario incluir otra dependencia:
JavaBeans Activation Framework

Utilización

Clases importantes de JavaMail

Session: De alguna forma representa la conexión con el servidor de correo. Hay que obtenerla pasándole los parámetros de configuración para el servidor de correo según se requiera.
Transport: Clase para el envío de mensajes. Se obtiene llamando al método getTransport() de la clase Session.
MimeMessage: El mensaje.
Read more…

October 5th, 2009 by molocco | Tags:

A partir de hoy, Mariano C. se me ha “unido” para postear alguna que otra “experiencia de código” en este blog, por lo que, con el paso del tiempo, se verán más categorías y más posts ;) .

October 4th, 2009 by molocco | Tags: , , ,

Días atras tuve la necesidad de quitar el foco de un objeto en particular, preguntando por ahí recibí siempre la misma recomendación: “asigná el foco a otra objeto”. Luego de esto me encontre dentro de un componente en el cual no tenia ningún otro objecto al cual asignarle el foco, por ello tuve que buscar un poco más y encontre que el foco puede ser manejado desde una propiedad del objeto stage.

Veamos un ejemplo para asignarle el foco a un boton:

1
2
3
<mx:Button id="btnOk" label="Ok" />
...
stage.focus = this.btnOk;

Y si simplemente queremos quitar el foco de cualquier objeto:

1
stage.focus = null;
September 28th, 2009 by molocco | Tags: , ,

Muchas veces, usando componentes en Mxml vemos que se puede hacer lo siguiente:

1
<mx:Textarea>Texto</mx:Textarea>

Y nos preguntamos: ¿Cómo se puede lograr esto?

Gracias a DefaultProperty, esto es bastante sencillo, basta con ponerlo dentro de nuestra clase:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
package misComponentes
{
     import mx.controls.Button;
     [DefaultProperty("textoDefault")]
     public class MiBoton extends Button {
          public function MiBoton() {
               super();
          }
          public function set textoDefault(value:String):void {
               if (value!=null)
                    label=value;
          }
          public function get textoDefault():String {
               return label;
          }
     }
}

Eso es todo, luego podrán hacer:

1
<misComponentes:MiBoton>Label del Botón</misComponentes:MiBoton>
September 28th, 2009 by molocco | Tags: , , ,

Realizar esto es muy sencillo, solo requiere unos pocos pasos. En esta ocasión utilizamos la versión 1.5 de Adobe AIR.
Primero creamos un proyecto (creo que todos saben hacer esto :P ), luego agregaremos un par de archivos xml y lo configuraremos como mas se ajuste a nuestra aplicacion.

El primer xml nos servirá para configurar el autoupdate (que pantallas queremos mostrar y lo que deseamos que se haga automáticamente). Read more…

September 28th, 2009 by molocco | Tags: , , , , , ,

Muchas veces necesitamos guardar datos de manera local en una aplicación hecha con Adobe AIR. Hay diferentes maneras de realizarlo, podríamos utilizar SharedObjects o una base de datos como SQLite (que trataremos en esta ocasión).

El tratamiento es muy simple y voy a ir explicándolo con codigos sencillos.

Primero necesitamos tener una conexión a la base de datos, para ello creamos una tabla llamada (por ejemplo) libros en un archivo llamado db.sqlite. El archivo lo almacenaremos en un directorio de usuario, puesto que, si lo dejamos en el directorio de instalación de la aplicación no podremos interactuar con él (por razones de seguridad todos los archivos insertados en el directorio de instalación son sólo lectura).
Read more…

September 28th, 2009 by molocco | Tags: , ,

Muchas veces necesitamos mostrar el cursor de ocupado (Busy Cursor) en operaciones que no involucran llamadas a algún servicio.
La forma de hacer esto es con la clase CursorManager que nos brinda varios métodos estáticos, entre los que encontramos a:

1
CursorManager.setBusyCursor();

Utilizado para mostrar el cursor de ocupado, y:

1
CursorManager.removeBusyCursor();

Que remueve el cursor creado anteriormente.

TOP