Introducción a Java 2 Platform, Micro Edition...

27
Mi primera aplicación para teléfono móvil basada en Java (J2ME) con NetBeans Proyecto AjpdSoft http://www.ajpdsoft.com/modules.php?name=News&file=article&sid=437[22/07/2013 01:36:29 p.m.] Nuevo usuario Inicio : Descargas : Trucos VB.Net, PHP, Delphi : Manuales : Código Fuente Principal · Inicio · Buscar · Contactar · Descargas · Enciclopedia · Estadísticas · Eventos · Foros · Manuales, Artículos · Nuestra historia · Quiénes somos · Recomiéndanos · Temas · Top 10 · Trucos Delphi, PHP, Java, Visual Studio · Tu cuenta Descargas Términos enciclopedias Eventos Julio D L M M J V S 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 188 Programación : Mi primera aplicación para teléfono móvil basada en Java (J2ME) con NetBeans Os explicamos en este artículo cómo desarrollar aplicaciones para móviles, PDAs (dispositivos electrónicos con capacidades reducidas en general). Para ello os explicamos cómo preparar un equipo con Windows 7 como sistema operativo, cómo instalar NetBeans 6.7.1 (entorno de desarrollo) y los componentes necesarios: NetBeans Mobility Pack y Sun Java Wireless Toolkit para desarrollar aplicaciones para móviles, PDAs, etc. Introducción a Java 2 Platform, Micro Edition (J2ME). Configuraciones. Perfiles. Máquinas Virtuales J2ME: KVM, CVM. MIDlets. Entorno de desarrollo NetBeans, instalación de los componentes necesarios para realizar aplicaciones Java para móviles. Instalación de JDK 6 Update 17. Instalación de NetBeans 6.7.1. Instalación de NetBeans Mobility Pack. Instalación de Sun Java Wireless Toolkit 2.5.2_01. Cómo realizar mi primera aplicación para teléfono móvil . Creación de un nuevo proyecto JavaME Mobile Application en NetBeans. Vistas del IDE NetBeans: Source, Screen y Flow. Vista Flow Design. Vista Screen Design. Vista Source. Compilar y probar la aplicación (MIDlet) en el emulador. Ficheros JAR y JAD. Código fuente (source code) en Java de la aplicación para móvil . Artículos relacionados. Créditos. Introducción a Java 2 Platform, Micro Edition (J2ME) Java 2 Platform, Micro Edition (J2ME) es un entorno de desarrollo robusto y flexible enfocado a la aplicación de la tecnología Java en dispositivos electrónicos con capacidades computacionales y gráficas muy reducidas, tales como teléfonos móviles, PDAs (Personal Digital Assistants o asistentes personales digitales), electrodomésticos inteligentes, TV, impresoras, etc. Esta edición tiene unos componentes básicos que la diferencian de las otras versiones( Java 2 Platform, Enterprise Edition J2EE y Java 2 Platform, Standard Edition J2SE), como el uso de una máquina virtual denominada KVM (Kilo Virtual Machine, debido a que requiere sólo unos pocos Kilobytes de memoria para funcionar) en vez del uso de la JVM (Java Virtual Machine) clásica, inclusión de un pequeño y rápido recolector de basura. Las tecnologías J2ME contienen un JRE altamente optimizado, especialmente desarrollado para el mercado de gran consumo, abarcan una amplia gama de aparatos de tamaño muy reducido y permiten ejecutar programas de seguridad, conectividad y utilidades en tarjetas inteligentes, buscapersonas, sintonizadores de TV y otros pequeños electrodomésticos. Las tecnologías J2ME representan únicamente una parte de la gama de productos de software de Java. Las plataformas Java relacionadas son la Plataforma Java 2, Edición estándar (plataforma J2SE) y la Plataforma Java 2, Edición empresa (plataforma J2EE). La tecnología Java ofrece, asimismo, métodos de creación de servicios Web, transferencia de información XML, numerosos protocolos de red, kits de herramientas y la aplicación Java Web Start. Aunque sería ideal contar con la API completa de J2SE disponible en un dispositivo móvil, no es algo realista. Por ejemplo, un teléfono móvil con su pantalla limitada no puede soportar toda la funcionalidad disponible en la AWT, que es la principal interfaz gráfica de usuario (GUI) que da Java. J2ME se introdujo precisamente dirigido hacia todos esos dispositivos que caen fuera del ámbito de J2SE y J2EE. Las capacidades de este tipo de dispositivos pueden variar mucho de unos a otros. Una única plataforma de Java claramente no encajaría adecuadamente con todos estos dispositivos. Es por ello que J2ME introduce dos nuevos conceptos, las configuraciones y los perfiles. Configuraciones Una configuración define una plataforma Java para un amplio rango de dispositivos. Está directamente relacionada con una JVM. De hecho, una configuración específica define las características del lenguaje Java y las librerías de la JVM que serán utilizadas. La decisión acerca de qué configuración aplicar sobre un dispositivo se basa principalmente en la disponibilidad y capacidades de memoria, pantalla, conexión de red y procesador de dicho dispositivo. Las características típicas de aquellos dispositivos que se ajustan a cada una de las actuales conguraciones son: CDC: Connected Device Conguration, con las siguientes características mínimas: Enlaces Relacionados · Java en estado puro · Aplicación móvil Netbeans · MySQL con JSP, Tomcat y JDBC · Aplicación con Java y Eclipse · Letra DNI con Java · Más Acerca de Java · Noticias/artículos de ajpdsoft Noticia/artículo más leída sobre Java: Como crear una aplicación con Java y Eclipse Votos del Artículo Puntuación Promedio: 4.66 votos: 12 Por favor tómate un segundo y vota por este artículo: Opciones Enviar a un Amigo Últimas Descargas · AjpdSoft Acceso PostgreSQL con Lazarus x64 · Ejemplo acceso nativo a SQLite con ADO.Net en C# .Net · AjpdSoft Acceso MySQL Android · AjpdSoft Acceso SQLite C# ADO.NET · AjpdSoft Acceso MySQL con ADO.NET en C# · AjpdSoft Gestión Integral código fuente Delphi · AjpdSoft Indexar Texto Últimos · DATE_FORMAT(fecha, formato) Enc.: Funciones MySQL · SOAP Enc.: Informática · CSRF Enc.: Informática · SIG Enc.: Informática · Ruby Enc.: Informática · DATEDIFF (fecha1, fecha2) Enc.: Funciones MySQL · DaysBetween (fecha1, fecha2) Enc.: Funciones Delphi Proyecto AjpdSoft Me gustaMe gusta Me gustaMe gusta Te gusta esto.518

Transcript of Introducción a Java 2 Platform, Micro Edition...

  • Mi primera aplicacin para telfono mvil basada en Java (J2ME) con NetBeans Proyecto AjpdSoft

    http://www.ajpdsoft.com/modules.php?name=News&file=article&sid=437[22/07/2013 01:36:29 p.m.]

    Nuevo usuario Inicio : Descargas : Trucos VB.Net, PHP, Delphi : Manuales : Cdigo Fuente

    Principal

    Inicio Buscar Contactar Descargas Enciclopedia Estadsticas Eventos Foros Manuales, Artculos Nuestra historia Quines somos Recomindanos Temas Top 10 Trucos Delphi, PHP,Java, Visual Studio Tu cuenta

    Descargas

    Trminos enciclopedias

    Eventos

    Julio

    D L M M J V S1 2 3 4 5 6

    7 8 9 10 11 12 13

    14 15 16 17 18 19 20

    21 22 23 24 25 26 27

    28 29 30 31

    188

    Programacin: Mi primera aplicacin para telfono mvil basada en Java (J2ME) con NetBeans

    Os explicamos en este artculo cmo desarrollar aplicaciones para mviles, PDAs (dispositivos electrnicos con capacidades reducidas engeneral). Para ello os explicamos cmo preparar un equipo con Windows 7 como sistema operativo, cmo instalar NetBeans 6.7.1 (entornode desarrollo) y los componentes necesarios: NetBeans Mobility Pack y Sun Java Wireless Toolkit para desarrollar aplicaciones para mviles,PDAs, etc.

    Introduccin a Java 2 Platform, Micro Edition (J2ME).Configuraciones.Perfiles.Mquinas Virtuales J2ME: KVM, CVM.MIDlets.

    Entorno de desarrollo NetBeans, instalacin de los componentes necesarios para realizar aplicaciones Java para mviles.Instalacin de JDK 6 Update 17.Instalacin de NetBeans 6.7.1.Instalacin de NetBeans Mobility Pack.Instalacin de Sun Java Wireless Toolkit 2.5.2_01.

    Cmo realizar mi primera aplicacin para telfono mvil.Creacin de un nuevo proyecto JavaME Mobile Application en NetBeans.Vistas del IDE NetBeans: Source, Screen y Flow.

    Vista Flow Design.Vista Screen Design.Vista Source.

    Compilar y probar la aplicacin (MIDlet) en el emulador.Ficheros JAR y JAD.Cdigo fuente (source code) en Java de la aplicacin para mvil.

    Artculos relacionados.Crditos.

    Introduccin a Java 2 Platform, Micro Edition (J2ME)Java 2 Platform, Micro Edition (J2ME) es un entorno de desarrollo robusto y flexible enfocado a la aplicacin de la tecnologa Java endispositivos electrnicos con capacidades computacionales y grficas muy reducidas, tales como telfonos mviles, PDAs (Personal DigitalAssistants o asistentes personales digitales), electrodomsticos inteligentes, TV, impresoras, etc. Esta edicin tiene unos componentesbsicos que la diferencian de las otras versiones( Java 2 Platform, Enterprise Edition J2EE y Java 2 Platform, Standard Edition J2SE), comoel uso de una mquina virtual denominada KVM (Kilo Virtual Machine, debido a que requiere slo unos pocos Kilobytes de memoria parafuncionar) en vez del uso de la JVM (Java Virtual Machine) clsica, inclusin de un pequeo y rpido recolector de basura.

    Las tecnologas J2ME contienen un JRE altamente optimizado, especialmente desarrollado para el mercado de gran consumo, abarcan unaamplia gama de aparatos de tamao muy reducido y permiten ejecutar programas de seguridad, conectividad y utilidades en tarjetasinteligentes, buscapersonas, sintonizadores de TV y otros pequeos electrodomsticos. Las tecnologas J2ME representan nicamente unaparte de la gama de productos de software de Java. Las plataformas Java relacionadas son la Plataforma Java 2, Edicin estndar(plataforma J2SE) y la Plataforma Java 2, Edicin empresa (plataforma J2EE). La tecnologa Java ofrece, asimismo, mtodos de creacin deservicios Web, transferencia de informacin XML, numerosos protocolos de red, kits de herramientas y la aplicacin Java Web Start.

    Aunque sera ideal contar con la API completa de J2SE disponible en un dispositivo mvil, no es algo realista. Por ejemplo, un telfonomvil con su pantalla limitada no puede soportar toda la funcionalidad disponible en la AWT, que es la principal interfaz grfica de usuario(GUI) que da Java. J2ME se introdujo precisamente dirigido hacia todos esos dispositivos que caen fuera del mbito de J2SE y J2EE. Lascapacidades de este tipo de dispositivos pueden variar mucho de unos a otros.

    Una nica plataforma de Java claramente no encajara adecuadamente con todos estos dispositivos. Es por ello que J2ME introduce dosnuevos conceptos, las configuraciones y los perfiles.

    Configuraciones

    Una configuracin define una plataforma Java para un amplio rango de dispositivos. Est directamente relacionada con una JVM. De hecho,una configuracin especfica define las caractersticas del lenguaje Java y las libreras de la JVM que sern utilizadas.

    La decisin acerca de qu configuracin aplicar sobre un dispositivo se basa principalmente en la disponibilidad y capacidades de memoria,pantalla, conexin de red y procesador de dicho dispositivo.

    Las caractersticas tpicas de aquellos dispositivos que se ajustan a cada una de las actuales conguraciones son:

    CDC: Connected Device Conguration, con las siguientes caractersticas mnimas:

    Enlaces Relacionados

    Java en estado puro Aplicacin mvilNetbeans MySQL con JSP, Tomcaty JDBC Aplicacin con Java yEclipse Letra DNI con Java Ms Acerca de Java Noticias/artculos deajpdsoft

    Noticia/artculo msleda sobre Java:

    Como crear una aplicacincon Java y Eclipse

    Votos del Artculo

    Puntuacin Promedio:4.66

    votos: 12

    Por favor tmate unsegundo y vota por este

    artculo:

    Opciones

    Enviar a un Amigo

    ltimas Descargas AjpdSoft AccesoPostgreSQL con Lazarusx64

    Ejemplo acceso nativo aSQLite con ADO.Net en C#.Net

    AjpdSoft Acceso MySQLAndroid

    AjpdSoft Acceso SQLiteC# ADO.NET

    AjpdSoft Acceso MySQLcon ADO.NET en C#

    AjpdSoft Gestin Integralcdigo fuente Delphi

    AjpdSoft Indexar Texto

    ltimos DATE_FORMAT(fecha,

    formato) Enc.: Funciones MySQL

    SOAP Enc.: Informtica

    CSRF Enc.: Informtica

    SIG Enc.: Informtica

    Ruby Enc.: Informtica

    DATEDIFF (fecha1, fecha2) Enc.: Funciones MySQL

    DaysBetween (fecha1,fecha2)

    Enc.: Funciones Delphi

    Proyecto AjpdSoft

    Me gustaMe gusta

    Me gustaMe gustaTe gusta esto.518

    http://www.ajpdsoft.com/modules.php?name=News&new_topic=21http://www.ajpdsoft.com/http://www.ajpdsoft.com/modules.php?name=Your_Account&op=new_userhttp://www.ajpdsoft.com/http://www.ajpdsoft.com/modules.php?name=Downloadshttp://www.ajpdsoft.com/modules.php?name=Contenthttp://www.ajpdsoft.com/modules.php?name=Stories_Archive&sa=show_allhttp://www.ajpdsoft.com/modules.php?name=Downloads&d_op=viewdownload&cid=10http://www.ajpdsoft.com/http://www.ajpdsoft.com/modules.php?name=Searchhttp://www.ajpdsoft.com/modules.php?name=Contactarhttp://www.ajpdsoft.com/modules.php?name=Downloadshttp://www.ajpdsoft.com/modules.php?name=Encyclopediahttp://www.ajpdsoft.com/modules.php?name=Statisticshttp://www.ajpdsoft.com/modules.php?name=NuCalendarhttp://www.ajpdsoft.com/modules.php?name=Foroshttp://www.ajpdsoft.com/modules.php?name=Stories_Archivehttp://www.ajpdsoft.com/modules.php?name=Historiahttp://www.ajpdsoft.com/modules.php?name=Quienes_Somoshttp://www.ajpdsoft.com/modules.php?name=Recommend_Ushttp://www.ajpdsoft.com/modules.php?name=Topicshttp://www.ajpdsoft.com/modules.php?name=Tophttp://www.ajpdsoft.com/modules.php?name=Contenthttp://www.ajpdsoft.com/modules.php?name=Contenthttp://www.ajpdsoft.com/modules.php?name=Your_Accounthttp://www.ajpdsoft.com/modules.php?name=NuCalendar&op=ShowDay&day=2&month=07&year=2013http://www.ajpdsoft.com/modules.php?name=NuCalendar&op=ShowDay&day=6&month=07&year=2013http://www.ajpdsoft.com/modules.php?name=NuCalendar&op=ShowDay&day=18&month=07&year=2013http://www.ajpdsoft.com/modules.php?name=NuCalendar&op=ShowDay&day=21&month=07&year=2013http://www.ajpdsoft.com/modules.php?name=NuCalendar&op=ShowDay&day=23&month=07&year=2013http://www.ajpdsoft.com/modules.php?name=NuCalendar&op=ShowDay&day=24&month=07&year=2013http://www.ajpdsoft.com/modules.php?name=News&file=categories&op=newindex&catid=11http://www.ajpdsoft.com/modules.php?name=News&file=article&sid=430http://www.ajpdsoft.com/modules.php?name=News&file=categories&op=newindex&catid=7http://www.ajpdsoft.com/modules.php?name=Encyclopedia&op=content&tid=770http://www.ajpdsoft.com/modules.php?name=News&file=article&sid=303http://www.ajpdsoft.com/modules.php?name=News&file=article&sid=287http://www.ajpdsoft.com/modules.php?name=News&file=article&sid=287http://www.ajpdsoft.com/modules.php?name=news&file=article&sid=270http://www.ajpdsoft.com/modules.php?name=news&file=article&sid=270http://www.ajpdsoft.com/modules.php?name=Content&pa=showpage&pid=244http://www.ajpdsoft.com/modules.php?name=Search&topic=21http://www.ajpdsoft.com/modules.php?name=Search&author=ajpdsofthttp://www.ajpdsoft.com/modules.php?name=Search&author=ajpdsofthttp://www.ajpdsoft.com/modules.php?name=News&file=article&sid=270http://www.ajpdsoft.com/modules.php?name=News&file=article&sid=270http://www.ajpdsoft.com/modules.php?name=News&file=friend&op=FriendSend&sid=437http://www.ajpdsoft.com/modules.php?name=Downloads&d_op=viewdownloaddetails&lid=309http://www.ajpdsoft.com/modules.php?name=Downloads&d_op=viewdownloaddetails&lid=309http://www.ajpdsoft.com/modules.php?name=Downloads&d_op=viewdownloaddetails&lid=309http://www.ajpdsoft.com/modules.php?name=Downloads&d_op=viewdownloaddetails&lid=307http://www.ajpdsoft.com/modules.php?name=Downloads&d_op=viewdownloaddetails&lid=307http://www.ajpdsoft.com/modules.php?name=Downloads&d_op=viewdownloaddetails&lid=307http://www.ajpdsoft.com/modules.php?name=Downloads&d_op=viewdownloaddetails&lid=306http://www.ajpdsoft.com/modules.php?name=Downloads&d_op=viewdownloaddetails&lid=306http://www.ajpdsoft.com/modules.php?name=Downloads&d_op=viewdownloaddetails&lid=308http://www.ajpdsoft.com/modules.php?name=Downloads&d_op=viewdownloaddetails&lid=308http://www.ajpdsoft.com/modules.php?name=Downloads&d_op=viewdownloaddetails&lid=305http://www.ajpdsoft.com/modules.php?name=Downloads&d_op=viewdownloaddetails&lid=305http://www.ajpdsoft.com/modules.php?name=Downloads&d_op=viewdownloaddetails&lid=304http://www.ajpdsoft.com/modules.php?name=Downloads&d_op=viewdownloaddetails&lid=304http://www.ajpdsoft.com/modules.php?name=Downloads&d_op=viewdownloaddetails&lid=303http://www.ajpdsoft.com/modules.php?name=Downloads&d_op=viewdownloaddetails&lid=303http://www.ajpdsoft.com/modules.php?name=Encyclopedia&op=content&tid=1135http://www.ajpdsoft.com/modules.php?name=Encyclopedia&op=content&tid=1135http://www.ajpdsoft.com/modules.php?name=Encyclopedia&op=list_content&eid=15http://www.ajpdsoft.com/modules.php?name=Encyclopedia&op=content&tid=1134http://www.ajpdsoft.com/modules.php?name=Encyclopedia&op=list_content&eid=1http://www.ajpdsoft.com/modules.php?name=Encyclopedia&op=content&tid=1133http://www.ajpdsoft.com/modules.php?name=Encyclopedia&op=list_content&eid=1http://www.ajpdsoft.com/modules.php?name=Encyclopedia&op=content&tid=1132http://www.ajpdsoft.com/modules.php?name=Encyclopedia&op=list_content&eid=1http://www.ajpdsoft.com/modules.php?name=Encyclopedia&op=content&tid=1131http://www.ajpdsoft.com/modules.php?name=Encyclopedia&op=list_content&eid=1http://www.ajpdsoft.com/modules.php?name=Encyclopedia&op=content&tid=1130http://www.ajpdsoft.com/modules.php?name=Encyclopedia&op=list_content&eid=15http://www.ajpdsoft.com/modules.php?name=Encyclopedia&op=content&tid=1129http://www.ajpdsoft.com/modules.php?name=Encyclopedia&op=content&tid=1129http://www.ajpdsoft.com/modules.php?name=Encyclopedia&op=list_content&eid=12http://www.facebook.com/proyectoajpdsofthttp://www.facebook.com/proyectoajpdsoft

  • Mi primera aplicacin para telfono mvil basada en Java (J2ME) con NetBeans Proyecto AjpdSoft

    http://www.ajpdsoft.com/modules.php?name=News&file=article&sid=437[22/07/2013 01:36:29 p.m.]

    Consejos

    Lenguajes

    Selecciona Idioma de laInterfaz:

    Spanish

    Webs recomendadas

    Orasite.com

    Coloca tu web aqu

    Language english

    English

    Un mnimo de 512 kilobytes de memoria para ejecutar Java.Un mnimo de 256 kilobytes de memoria para ejecucin de programas.Conexin de red, posiblemente persistente y con gran ancho de banda.

    CLDC: Connected Limited Device Conguration, con los siguientes requisitos mnimos:128 kilobytes de memoria para ejecutar Java.32 kilobytes de memoria para ejecucin de programas.Una GUI restringida.Tpicamente con suministro elctrico a travs de bateras.Conexin de red, tpicamente inalmbrica, con bajo ancho de banda y acceso intermitente.

    Perfiles

    Los perfiles son bibliotecas Java de clases especficas orientadas a implementar funcionalidades de ms alto nivel para familias especficas dedispositivos.

    Un perfil es, si se quiere ver as, como una extensin de una configuracin. Proporciona a un programador las libreras necesarias paradesarrollar una aplicacin para un tipo de dispositivo en particular. Por ejemplo, MIDP define APIs para componentes de interfaz de usuario,manejo de entrada de datos y eventos, almacenamiento persistente, comunicaciones y temporizadores, todo ello teniendo en cuenta laslimitaciones de pantalla y memoria de los dispositivos mviles.

    El perfil es el que define las APIs que controlan el ciclo de vida de la aplicacin, interfaz de usuario, etc. Ms concretamente, un perfil es unconjunto de APIs orientado a un mbito de aplicacin determinado. Los perfiles identifican un grupo de dispositivos por la funcionalidad queproporcionan (electrodomsticos, telfonos mviles, etc.) y el tipo de aplicaciones que se ejecutarn en ellos. Las libreras de la interfazgrfica son un componente muy importante en la definicin de un perfil. Aqu nos podemos encontrar grandes diferencias entre interfaces,desde el men textual de los telfonos mviles hasta los tctiles de los PDAs.

    El perfil establece unas APIs que definen las caractersticas de un dispositivo, mientras que la configuracin hace lo propio con una familiade ellos. Esto hace que a la hora de construir una aplicacin se cuente tanto con las APIs del perfil como de la configuracin. Tenemos quetener en cuenta que un perfil siempre se construye sobre una configuracin determinada. De este modo, podemos pensar en un perfil comoun conjunto de APIs que dotan a una configuracin de funcionalidad especfica. Ya hemos visto los conceptos necesarios para entendercmo es un entorno de ejecucin en Java Micro Edition.

    Anteriormente vimos que para una configuracin determinada se usaba una Mquina Virtual Java especfica. Tenamos que con laconfiguracin CDC usbamos la CVM y que con la configuracin CLDC usbamos la KVM. Con los perfiles ocurre lo mismo. Existen unosperfiles que construiremos sobre la configuracin CDC y otros que construiremos sobre la CLDC. Para la configuracin CDC tenemos lossiguientes perfiles:

    Foundation Profile: este perfil define una serie de APIs sobre la CDC orientadas a dispositivos que carecen de interfaz grfica como,por ejemplo, decodificadores de televisin digital. Este perfil incluye gran parte de los paquetes de la J2SE, pero excluye totalmentelos paquetes java.awt Abstract Windows Toolkit (AWT) y java.swing que conforman la interfaz grfica de usuario (GUI) de J2SE.Personal Profile: es un subconjunto de la plataforma J2SE v1.3, y proporciona un entorno con un completo soporte grfico AWT. Elobjetivo es el de dotar a la configuracin CDC de una interfaz grfica completa, con capacidades web y soporte de applets Java.Este perfil requiere una implementacin del Foundation Profile.RMI Profile: este perfil requiere una implementacin del Foundation Profile, se construye encima de l. El perfil RMI soporta unsubconjunto delas APIs J2SE v1.3 RMI. Algunas caractersticas de estas APIs se han eliminado del perfil RMI debido a las limitaciones de cmputo ymemoria de los dispositivos.

    y para la configuracin CLDC tenemos los siguientes:

    PDA Profile: est construido sobre CLDC. Pretende abarcar PDAs de gama baja, tipo Palm, con una pantalla y algn tipo de puntero(ratn olpiz) y una resolucin de al menos 20000 pixels (al menos 200x100 pixels) con un factor 2:1.Mobile Information Device Profile (MIDP): este perfil est construido sobre la configuracin CLDC. Al igual que CLDC fue la primeraconfiguracin definida para J2ME, MIDP fue el primer perfil definido para esta plataforma. Este perfil est orientado para dispositivoscon las siguientes caractersticas:

    Reducida capacidad computacional y de memoria.Conectividad limitada (en torno a 9600 bps).Capacidad grfica muy reducida (mnimo un display de 96x54 pixels monocromo).Entrada de datos alfanumrica reducida.128 Kb de memoria no voltil para componentes MIDP.8 Kb de memoria no voltil para datos persistentes de aplicaciones.32 Kb de memoria voltil en tiempo de ejecucin para la pila Java.

    Los tipos de dispositivos que se adaptan a estas caractersticas son: telfonos mviles, buscapersonas (pagers) o PDAs degama baja con conectividad. El perfil MIDP establece las capacidades del dispositivo, por lo tanto, especifica las APIsrelacionadas con:

    La aplicacin (semntica y control de la aplicacin MIDP).Interfaz de usuario.Almacenamiento persistente.Trabajo en red.Temporizadores.

    Mquinas Virtuales J2ME: KVM, CVM

    Una mquina virtual de Java (JVM) es un programa encargado de interpretar cdigo intermedio (bytecode) de los programas Javaprecompilados a cdigo mquina ejecutable por la plataforma, efectuar las llamadas pertinentes al sistema operativo subyacente y observarlas reglas de seguridad y correccin de cdigo definidas para el lenguaje Java. De esta forma, la JVM proporciona al programa Javaindependencia de la plataforma con respecto al hardware y al sistema operativo subyacente. Las implementaciones tradicionales de JVM son,en general, muy pesadas en cuanto amemoria ocupada y requerimientos computacionales. J2ME define varias JVMs de referencia adecuadas al mbito de los dispositivoselectrnicos que, en algunos casos, suprimen algunas caractersticas con el fin de obtener una implementacin menos exigente.

    Ya hemos visto que existen dos configuraciones CLDC y CDC, cada una con unas caractersticas propias. Como consecuencia, cada unarequiere su propia mquina virtual. La VM (Virtual Machine) de la configuracin CLDC se denomina KVM y la de la configuracin CDC sedenomina CVM. Las caractersticas principales de cada una de ellas:

    KVM: se corresponde con la Mquina Virtual ms pequea desarrollada por Sun. Su nombre KVM proviene de Kilobyte (haciendoreferencia a la baja ocupacin de memoria, entre 40Kb y 80Kb). Se trata de una implementacin de Mquina Virtual reducida yespecialmente orientada a dispositivos con bajas capacidades computacionales y de memoria. La KVM est escrita en lenguaje C,aproximadamente unas 24000 lneas de cdigo, y fue diseada para ser:

    Pequea, con una carga de memoria entre los 40Kb y los 80 Kb, dependiendo de la plataforma y las opciones decompilacin.Alta portabilidad.Modulable.Lo ms completa y rpida posible y sin sacrificar caractersticas para las que fue diseada.

    Sin embargo, esta baja ocupacin de memoria hace que posea algunas limitaciones con respecto a la clsica Java VirtualMachine (JVM):no hay soporte para tipos en coma flotante (double, float), no existe soporte para JNI (Java Native Interface) debido a losrecursos limitados de memoria, no existen cargadores de clases (class loaders) definidos por el usuario, no se permiten losgrupos de hilos o hilos daemon, no existe la finalizacin de instancias de clases (mtodo Object.finalize()), no hay

    http://www.orasite.com/http://www.ajpdsoft.com/modules.php?name=Contactarhttp://www.ajpdsoft.com/?traducir=es-enhttp://www.ajpdsoft.com/modules.php?name=Encyclopedia&op=content&tid=770http://www.ajpdsoft.com/modules.php?name=Encyclopedia&op=content&tid=770http://www.ajpdsoft.com/modules.php?name=Encyclopedia&op=content&tid=770http://www.ajpdsoft.com/modules.php?name=Encyclopedia&op=content&tid=770http://www.ajpdsoft.com/modules.php?name=Encyclopedia&op=content&tid=770http://www.ajpdsoft.com/modules.php?name=Encyclopedia&op=content&tid=770http://www.ajpdsoft.com/modules.php?name=Encyclopedia&op=content&tid=770http://www.ajpdsoft.com/modules.php?name=Encyclopedia&op=content&tid=770http://www.ajpdsoft.com/modules.php?name=Encyclopedia&op=content&tid=770http://www.ajpdsoft.com/modules.php?name=Encyclopedia&op=content&tid=770

  • Mi primera aplicacin para telfono mvil basada en Java (J2ME) con NetBeans Proyecto AjpdSoft

    http://www.ajpdsoft.com/modules.php?name=News&file=article&sid=437[22/07/2013 01:36:29 p.m.]

    referencias dbiles, limitada capacidad para el manejo de excepciones debido a que el manejo de stas depende en granparte de las APIs de cada dispositivo por lo que son stos los que controlan la mayora de las excepciones, etc.

    La KVM puede ser compilada y probada en tres plataformas distintas:

    Solaris Operating Environment.Windows.PalmOs.

    CVM: Compact Virtual Machine ha sido tomada como Mquina Virtual Java de referencia para la configuracin CDC y soporta lasmismas caractersticas que la Mquina Virtual de J2SE. Est orientada a dispositivos electrnicos con procesadores de 32 bits degama alta y en torno a 2Mb o ms de memoria RAM. Las caractersticas que presenta esta Mquina Virtual son:

    Sistema de memoria avanzado.Tiempo de espera bajo para el recolector de basura.Separacin completa de la VM del sistema de memoria.Recolector de basura modularizado.Portabilidad.Rpida sincronizacin.Ejecucin de las clases Java fuera de la memoria de slo lectura (ROM).Soporte nativo de hilos.Baja ocupacin en memoria de las clases.Proporciona soporte e interfaces para servicios en Sistemas Operativos de Tiempo Real.Conversin de hilos Java a hilos nativos.Soporte para todas las caractersticas de Java2 v1.3 y libreras de seguridad, referencias dbiles, Interfaz Nativa de Java(JNI), invocacin remota de mtodos (RMI), Interfaz de depuracin de la Mquina Virtual (JVMDI).

    En resumen, un entorno de ejecucin determinado de J2ME se compone de una seleccin de:

    Mquina virtual: JVM, KVM CVM.Configuracin: CLDC CDC.Perfil: PDA, MIDP, RMI, etc.Paquetes Opcionales.

    MIDlets

    MIDlet es un programa desarrollado en lenguaje de programacin Java para dispositivos embedidos, ms especficamente para la mquinavirtual Java MicroEdition (Java ME). Generalmente son juegos y aplicaciones que corren en un telfono mvil. Est desarrollada bajo laespecificacin MIDP (Mobile Information Device Profile).

    El MIDlets suele ser un archivo JAR, formado por los siguientes elementos:

    Un archivo manifiesto que describe el contenido del archivo JAR.Las clases Java que forman el MIDlet.Los archivos de recursos usados por el MIDlet.

    Entorno de desarrollo NetBeans, instalacin de los componentesnecesarios para realizar aplicaciones Java para mvilesEn la actualidad existen multitud de entornos de desarrollo o IDEs para disear e implementar aplicaciones para dispositivos mviles. Parahacerlo usando el lenguaje J2ME podremos encontrar entornos como Eclipse,, JBuilder, IntelliJ, NetBeans, etc.

    En nuestro caso utilizaremos NetBeans 6.5, se trata de un proyecto de cdigo abierto (open source) de gran xito, con una gran base deusuarios,una comunidad en constante crecimiento y con un gran nmero de socios en todo el mundo. Sun MicroSystems fund el proyecto de cdigoabierto NetBeans en junio de 2000 y contina siendo el patrocinador principal de este proyecto.

    Instalacin de JDK 6 Update 17

    Antes de instalar NetBeans necesitaremos instalar JDK 6, para ello abriremos un navegador web (como Mozilla Firefox), desde la URL:

    http://java.sun.com/javase/downloads/index.jsp

    Pulsaremos el botn "Download" en JDK 6 Update 17 (o la versin que queramos):

    En Platform elegiremos el sistema operativo, en nuestro caso "Windows" y pulsaremos "Download" (74MB de descarga):

    http://www.ajpdsoft.com/modules.php?name=Encyclopedia&op=content&tid=770http://www.ajpdsoft.com/modules.php?name=Encyclopedia&op=content&tid=711http://www.ajpdsoft.com/modules.php?name=Encyclopedia&op=content&tid=768

  • Mi primera aplicacin para telfono mvil basada en Java (J2ME) con NetBeans Proyecto AjpdSoft

    http://www.ajpdsoft.com/modules.php?name=News&file=article&sid=437[22/07/2013 01:36:29 p.m.]

    Mozilla Firefox nos mostrar una ventana con el nombre del fichero ad descargar (jdk-6u17-windows-i586.exe), pulsaremos en "Guardararchivo":

    Se iniciar la descarga:

    Accederemos a la carpeta de descargas del usuario de Windows 7, en nuestro caso "C:\Users\ajpdsoft\Downloads" y ejecutaremos el ficherodescargado (jdk-6u17-windows-i586.exe), haciendo doble clic sobre l:

    El UAC Control de cuentas de usuario de Windows 7 nos pedir confirmacin para ejecutar el fichero, pulsaremos "S":

    http://www.ajpdsoft.com/modules.php?name=Encyclopedia&op=content&tid=711http://www.ajpdsoft.com/modules.php?name=News&file=article&sid=430http://www.ajpdsoft.com/modules.php?name=News&file=article&sid=430

  • Mi primera aplicacin para telfono mvil basada en Java (J2ME) con NetBeans Proyecto AjpdSoft

    http://www.ajpdsoft.com/modules.php?name=News&file=article&sid=437[22/07/2013 01:36:29 p.m.]

    Leeremos los trminos de licencia de Sun Microsystems, si estamos de acuerdo pulsaremos "Accept":

    El asistente de instalacin de Java SE Development Kit 6 Update 17 nos permitir elegir las opciones de instalacin, dejaremos todasmarcadas y pulsaremos "Next" (si quisiramos cambiar la carpeta de destino pulsaremos en "Change" y elegiremos una carpeta de destinodistinta la la de defecto):

    Antes de la instalacin definitiva, en asistente nos vuelve a dar la opcin de cambiar la carpeta de destino, si queremos dejar la de defectopulsaremos "Next":

    Tras la instalacin el asistente nos mostrar una ventana indicando: Java(TM) SE Development Kit 6 Update 17 Successfully Installed",pulsaremos "Finish":

  • Mi primera aplicacin para telfono mvil basada en Java (J2ME) con NetBeans Proyecto AjpdSoft

    http://www.ajpdsoft.com/modules.php?name=News&file=article&sid=437[22/07/2013 01:36:29 p.m.]

    Instalacin de NetBeans 6.7.1

    Instalaremos el IDE de desarrollo NetBeans, versin 6.7.1, que ser la herramienta principal a utilizar para el desarrollo de aplicaciones paradispositivos mviles, PDAs, etc. Para ello abriremos un navegador Web (como Mozilla Firefox), desde la URL:

    http://netbeans.org/downloads/indexC.html

    En el "Idioma del IDE" seleccionaremos "Espaol". En las distintas posibilidades (tecnologas) a elegir para la descarga: Java SE, JavaFX,Java Web y EE, Java ME, Ruby, C/C++, Groovy, etc. pulsaremos el botn "Download" de la columna "Java":

    Mozilla Firefox nos mostrar una ventana con el nombre del fichero ad descargar (netbeans-6.7.1-ml-java-windows.exe, de 251MB),pulsaremos en "Guardar archivo":

    Se iniciar la descarga del fichero de instalacin de NetBeans 6.7.1:

    Tras la descarga, abriremos la carpeta de descargas del usuario y ejecutaremos el fichero netbeans-6.7.1-ml-java-windows.exe haciendodoble clic sobre l:

    http://www.ajpdsoft.com/modules.php?name=Encyclopedia&op=content&tid=711http://www.ajpdsoft.com/modules.php?name=Encyclopedia&op=content&tid=768http://www.ajpdsoft.com/modules.php?name=Encyclopedia&op=content&tid=711

  • Mi primera aplicacin para telfono mvil basada en Java (J2ME) con NetBeans Proyecto AjpdSoft

    http://www.ajpdsoft.com/modules.php?name=News&file=article&sid=437[22/07/2013 01:36:29 p.m.]

    El UAC Control de cuentas de usuario de Windows 7 nos pedir confirmacin para ejecutar el fichero, pulsaremos "S":

    El Firewall (cortafuegos) de Windows 7 nos bloquear el acceso del fichero java.exe a la red, pulsaremos en "Permitir acceso":

    Se iniciar el asistente de instalacin de NetBeans IDE 6.7.1, si queremos personalizar la instalacin, eligiendo los complementos a instalar,pulsaremos en "Personalizar":

    Desde la ventana de "Personalizar la instalacin" marcaremos o desmarcaremos los posibles paquetes: Java SE, JavaScript Debugger, JavaWeb y EE, Java ME, Groovy, Caractersticas de la demanda, Sun GlassFish Enterprise Server. En nuestro caso dejaremos todas marcadas:

    http://www.ajpdsoft.com/modules.php?name=News&file=article&sid=430http://www.ajpdsoft.com/modules.php?name=News&file=article&sid=430

  • Mi primera aplicacin para telfono mvil basada en Java (J2ME) con NetBeans Proyecto AjpdSoft

    http://www.ajpdsoft.com/modules.php?name=News&file=article&sid=437[22/07/2013 01:36:29 p.m.]

    Tras elegir las opciones de instalacin pulsaremos en "Siguiente":

    Leeremos los trminos de licencia de NETBEANS IDE 6.7.1, si estamos de acuerdo marcaremos la opcin "Acepto los trminos del acuerdode licencia" y pulsaremos "Siguiente":

    A continuacin deberemos elegir la carpeta de instalacin de NetBeans IDE y la carpeta donde instalamos JDK 6 Update 17 (si todo escorrecto la detectrar automticamente, mediante la variable de entorno), pulsaremos "Siguiente" para continuar:

  • Mi primera aplicacin para telfono mvil basada en Java (J2ME) con NetBeans Proyecto AjpdSoft

    http://www.ajpdsoft.com/modules.php?name=News&file=article&sid=437[22/07/2013 01:36:29 p.m.]

    Si hemos elegido instalar Sun GlassFish Enterprise Server (servidor de aplicaciones desarrollado por Sun Microsystems que implementa lastecnologas definidas en la plataforma Java EE y permite ejecutar aplicaciones que siguen esta especificacin, es parecido a Apache Tomcat)deberemos indicar la carpeta donde se instalar, el JDK a utilizar, el nombre del usuario administrador ("admin" por defecto) de GlassFish, lacontrasea ("adminadmin" por defecto), el puerto HTTP (por defecto 8080) que utilizar este servidor de aplicaciones web, el puerto HTTPS(por defecto 8181) y el puerto de administracin (por defecto 4848):

    Tambin deberemos elegir la carpeta de instalacin de Sun GlassFish Enterprise Server v3 Prelude:

    Antes de la instalacin final de NetBeans, el asistente nos mostrar un resumen de las opciones elegidas y el espacio que necesitar endisco, en nuestro caso 720MB, pulsaremos "Instalar":

  • Mi primera aplicacin para telfono mvil basada en Java (J2ME) con NetBeans Proyecto AjpdSoft

    http://www.ajpdsoft.com/modules.php?name=News&file=article&sid=437[22/07/2013 01:36:29 p.m.]

    El Firewall (cortafuegos) de Windows 7 nos bloquear el acceso del fichero java.exe a la red, pulsaremos en "Permitir acceso":

    Tras la instalacin de NetBeans podremos ayudar al proyecto NetBeans marcando la opcin "Apoye al proyecto NetBeans proporcionandodatos de uso annimamente", tambin podremos registrarnos (gratuitamente) marcando "Registre NetBeans IDE y Sun GlassFish EnterpriseServer despus de finalizar la instalacin". Pulsaremos "Terminar":

    Con esto habremos instalado NetBeans IDE 6.7.1 en nuestro equipo con Windows 7. Para ejecutarlo haremos doble clic en el acceso directodel escritorio "NetBeans IDE 6.7.1":

    El IDE de NetBeans 6.7.1 en funcionamiento:

    http://www.ajpdsoft.com/modules.php?name=News&file=article&sid=430http://www.ajpdsoft.com/modules.php?name=News&file=article&sid=430

  • Mi primera aplicacin para telfono mvil basada en Java (J2ME) con NetBeans Proyecto AjpdSoft

    http://www.ajpdsoft.com/modules.php?name=News&file=article&sid=437[22/07/2013 01:36:29 p.m.]

    Instalacin de NetBeans Mobility Pack

    En realidad, para la versin NetBeans IDE 6.7.1 no es necesario instalar NetBeans Mobility Pack pues ya va incorporado. Si utilizamos otraversin anterior de NetBeans seguiramos los siguientes pasos para instalar NetBeans Mobility Pack:

    abriremos un navegador Web (como Mozilla Firefox), desde la URL:

    http://www.netbeans.info/downloads/all.php?b_id=2368

    Pulsaremos en la lnea de "Windows" para iniciar la descarga:

    Se iniciar la descarga del fichero de instalacin de NetBeans Mobility Pack (netbeans-mobility-5_5-windows.exe (de 25MB), pulsaremos en"Guardar archivo":

    Abriremos la carpeta de descargas del usuario, en nuestro caso "C:\Users\ajpdsoft\Downloads" y haremos doble clic sobre el ficheronetbeans-mobility-5_5-windows.exe para iniciar la instalacin:

    http://www.ajpdsoft.com/modules.php?name=Encyclopedia&op=content&tid=711http://www.ajpdsoft.com/modules.php?name=Encyclopedia&op=content&tid=768

  • Mi primera aplicacin para telfono mvil basada en Java (J2ME) con NetBeans Proyecto AjpdSoft

    http://www.ajpdsoft.com/modules.php?name=News&file=article&sid=437[22/07/2013 01:36:29 p.m.]

    El UAC Control de cuentas de usuario de Windows 7 nos pedir confirmacin para ejecutar el fichero, pulsaremos "S":

    Se abrir el asistente de instalacin de NetBeans Mobility Pack 5.5 (en nuestro caso), pulsaremos "Next":

    Leeremos los trminos de licencia, si estamos de acuerdo marcaremos "I accept the terms in the license agreement" y pulsaremos "Next":

    Indicaremos la carpeta de instalacin de NetBeans pulsando en "Browse":

    http://www.ajpdsoft.com/modules.php?name=News&file=article&sid=430

  • Mi primera aplicacin para telfono mvil basada en Java (J2ME) con NetBeans Proyecto AjpdSoft

    http://www.ajpdsoft.com/modules.php?name=News&file=article&sid=437[22/07/2013 01:36:29 p.m.]

    La seleccionaremos en la ventana de "Select a directory":

    Y pulsaremos "Next" para instalar NetBeans Mobility Pack. Volvemos a repetir que para el caso de la versin 6.7.1 de NetBeans estecomponente ya est instalado.

    Instalacin de Sun Java Wireless Toolkit 2.5.2_01

    Para instalar Sun Java Wireless Toolkit abriremos un navegador web (como Mozilla Firefox) y accederemos a la URL:

    http://java.sun.com/products/sjwtoolkit/download.html?feed=JSC

    Pulsaremos en el botn "Download". A continuacin elegiremos en "Platform" el sistema operativo "Windows", marcaremos "I agree..." ypulsaremos en "Continue". Marcaremos "Sun Java Wireless Toolkit 2.5.2_01 for CLDC" y pulsaremos en "sun_java_wireless_toolkit-2.5.2_01-win.exe". Se iniciar la descarga del fichero sun_java_wireless_toolkit-2.5.2_01-win.exe (de 38MB) y, como en los casos anteriores,abriremos la carpeta de descargas y haremos doble clic sobre este fichero.

    Se abrir el asistente de instalacin, pulsaremos "Next":

    http://www.ajpdsoft.com/modules.php?name=Encyclopedia&op=content&tid=711http://www.ajpdsoft.com/modules.php?name=Encyclopedia&op=content&tid=768

  • Mi primera aplicacin para telfono mvil basada en Java (J2ME) con NetBeans Proyecto AjpdSoft

    http://www.ajpdsoft.com/modules.php?name=News&file=article&sid=437[22/07/2013 01:36:29 p.m.]

    Leeremos los trminos de licencia, si estamos de acuerdo pulsaremos "Accept":

    Seleccionaremos la carpta del JDK que deseemos que utilizar para Sun Java Wireless Toolkit, en nuestro caso el instalado anteriormente. Siqueremos utilizar otro pulsaremos "Browse":

    Indicaremos la carpeta de instalacin de Sun Java Wireless Toolkit, por defecto C:\WTK2.5.2_01, es recomendable que no lleve espacios enel nombre de la carpeta de destino:

  • Mi primera aplicacin para telfono mvil basada en Java (J2ME) con NetBeans Proyecto AjpdSoft

    http://www.ajpdsoft.com/modules.php?name=News&file=article&sid=437[22/07/2013 01:36:29 p.m.]

    Pulsaremos "Next" para continuar:

    Si queremos que se compruebe si hay actualizaciones automticas de Sun Java Wireless Toolkit marcaremos "Check for Product Updates",pulsaremos "Next":

    Comprobaremos las opciones elegidas, si son correctas pulsaremos "Next" para iniciar la instalacin definitiva de Sun Java Wireless Toolkit:

  • Mi primera aplicacin para telfono mvil basada en Java (J2ME) con NetBeans Proyecto AjpdSoft

    http://www.ajpdsoft.com/modules.php?name=News&file=article&sid=437[22/07/2013 01:36:29 p.m.]

    Tras la instacin pulsaremos "Finish":

    A continuacin agregaremos este plugin o complemento a NetBeans para poder utilizarlo en las aplicaciones que desarrollemos. Para elloabriremos NetBeans IDE haciendo doble clic sobre el acceso directo del escritorio "NetBeans IDE 6.7.1" de nuestro equipo con Windows 7.Una vez abierto pulsaremos en el men "Herramientas" - "Plataformas Java...", en la ventana de "Administrador de Java Platform"pulsaremos en "Aadir plataforma...":

    Seleccionaremos Java ME MIDP Platform Emulator y pulsaremos "Siguiente":

    http://www.ajpdsoft.com/modules.php?name=News&file=article&sid=430

  • Mi primera aplicacin para telfono mvil basada en Java (J2ME) con NetBeans Proyecto AjpdSoft

    http://www.ajpdsoft.com/modules.php?name=News&file=article&sid=437[22/07/2013 01:36:29 p.m.]

    Si la instalacin de Sun Java Wireless Toolkit ha sido correcta nos detectar la carpeta donde la instalamos, pulsaremos "Siguiente":

    El Firewall de Windows 7 nos detectar y bloquear un acceso del fichero emulator.exe a la red, pulsaremos en "Permitir acceso":

    Si la plataforma es correcta, el asistente para aadir plataformas Java nos mostrar los datos de Sun Java(TM) Wireless Toolkit 2.5.2_01 forCLDC:

  • Mi primera aplicacin para telfono mvil basada en Java (J2ME) con NetBeans Proyecto AjpdSoft

    http://www.ajpdsoft.com/modules.php?name=News&file=article&sid=437[22/07/2013 01:36:29 p.m.]

    En Platform Details mostrar los detalles de la plataforma a instalar:

    Devices: DefaultColorPhone, DefaultGrayPhone, MediaControlSkin, QwertyDevice Profiles: MIDP-1.0, MIDP-2.0, MIDP-2.1 Configurations: CLDC-1.0, CLDC-1.1 Optional APIs: J2ME-WS-1.0, J2ME-XMLRPC-1.0, JSR172-1.0, JSR177-1.0, JSR179-1.0.1, JSR180-1.0.1, JSR184-1.1,JSR211-1.0, JSR226-1.0, JSR229-1.1.0, JSR234-1.0, JSR238-1.0, JSR239-1.0, JSR75-1.0, JSR82-1.1, MMAPI-1.1, OBEX-1.0,SATSA-APDU-1.0, SATSA-CRYPTO-1.0, SATSA-JCRMI-1.0, SATSA-PKI-1.0, WMA-1.1, WMA-2.0

    Pulsaremos en "Terminar" en la ventana anterior para finalizar de agregar a NetBeans la plataforma Sun Java(TM) Wireless Toolkit 2.5.2_01for CLDC.

    Y quedar instalado en la plataforma J2ME:

    Cmo realizar mi primera aplicacin para telfono mvilCreacin de un nuevo proyecto JavaME Mobile Application en NetBeans

    Abriremos NetBeans IDE haciendo doble clic sobre el acceso directo del escritorio "NetBeans IDE 6.7.1" de nuestro equipo con Windows 7.Una vez abierto pulsaremos en el men "Achivo" - "Proyecto Nuevo...":

    http://www.ajpdsoft.com/modules.php?name=News&file=article&sid=430

  • Mi primera aplicacin para telfono mvil basada en Java (J2ME) con NetBeans Proyecto AjpdSoft

    http://www.ajpdsoft.com/modules.php?name=News&file=article&sid=437[22/07/2013 01:36:29 p.m.]

    En "Categoras" elegiremos "Java ME", en "Proyectos" seleccionaremos "Mobile Application":

    Introduciremos los siguientes datos:

    Project name: nombre que tendr el proyecto, en nuestro caso "AjpdSoft Hola mundo J2ME".Project Location: carpeta donde se guardarn los proyectos.Project Folder: carpeta donde se guardarn los ficheros del proyecto.Set as main Project: si marcamos esta opcin el MIDlet que creemos ser el proyecto principal en el entorno NetBeans.Create hello MIDlet: si marcamos esta opcin se crear un MIDlet de ejemplo con el tpico mensaje "Hola mundo".

    En la siguiente ventana podremos elegir los siguientes parmetros:

    Emulator Platform: seleccionaremos Sun Java(TM) Wireless Toolkit 2.5.2_01 for CLDC.Device: tipo de dispositivo para el emulador, en nuestro caso "DefaultColorPhone".Device configuration: tipo de configuracin, en nuestro caso CLDC-1.1.Device Profile: tipo de pefil, en nuestro caso MIDP-2.1.

    Introduciremos los datos anteriores y pulsaremos "Siguiente":

  • Mi primera aplicacin para telfono mvil basada en Java (J2ME) con NetBeans Proyecto AjpdSoft

    http://www.ajpdsoft.com/modules.php?name=News&file=article&sid=437[22/07/2013 01:36:29 p.m.]

    Si necesitamos ms perfiles de configuracin podremos marcarlos en la siguiente ventana. Pulsaremos "Terminar" para iniciar el desarrollodel proyecto:

    Puesto que hemos marcado "Create hello MIDlet" NetBeans crear un formulario con las acciones necesarias para mostrar un mesaje en lapantalla de nuestro mvil "Hello world":

    Vistas del IDE NetBeans: Source, Screen y Flow

    Vista Flow Design

    Esta vista es la primera que aparece cuando inicialmente creamos un MIDlet. Esta vista resulta muy interesante ya que nos indica cul es elflujo de ventanas de nuestra aplicacin, es decir, qu ventana lleva a qu otra ventana y a travs de qu botn o comando. Tambin nospermite editar fcilmente dicho flujo simplemente arrastrando y soltando elementos sobre el panel principal. De esta forma un desarrolladorpuede ir tomando cada uno de los tipos de ventana que se muestran en la Paleta de la derecha, dentro del grupo Screens (es decir, Alert,List, Splash-Screen, Form, TextBox o bien WaitScreen), ir colocndolos en el panel principal e ir definiendo cmo llegar de una ventana aotra simplemente conectndolas entre s. Adems, a cada ventana se le puede aadir cualquiera de los dems elementos que se muestranen la Paleta (Commands, Form Items, Elements, etc.) simplemente arrastrando dicho elemento sobre la ventana en la que queramosaadirlo. Por ltimo, decir que cuando se selecciona cualquier elemento en el panel principal, tambin es posible modificar sus propiedades

  • Mi primera aplicacin para telfono mvil basada en Java (J2ME) con NetBeans Proyecto AjpdSoft

    http://www.ajpdsoft.com/modules.php?name=News&file=article&sid=437[22/07/2013 01:36:29 p.m.]

    o atributos mediante el panel de Propiedades que se encuentra debajo de la Paleta, abajo a la derecha, lo cual resulta extremadamente tilal programador:

    Vista Screen Design

    Esta vista tambin resulta extremadamente til al programador ya que a travs de la misma es posible realizar el diseo de cada una de lasventanas de las que consta nuestro MIDlet. De esta forma el desarrollador podr ver el aspecto final que aproximadamente tendr suaplicacin. Para cambiar la ventana que queremos disear basta con seleccionarla en la lista desplegable llamada Edited Screen que seencuentra encima del panel principal a la derecha. En nuestro ejemplo de "Hola mundo" slo podemos disear inicialmente una ventanallamada helloForm.

    En esta vista tambin disponemos de la Paleta de componentes, y el diseo de las ventanas es tan sencillo como arrastrar los elementosdesde sta hasta el panel principal, igual que ocurra en la vista Flow Design. Y del mismo modo que en la vista Flow Design era posibleeditar las propiedades o atributos de los elementos seleccionados desde el panel de Propiedades, aqu eso tambin es posible de la mismaforma. En la seccin anterior no se coment el panel Inspector mediante el cual podemos ver todos los elementos (ventanas, comandos,Items, etc.) que conforman nuestro MIDlet en forma de rbol jerrquico. A travs de l tambin se pueden realizar todas las accionescomentadas anteriormente para esta vista. Merece la pena resaltar la gran utilidad que esta vista ofrece al desarrollador de aplicacionesJ2ME. Hasta tal punto es interesante que ser posible desarrollar aplicaciones sencillas sin necesidad de ver ni escribir ni una sola lnea decdigo:

    Vista Source

    La vista Source permite ver y modificar el cdigo fuente Java de nuestra aplicacin:

  • Mi primera aplicacin para telfono mvil basada en Java (J2ME) con NetBeans Proyecto AjpdSoft

    http://www.ajpdsoft.com/modules.php?name=News&file=article&sid=437[22/07/2013 01:36:29 p.m.]

    Compilar y ejecutar la aplicacin (MIDlet) en el emulador de NetBeans

    Para compilar el MIDlet pulsaremos en el men "Ejecutar" - "Limpiar y generar Main Project" o la pulsacin de las teclas Maysculas + F12.Nos mostrar el resultado de la operacin en la parte inferior del IDE de desarrollo:

    Si todo es correcto mostrar, al final, algo as: "GENERACIN CORRECTA (total time: 2 seconds)". Una vez compilado correctamenteNetBeans habr generado los ficheros .jar y .jad correspondientes. Con estos dos ficheros la aplicacin ya se podra ejecutar en un telfonomvil. Estos ficheros se encuentran en la carpeta "dist", dentro de la carpeta del proyecto:

  • Mi primera aplicacin para telfono mvil basada en Java (J2ME) con NetBeans Proyecto AjpdSoft

    http://www.ajpdsoft.com/modules.php?name=News&file=article&sid=437[22/07/2013 01:36:29 p.m.]

    En nuestro caso: AjpdSoft_Hola_mundo_J2ME.jad y AjpdSoft_Hola_mundo_J2ME.jar.

    Como decimos, si transferimos estos dos ficheros a un telfono mvil y ejecutamos el AjpdSoft_Hola_mundo_J2ME.jar, elmvil nos pedir si deseamos instalarlo, lo instalaremos y ya funcionar nuestra primera aplicacin para mvil.

    Para ejecutarlo y probarlo en el equipo (en el emulador de NetBeans) pulsaremos en el men "Ejecutar" - "Ejecutar Main Project":

    Si todo es correcto se ejecutar el emulador de telfomo mvil, como si de un mvil se tratase, aparecer seleccionado nuestro MIDlet,pulsaremos en el botn central del telfono para ejecutarlo:

    Y podremos ver en nuestro equipo cmo funcionara la aplicacin (MIDlet) en el mvil:

  • Mi primera aplicacin para telfono mvil basada en Java (J2ME) con NetBeans Proyecto AjpdSoft

    http://www.ajpdsoft.com/modules.php?name=News&file=article&sid=437[22/07/2013 01:36:29 p.m.]

    Ficheros JAR y JAD

    Un fichero JAR (Java Archive) es el encargado de encapsular todas las clases y recursos (imgenes, sonidos, datos, etc.) que conformenuno o ms MIDlets.Un archivo JAR es un tipo de archivo que permite ejecutar aplicaciones escritas en lenguaje Java. Los archivos JAR estncomprimidos con el formato de archivo ZIP. Adems de las clases y los recursos, un fichero JAR incluye otro archivo conocido comomanifiesto (con nombre manifest.mf). Dicho archivo contiene informacin sobre el contenido del fichero JAR, los atributos de este archivoson:

    Atributo Descripcin Requerido

    MIDlet-Name Nombre de la MIDlet suite S

    MIDlet-Version Versin de la MIDlet suite S

    MIDlet-Vendor Desarrollador del MIDlet S

    MIDlet-n Contiene una lista con el nombre de la MIDlet suite, iconoy nombre del MIDlet en la suite

    S

    Microedition-Configuration Configuracin necesitada para ejecutar el MIDlet S

    Microedition-Profile Perfil necesitado para ejecutar el MIDlet S

    MIDlet-Description Descripcin de la MIDlet suite No

    MIDlet-Icon Nombre del archivo png incluido en el JAR No

    MIDlet-Info-URL URL con informacin sobre el MIDlet No

    MIDlet-Data-Size Nmero de bytes requeridos por el MIDlet No

    El fichero JAD (Java Application Descriptor) es opcional y sirve para proporcionar informacin adicional acerca del juego de MIDletscontenido en un fichero JAR. Los atributos del archivo JAD son los siguientes:

    Atributo Descripcin Requerido

    MIDlet-Name Nombre de la MIDlet suite S

    MIDlet-Vendor Nombre del desarrollador S

    MIDlet-Version Versin del MIDlet S

    MIDlet-Configuration Configuracin necesitada para ejecutar el MIDlet S

    MIDlet-Profile Perfil Perfil necesitado para ejecutar el MIDlet S

    MIDlet-Jar-URL URL del archivo JAR de la MIDlet suite S

    MIDlet-Jar-Size Tamao en bytes del archivo JAR S

    MIDlet-Data-Size Mnimo nmero de bytes de almacenamientopersistente usado por el MIDlet

    No

    MIDlet-Delete-Confirm Confirmacin a la hora de eliminar el MIDlet No

    MIDlet-Description Descripcin de la MIDlet suite No

    MIDlet-Icon Archivo .png incluido en el JAR No

    MIDlet-Info-URL URL con informacin de la MIDlet suite No

    MIDlet-Install-Notify Indica que el AMS notifique al usuario de lainstalacin del nuevo MIDlet

    No

    Cdigo fuente (source code) en Java de la aplicacin para mvil

    El cdigo Java de la aplicacin para telfonos mviles AjpdSoft Hola mundo J2ME es el siguiente (todo generado automticamente por elasistente de nuevo proyecto):

  • Mi primera aplicacin para telfono mvil basada en Java (J2ME) con NetBeans Proyecto AjpdSoft

    http://www.ajpdsoft.com/modules.php?name=News&file=article&sid=437[22/07/2013 01:36:29 p.m.]

    /* * To change this template, choose Tools | Templates * and open the template in the editor. */

    package hello;

    import javax.microedition.midlet.*;import javax.microedition.lcdui.*;

    /** * @author ajpdsoft */public class HelloMIDlet extends MIDlet implements CommandListener {

    private boolean midletPaused = false;

    //

    private Command exitCommand; private Form form; private StringItem stringItem; //

    /** * The HelloMIDlet constructor. */ public HelloMIDlet() { }

    //

    //

    //

    /** * Initilizes the application. * It is called only once when the MIDlet is * started. The method is called before the startMIDlet method. */ private void initialize() { // write pre-initialize user code here // write post-initialize user code here } //

    //

    /** * Performs an action assigned to the * Mobile Device - MIDlet Started point. */ public void startMIDlet() { // write pre-action user code here switchDisplayable(null, getForm()); // write post-action user code here } //

    //

    /** * Performs an action assigned to the * Mobile Device - MIDlet Resumed point. */ public void resumeMIDlet() { // write pre-action user code here // write post-action user code here } //

    //

    /** * Switches a current displayable in a display. * The display instance is taken from getDisplay * method. This method is used by all actions * in the design for switching displayable. * @param alert the Alert which is temporarily * set to the display; if null, * then nextDisplayable is set immediately * @param nextDisplayable the Displayable to be set */ public void switchDisplayable(Alert alert, Displayable nextDisplayable) { // write pre-switch user code here Display display = getDisplay(); if (alert == null) { display.setCurrent(nextDisplayable); } else { display.setCurrent(alert, nextDisplayable); } // write post-switch user code here } //

    //

    /** * Called by a system to indicated that a command * has been invoked on a particular displayable. * @param command the Command that was invoked * @param displayable the Displayable where the command was invoked */ public void commandAction(Command command, Displayable displayable) { // write pre-action user code here if (displayable == form) { if (command == exitCommand) { // write pre-action user code here exitMIDlet();

  • Mi primera aplicacin para telfono mvil basada en Java (J2ME) con NetBeans Proyecto AjpdSoft

    http://www.ajpdsoft.com/modules.php?name=News&file=article&sid=437[22/07/2013 01:36:29 p.m.]

    // write post-action user code here } } // write post-action user code here } //

    //

    /** * Returns an initiliazed instance of exitCommand component. * @return the initialized component instance */ public Command getExitCommand() { if (exitCommand == null) { // write pre-init user code here exitCommand = new Command("Exit", Command.EXIT, 0); // write post-init user code here } return exitCommand; } //

    //

    /** * Returns an initiliazed instance of form component. * @return the initialized component instance */ public Form getForm() { if (form == null) { // write pre-init user code here form = new Form("Welcome", new Item[] { getStringItem() }); form.addCommand(getExitCommand()); form.setCommandListener(this); // write post-init user code here } return form; } //

    //

    /** * Returns an initiliazed instance of stringItem component. * @return the initialized component instance */ public StringItem getStringItem() { if (stringItem == null) { // write pre-init user code here stringItem = new StringItem("AjpdSoft - Primer programa m\u00F3vil", "AjpdSoft Hola mundo"); // write post-init user code here } return stringItem; } //

    /** * Returns a display instance. * @return the display instance. */ public Display getDisplay () { return Display.getDisplay(this); }

    /** * Exits MIDlet. */ public void exitMIDlet() { switchDisplayable (null, null); destroyApp(true); notifyDestroyed(); }

    /** * Called when MIDlet is started. * Checks whether the MIDlet have been already * started and initialize/starts or resumes the MIDlet. */ public void startApp() { if (midletPaused) { resumeMIDlet (); } else { initialize (); startMIDlet (); } midletPaused = false; }

    /** * Called when MIDlet is paused. */ public void pauseApp() { midletPaused = true; }

    /** * Called to signal the MIDlet to terminate. * @param unconditional if true, then the MIDlet has * to be unconditionally terminated and all * resources has to be released. */ public void destroyApp(boolean unconditional) { }

    }

    Artculos relacionadosJava en estado puro, mi primera aplicacin Java.Cmo acceder a MySQL con JSP, Tomcat y JDBC.Instalacin y configuracin de Eclipse SQL Explorer en Eclipse (Java).Instalar y trabajar con la clase Visual Editor de Eclipse (Java).Como crear una aplicacin con Java y Eclipse.

    http://www.ajpdsoft.com/modules.php?name=News&file=article&sid=303http://www.ajpdsoft.com/modules.php?name=News&file=article&sid=287http://www.ajpdsoft.com/modules.php?name=News&file=article&sid=275http://www.ajpdsoft.com/modules.php?name=News&file=article&sid=271http://www.ajpdsoft.com/modules.php?name=News&file=article&sid=270

  • Mi primera aplicacin para telfono mvil basada en Java (J2ME) con NetBeans Proyecto AjpdSoft

    http://www.ajpdsoft.com/modules.php?name=News&file=article&sid=437[22/07/2013 01:36:29 p.m.]

    Artculos del Proyecto AjpdSoft sobre el lenguaje de programacin Java.Ejercicios resueltos en el lenguje de programacin C.Artculos del Proyecto AjpdSoft sobre sistemas operativos (Windows, GNU Linux, etc.).Artculos del Proyecto AjpdSoft sobre los sistemas operativos Microsoft Windows.Artculos del Proyecto AjpdSoft sobre programacin.Artculos del Proyecto AjpdSoft sobre Delphi (lenguaje de programacin).Artculos del Proyecto AjpdSoft sobre Visual Basic (lenguaje de programacin).

    Crditos

    Artculo realizado ntegramente por Alonsojpd miembro fundador del proyecto AjpdSoft.

    Enviado el Monday, 16 November a las 13:51:56 por ajpdsoft

    Este sitio web NO CONTIENE malware, todos los programas con cdigo fuente aqu. Autor: Alonso Javier Prez Daz

    Anuncios Google Descargar Java Java Mobile Java IDE Download Java JDK

    http://www.ajpdsoft.com/modules.php?name=News&new_topic=21http://www.ajpdsoft.com/modules.php?name=Content&pa=list_pages_categories&cid=12http://www.ajpdsoft.com/modules.php?name=News&file=categories&op=newindex&catid=7http://www.ajpdsoft.com/modules.php?name=News&new_topic=8http://www.ajpdsoft.com/modules.php?name=News&file=categories&op=newindex&catid=11http://www.ajpdsoft.com/modules.php?name=News&new_topic=3http://www.ajpdsoft.com/modules.php?name=News&new_topic=4http://www.ajpdsoft.com/modules.php?name=Foros&file=profile&mode=viewprofile&u=63http://www.ajpdsoft.com/modules.php?name=Quienes_Somoshttp://www.ajpdsoft.com/http://www.ajpdsoft.com/modules.php?name=Downloadshttps://plus.google.com/105224752118155793261?rel=authorhttps://www.google.com/adsense/support/bin/request.py?contact=abg_afc&url=http://www.ajpdsoft.com/modules.php%3Fname%3DNews%26file%3Darticle%26sid%3D437&hl=es&client=ca-pub-9017794352345256&rad0=Descargar+Java&rad1=Java+Mobile&rad2=Java+IDE&rad3=Download+Java+JDKhttp://googleads.g.doubleclick.net/pagead/ads?client=ca-pub-9017794352345256&output=html&h=15&slotname=0223924550&w=728&lmt=1374517982&flash=11.7.700.224&url=http%3A%2F%2Fwww.ajpdsoft.com%2Fmodules.php%3Fname%3DNews%26file%3Darticle%26sid%3D437&dt=1374517981831&bpp=3&bdt=1160&shv=r20130716&cbv=r20130206&saldr=sa&prev_slotnames=7317874694%2C4001641500%2C8991945324&correlator=1374517981526&frm=20&adk=2709609305&ga_vid=1733190200.1374517981&ga_sid=1374517981&ga_hid=841159660&ga_fc=1&u_tz=-300&u_his=25&u_java=1&u_h=768&u_w=1366&u_ah=728&u_aw=1366&u_cd=24&u_nplug=0&u_nmime=0&dff=times%20new%20roman&dfs=10&adx=190&ady=31376&biw=1349&bih=596&oid=3&fu=0&ifi=4&dtd=811&xpc=wDsI393cYh&p=http%3A//www.ajpdsoft.com&rl_rc=true&adsense_enabled=true&ad_type=text&oe=utf8&height=15&width=728&format=fp_al_lp&kw_type=radlink&prev_fmts=728x15_0ads_al&rt=ChBR7XreAA6d7AqE7w2KABpaEg5EZXNjYXJnYXIgSmF2YRoICEP9JDUak34g37XPICgBSN-1zyBI9KSaxgJSEwi1oejA3sO4AhUNzYQKHeVnANU&hl=es&kw0=Descargar+Java&kw1=Java+Mobile&kw2=Java+IDE&kw3=Download+Java+JDK&okw=Descargar+Javahttp://googleads.g.doubleclick.net/pagead/ads?client=ca-pub-9017794352345256&output=html&h=15&slotname=0223924550&w=728&lmt=1374517982&flash=11.7.700.224&url=http%3A%2F%2Fwww.ajpdsoft.com%2Fmodules.php%3Fname%3DNews%26file%3Darticle%26sid%3D437&dt=1374517981831&bpp=3&bdt=1160&shv=r20130716&cbv=r20130206&saldr=sa&prev_slotnames=7317874694%2C4001641500%2C8991945324&correlator=1374517981526&frm=20&adk=2709609305&ga_vid=1733190200.1374517981&ga_sid=1374517981&ga_hid=841159660&ga_fc=1&u_tz=-300&u_his=25&u_java=1&u_h=768&u_w=1366&u_ah=728&u_aw=1366&u_cd=24&u_nplug=0&u_nmime=0&dff=times%20new%20roman&dfs=10&adx=190&ady=31376&biw=1349&bih=596&oid=3&fu=0&ifi=4&dtd=811&xpc=wDsI393cYh&p=http%3A//www.ajpdsoft.com&rl_rc=true&adsense_enabled=true&ad_type=text&oe=utf8&height=15&width=728&format=fp_al_lp&kw_type=radlink&prev_fmts=728x15_0ads_al&rt=ChBR7XreAA6d-wqE7w2KABpaEgtKYXZhIE1vYmlsZRoIpi_8I0V64Igg37XPICgBSN-1zyBI9KSaxgJSEwi1oejA3sO4AhUNzYQKHeVnANU&hl=es&kw0=Descargar+Java&kw1=Java+Mobile&kw2=Java+IDE&kw3=Download+Java+JDK&okw=Java+Mobilehttp://googleads.g.doubleclick.net/pagead/ads?client=ca-pub-9017794352345256&output=html&h=15&slotname=0223924550&w=728&lmt=1374517982&flash=11.7.700.224&url=http%3A%2F%2Fwww.ajpdsoft.com%2Fmodules.php%3Fname%3DNews%26file%3Darticle%26sid%3D437&dt=1374517981831&bpp=3&bdt=1160&shv=r20130716&cbv=r20130206&saldr=sa&prev_slotnames=7317874694%2C4001641500%2C8991945324&correlator=1374517981526&frm=20&adk=2709609305&ga_vid=1733190200.1374517981&ga_sid=1374517981&ga_hid=841159660&ga_fc=1&u_tz=-300&u_his=25&u_java=1&u_h=768&u_w=1366&u_ah=728&u_aw=1366&u_cd=24&u_nplug=0&u_nmime=0&dff=times%20new%20roman&dfs=10&adx=190&ady=31376&biw=1349&bih=596&oid=3&fu=0&ifi=4&dtd=811&xpc=wDsI393cYh&p=http%3A//www.ajpdsoft.com&rl_rc=true&adsense_enabled=true&ad_type=text&oe=utf8&height=15&width=728&format=fp_al_lp&kw_type=radlink&prev_fmts=728x15_0ads_al&rt=ChBR7XreAA6d_QqE7w2KABpaEghKYXZhIElERRoI6cJT_p9nLrAg37XPICgBSN-1zyBI9KSaxgJSEwi1oejA3sO4AhUNzYQKHeVnANU&hl=es&kw0=Descargar+Java&kw1=Java+Mobile&kw2=Java+IDE&kw3=Download+Java+JDK&okw=Java+IDEhttp://googleads.g.doubleclick.net/pagead/ads?client=ca-pub-9017794352345256&output=html&h=15&slotname=0223924550&w=728&lmt=1374517982&flash=11.7.700.224&url=http%3A%2F%2Fwww.ajpdsoft.com%2Fmodules.php%3Fname%3DNews%26file%3Darticle%26sid%3D437&dt=1374517981831&bpp=3&bdt=1160&shv=r20130716&cbv=r20130206&saldr=sa&prev_slotnames=7317874694%2C4001641500%2C8991945324&correlator=1374517981526&frm=20&adk=2709609305&ga_vid=1733190200.1374517981&ga_sid=1374517981&ga_hid=841159660&ga_fc=1&u_tz=-300&u_his=25&u_java=1&u_h=768&u_w=1366&u_ah=728&u_aw=1366&u_cd=24&u_nplug=0&u_nmime=0&dff=times%20new%20roman&dfs=10&adx=190&ady=31376&biw=1349&bih=596&oid=3&fu=0&ifi=4&dtd=811&xpc=wDsI393cYh&p=http%3A//www.ajpdsoft.com&rl_rc=true&adsense_enabled=true&ad_type=text&oe=utf8&height=15&width=728&format=fp_al_lp&kw_type=radlink&prev_fmts=728x15_0ads_al&rt=ChBR7XreAA6eAAqE7w2KABpaEhFEb3dubG9hZCBKYXZhIEpESxoIx0j69-hjGysg37XPICgBSN-1zyBI9KSaxgJSEwi1oejA3sO4AhUNzYQKHeVnANU&hl=es&kw0=Descargar+Java&kw1=Java+Mobile&kw2=Java+IDE&kw3=Download+Java+JDK&okw=Download+Java+JDK

    ajpdsoft.comMi primera aplicacin para telfono mvil basada en Java (J2ME) con NetBeans Proyecto AjpdSoft

    ZpbGU9YXJ0aWNsZSZzaWQ9NDM3AA==: form2: score: 0input0:

    VudD9BY3JvYmF0V2ViQ2FwVElENgA=: form0: button0: button0_(1):

    ZpbGU9YXJ0aWNsZSZzaWQ9NDM3AA==: form1: newlanguage: [index.php?newlang=spanish]