Anexo A Entorno de trabajo: Descripción e instalación A.1. Descripción del equipo utilizado Para la programación del software necesario para dar solución al problema propuesto se ha utilizado un equipo MacBook Air con las siguientes especificaciones: Procesador Intel Core i5 1,6GHz 4 GB de memoria RAM Sistema operativo MAC OSX Lion 10.7.2 (64 bits) Cabe destacar que, aunque la mayoría de los pasos que se van a describir a continuación son bastantes similares en un entorno con Microsoft Windows, en ese caso sería necesario instalar una versión de J2SE antes de comenzar con la instalación propuesta. 61 A.2. Herramienta Eclipse: Descripción e instalación Eclipse es un Entorno Integrado de Desarrollo, del inglés Integrated Development Environment (IDE), para todo tipo de aplicaciones libres, inicialmente desarrollado por IBM, y actualmente gestionado por la Fundación Eclipse. Aunque se trata de una herramienta diseñada principalmente para el desarrollo de aplicaciones Java, es posible añadirle nuevas funcionalidades a través de nuevos módulos. Entre sus características cabe destacar: Multiplataforma (GNU/Linux, Solaris, Mac OSX, Windows) Soporte para distintas arquitecturas (x86, x64, ...) Estructura de plug-in que hace sencillo añadirle nuevas características y funcionalidades. Control de versiones con cvs o con subversión (instalando el módulo subclipse) Utilidades de edición para facilitar la tarea del programador: Resaltado de sintaxis, autocompletado, tabulador de un bloque de código seleccionado... Para instalar correctamente esta herramienta se deben seguir los siguientes pasos: Descargamos la aplicación de la web oficial (http://www.eclipse.org/download). Se ha utilizado la versión Eclipse Classic 3.7.2 para MAC de 64 bits. Descomprimimos la aplicación y copiamos la carpeta completa en Aplicaciones. La aplicación ya está instalada. 62 Es necesario definir un directorio de trabajo. Para ello hacemos doble clic en el icono Eclipse (dentro de la carpeta Eclipse que hemos colocado en aplicaciones), y elegimos el directorio deseado. Figura A.1: Configuración del directorio de trabajo en Eclipse A.3. Instalación y configuración de Java ME SDK en Eclipse Para instalar correctamente Java ME SDK en Eclipse se deben seguir los siguientes pasos: Descargamos Java ME SDK 3.0 para MAC (http://www.oracle.com/technetwork/java/javasebusiness/downloads/javaarchive-downloads-javame-419430.html) 63 Figura A.2: Instalación de Java ME SDK 3.0 en MAC Descargamos Antenna 1.0.2 (http://sourceforge.net/projects/antenna/files/antenna/1.0.2/) Descargamos Proguard 4.4 (http://sourceforge.net/projects/proguard/files/proguard/4.4/) Instalamos Java ME SDK 3.0 para MAC que hemos descargado anteriormente. La instalación consiste en hacer doble clic sobre el fichero descargado (con extensión .dmg) y, tras aceptar la licencia, hacer clic sobre el icono del teléfono y arrastrarlo sobre el icono Applications Tras finalizar la instalación, localizamos la aplicación instalada en la carpeta Aplicaciones. Hacemos clic sobre ella con el botón derecho y seleccionamos Mostrar el contenido del paquete. Nos aparecerá una carpeta llamada Content. Esta 64 carpeta se debe copiar y pegar en otra ubicación renombrándola. En este caso, se ha pegado en el disco duro principal (Macintosh HD) y se ha renombrado a WTK3. Figura A.3: Aplicacion Java ME SDK 3.0 en la carpeta Aplicaciones Dentro de esta carpeta pegamos también los ficheros que se habían descargado previamente: antenna-bin-1.0.2. jar y proguard4.4 (este último fichero hay que descomprimirlo previamente). Ahora es necesario instalar las herramientas para desarrollar aplicaciones móviles en Eclipse. Para ello, el primer paso será abrir la aplicación Eclipse (en caso de que no estuviera ya ejecutándose). Elegiremos el directorio de trabajo que se determinó en la instalación de la aplicación Eclipse. 65 Figura A.4: Carpeta Content renombrada a WTK3 y pegada en el disco duro principal Hacemos clic en el menú Help (de la barra superior de Eclipse) y seleccionamos la opción Install New Software. En el campo Work with pegamos la siguiente dirección: http://download.eclipse.org/mtj/updates/1.1.2/stable/ y hacemos click en Add. En la ventana que aparece pulsamos Ok. Marcamos todos los elementos que aparezcan (para ello se puede hacer clic sobre Select All) y continuamos con el proceso de instalación de estos elementos pulsando el botón Next. Al finalizar la instalación nos pedirá reiniciar Eclipse. Es necesario aceptar y que la aplicación se reinicie. Una vez reiniciada la aplicación, desplegamos el menú Eclipse (de la barra superior de Eclipse) y seleccionamos la opción Preferencias. Aparece una nueva ventana con una serie de opciones en la parte derecha. 66 Figura A.5: Contenido final de la carpeta WTK3 Hacemos clic sobre la opción Java ME y configuramos la ruta adecuada para Antenna Jar (/WTK3/antenna-bin-1.0.2.jar), WTK Root(/WTK3/Resources) y Proguard Root Directory (/WTK3/proguard4.4). Desplegamos la pestaña Java ME y hacemos clic sobre Device Management. Hacemos clic sobre la opción Manual Install y seleccionamos el directorio WTK3. Aparecerá un lista de dispositivos (pueden tardar en aparecer). Hacemos clic en Finish. Tras realizar los pasos anteriores, hacemos clic en el botón OK del menú Preferences. Eclipse está correctamente configurado para comenzar a desarrollar aplicaciones con J2ME. 67 Figura A.6: Instalación de las herramientas para desarrollar aplicaciones móviles en Eclipse A.4. Inicio de un proyecto en J2ME utilizando la herramienta Eclipse Eclipse, tras configurarlo correctamente, nos permite desarrollar cómodamente aplicaciones en J2ME. Para comenzar un proyecto J2ME utilizando esta herramienta hay que seguir una serie de pasos que se detallan a continuación: Desplegamos el menú File (de la barra superior de Eclipse) y seleccionamos la opción New, Other. En el menú que aparece en pantalla seleccionamos MIDlet Project dentro de Java ME. Hacemos clic en Next y elegimos el nombre del proyecto. Hacemos clic en Next. En esta pantalla es necesario modificar Microedition Configuration, seleccionando Connected Limited Device Configuration (1.1) en el desplegable. (Ver Figura A.11). 68 Figura A.7: Configuración pestaña Java ME del menú Preferences Al hacer clic en Finish, un mensaje emergente nos ofrecerá la opción de cambiar a la perspectiva ME de Eclipse. Se debe aceptar. Si todos los pasos anteriores se han realizado correctamente aparecerá en la parte derecha de la pantalla el proyecto con el nombre que le hayamos dado. Hacemos clic en la pestaña junto al nombre del proyecto para ver las distintas carpetas que lo componen y, sobre la carpeta src hacemos clic con el botón derecho y seleccionamos New Java ME MIDlet. En el formulario que aparece elegimos el nombre del MIDlet y la interfaz. Para seleccionar la interfaz hacemos clic en Add y comenzamos a escribir CommandListener. Nos aparecerá una opción, la seleccionamos y hacemos clic en OK. Tras realizar estos pasos hacemos clic en Finish. Aparecerá dentro de la ruta src/default un fichero con el nombre elegido. En este fichero podemos escribir el código 69 Figura A.8: Pestaña Device Managemente de nuestra aplicación. Para ejecutar el proyecto es necesario configurar previamente su ejecucion. Para ellos hacemos clic con el botón derecho sobre el proyecto y seleccionamos la opción Run As/Run Configurations. En el menú de la derecha, desplegamos Emulated JavaMe Midlet y hacemos clic sobre la configuración que aparece. En la pestaña Emulation, en la opción Device seleccionamos DefaultFXTouchPhone1 del desplegable. Una vez configurada la ejecución, para ejecutar el proyecto hacemos clic sobre él y, posteriormente, sobre el botón verde de Run situado en la barra superior. A.5. Instalación de MySql Como se ha comentado anteriormente, el servidor va a estar compuesto de una base de datos MySql y una aplicación Java a 70 Figura A.9: Opción Manual Device Installation la que se conecta el cliente y que, a su vez, se conectará a la base de datos. Se va a usar MySql 5.5.21 para MAC. En esta sección se van a comentar los pasos necesarios para instalar una base de datos MySql con un servidor que nos permita acceder a ella. Los pasos son los siguientes: Descargamos MySQL 5.5.21 para MAC de la web oficial. (http://dev.mysql.com/downloads/mysql/) Al hacer doble clic sobre el fichero que se ha descargado (con extensión .dmg), aparecen una serie de aplicaciones (Figura A.15) que deben ser ejecutadas en el siguiente orden: a. mysql-5.5.21-osx10.6-x86-64.pkg (instalará MySql). Ver Figura A.16. b. MySQLStartupItem.pkg (permitirá que MySql se inicie al iniciar el ordenador). Ver Figura A.17. c. MySQL.prefPane (añadirá una opción al menú Preferencias del Sistema del sistema operativo, que nos permiti71 Figura A.10: Nuevo projecto MIDlet Figura A.11: Nuevo proyecto MIDlet, Microedition Configuration 72 Figura A.12: Mensaje emergente que nos permite cambiar a perspectiva ME de Eclipse rá configurar si el servicio se incia automáticamente al iniciar el ordenador o si lo tenemos que iniciar manualmente). Ver Figura A.18 y Figura A.19 La instalación de estos paquete no presenta ninguna dificultad. En ciertos momentos el asistente de instalación puede solicitar que se introduzca la contraseña de administrador para obtener los permisos necesarios para continuar con la instalación. 73 Figura A.13: Nuevo Java ME MIDlet Figura A.15: Contenido del paquete mysql-5.5.21-osx10.6-x86-64.dmg 74 Figura A.14: Configuración de la ejecución del proyecto A.6. Inicio de un proyecto Java en Eclipse Para desarrollar la aplicación que se ejecutará en el servidor, es necesario crear un nuevo proyecto Java en el entorno Eclipse. Los pasos a seguir son los siguientes: Ejecutamos la aplicación Eclipse, el espacio de trabajo que se elegirá será el que se creó en la sección de instalación de esta aplicación. Hacemos clic en el menú File (de la barra superior de Eclipse) y seleccionamos la opción New - Java Project. (Figura A.21) En la ventana que aparece, introducimos el nombre del proyecto y hacemos clic en Finish. (Figura A.22) Si todos los pasos anteriores se han realizado correctamente aparecerá, en la parte derecha de la pantalla, el proyecto con 75 Figura A.16: Instalación del paquete mysql-5.5.21-osx10.6-x86-64.pkg Figura A.17: Instalación de MySQLStartupItem.pkg 76 Figura A.18: Instalación de MySQL.prefPane el nombre que le hayamos dado. Hacemos clic en la pestaña junto al nombre del proyecto para desplegar las distintas carpetas que lo componen y, sobre la carpeta src, hacemos clic con el botón derecho y seleccinamos New Class. (Figura A.23). En la ventana que aparece, introducimos el nombre de la nueva clase y hacemos clic en Finish. (Figura A.24). Aparecerá dentro de la ruta src/default un fichero con el nombre elegido. En este fichero podemos escribir el código de nuestra aplicación. En este proyecto que acabamos de crear podemos empezar a desarrollar nuestra aplicación Java. Sin embargo, si esta aplicación va a hacer llamadas a una base de datos (como es el caso que 77 Figura A.19: Preferencias del Sistema tras instalar MySQL.prefPane Figura A.20: Opción del menú Preferencias del Sistema que nos permite activar y parar el servidor MySQL 78 Figura A.21: Nuevo proyecto Java en Eclipse nos ocupa), será necesario instalar en dicho proyecto un conector adecuado a la base de datos que se desea utilizar. Este paso se explica en la siguiente sección de este documento. A.7. Instalación del conector MySql para Java en Eclipse La aplicación Java que se ejecuta en el servidor necesita conectarse a la base de datos MySql para obtener información sobre los usuarios. Para que esta conexión sea posible es necesario incluir un conector MySql entre las librerías de proyecto Java en Eclipse. Los pasos a realizar son los siguientes: Descargamos el conector de la base de datos. http://dev.mysql.com/downloads/connector/j/3.0.html En Eclipse hacemos clic con el botón derecho sobre el proyecto y seleccionamos la opción Properties. En la pestaña Java 79 Figura A.22: Ventana de creación de un proyecto Java en Eclipse 80 Figura A.23: Nuevo clase en un proyecto Java en Eclipse Build Path hacemos clic sobre Add External JARs, seleccionamos el conector y aceptamos. (Figura A.25). A.8. Creación de la base de datos desde el proyecto Java en Eclipse Una vez instalado el conector (paso explicado en la sección anterior), antes de poder usar la base de datos, es necesario crearla. El siguiente código permite crear una base de datos llamada Usuarios. Este código debe copiarse en una clase Java de un proyecto Eclipse, pero sólo debe ejecutarse una vez. Es muy importante que, antes de ejecutar el código, se inicie el servidor de la base de datos desde el menú de Preferencias del Sistema. 1 2 3 4 5 6 import import import public java.io.BufferedReader; java.io.InputStreamReader; java.sql.∗; class Prueba { public static void main(String[] args) { System.out.println("Database creation example!"); 81 Figura A.24: Ventana de creación de una nueva clase en un proyecto Java en Eclipse 82 Figura A.25: Conector MySql incluído en un proyecto Java en Eclipse 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 } } Connection con = null; try{ Class.forName("com.mysql.jdbc.Driver"); con = DriverManager.getConnection ("jdbc:mysql://localhost:3306/test","root ",""); try{ Statement st = con.createStatement(); String database = "Usuarios"; st.executeUpdate("CREATE DATABASE "+database); System.out.println("1 row(s) affacted"); } catch (SQLException s){ System.out.println("SQL statement is not executed!"); } } catch (Exception e){ e.printStackTrace(); } Tras su ejecución podemos comprobar, utilizando el programa DBVisualizer, que la base de datos se ha creado correctamente. (Figura A.26). 83 Figura A.26: DBVisualizer. Comprobación de que la base de datos Usuarios ha sido creada correctamente. 84