|
|
Nota: Este artículo está
en contínua evolución mediante la colaboración
de los miembros de la comunidad, si tienes alguna idea, noticias
o sugerencia y deseas colaborar, a pie de artículo encontrarás
el lugar para poder hacerlo.
NOKIA WAP TOOLKIT
Por Santiago Márquez Solís
Hola a todos, con el presente artículo pretendo que todos aquellos
de vosotros que estaís empezando en el apasionante mundo del WAP
tengais un punto de referencia donde dirigiros cuando empeceis
a programar en WML con el mejor, a mi juicio, de los entornos
de desarrollo que existen actualmente, el Nokia Wap Toolkit. Por
tanto lo que pretendo, es introduciros en el entorno en el cual
vamos a trabajar, describiendo aquellas opciones más interesantes
y útiles, para que vosotros podais sacarle todo el partido que
querais a este excelente programa. Empezaremos con como instalar
el programa y como compilar y visualizar un pequeño programa en
WML, el famoso “Hola Mundo” que siempre se aprende cuando uno
empieza en cualquier lenguaje, sin olvidar hacer una descripción
detallada de nuestro entorno de trabajo y su configuración. Comenzemos
pues sin más tardar nuestro viaje por el Nokia Wap Toolkit.
El Nokia Wap Toolkit ofrece a los desarrolladores un entorno
para la creación, prueba y ejecución de las aplicaciones WAP,
lo mejor que tiene este kit es la posibilidad de no tener que
salir para nada de la aplicación ya que disponemos de todas las
herramientas necesarias para empezar a trabajar, esto como todos
sabreis es una gran ventaja, ya que permite al desarrollador el
no tener que preocuparse por las herramientas, ya que todas las
tiene a su alcance, y centrarse en el desarrollo que es al fin
y al cabo lo más importante, ¿verdad?
Entonces, ¿qué herramientas son las que tenemos a nuestro alcance?
Disponemos de las siguientes:
- WML y WMLScript encoders
- Un simulador para poder ver nuestras aplicaciones, es decir,
la representación de un telefono que nos permite ejecutar nuestros
programas como si los estuviesemos viendo realmente en nuestro
movil, muy práctico para ver como quedaran nuestras paginas.
- Un editor de WML, WMLScript y un editor de WBMP
- Lleva todo un sistema de depuracion, visualizacion de variables,
etc.
Ademas el kit se complementa con una documentación bastante
completa, asi como toda la pila de protocolos WAP implementada
que añadido al precio del programa lo hacen ideal para empezar
a trabajar.
¿Qué necesitamos para poder usar el Nokia Wap Toolkit?
Dado que la plataforma más extendida es la plataforma Windows
vamos a centrarnos en la instalación en ésta, para instalar el
programa necesitamos tener lo siguiente:
Una vez que tenemos todos estos elementos en nuestra máquina,
la instalación del programa es muy sencilla, en primer lugar tenemos
que realizar la instalación del Java Runtime Enviroment, una vez
que este programa está ya instalado correctamente en nuestro equipo
podemos proceder a instalar el Nokia Wap Toolkit, para ello ejecutamos
el programa setupex.exe que previamente hemos descargado desde
Nokia y seguimos las instrucciones de pantalla, que se pueden
resumir en determinar la ruta donde instalar el software y la
carpeta de inicio dentro de la barra de tareas del explorador
de Windows.
Como veis hasta aquí todo muy sencillo y fácil, no obstante
hay una serie de ficheros que se instalan con el programa y que
puede resultaros de utilidad saber que existen. Suponiendo que
se hace la instalación estandar, el Nokia Wap Toolkit se instala
en la siguiente ruta: C:\Program Files\Nokia\Nokia Wap Toolkit,
dentro de este directorio podemos encontrar los siguientes ficheros:
| Nombre fichero/Directorio |
Descripcion |
| License.txt |
Acuerdo de licencia con Nokia, recomiendo que
os lo leais |
| Rel_Note.txt |
Información de última hora, también muy útil |
| Toolkit.exe |
Es el programa en si, desde aquí se inicia la
aplicación |
| W3c-http.jar |
Librerias java con la especificacion HTTP |
| Wapsdk.ini |
Fichero de configuración del Nokia Wap Toolkit,
este fichero se actualiza cuando hacemos modificaciones en las
preferencias dentro del programa, en el cuadro 1 podeis ver
el contenido típico de este fichero |
| Wapsdk.jar |
Es un fichero que java que permite iniciar tambien
el programa usando el programa ‘java’ desde el interprete de
comandos, la sintaxis seria la siguiente:
Java -jar wapsdk.ja |
| Waptools.jar |
Contiene las librerias del servidor |
| Wmlencoder.jar |
Librerias para WML |
| WmlScriptencoder.jar |
Librerias para WMLScripts |
| DTD\wml_1.1.xml |
Este fichero contiene la definición de tipos de
XML que utiliza WML |
| Docs\ |
En este directorio tenemos los ficheros con documentación |
| Samples\ |
Aquí tenemos ejemplos en WML\WMLScript\WBMP que
podemos ejecutar |
Una última cosa sobre la instalación si en algún momento quereis
desinstalar el programa podeis hacerlo desde el Control Panel
seleccionando Add/Remove Programs y elegiendo Nokia Wap Toolkit
procedereis a su desinstalación.
#WAP SDK Configuration file
#Mon Jul 03 11:15:43 CEST 2000
http.gatewayCoPort=9201
Bookmark.number=0
http.useGateway=false
http.useHttpCache=false
wml.useAccessElement=true
wml.characterSet=UTF-8
app.device.location=737,0
app.main.bounds=0,-2,738,600
wml.validateWML=true
browser.historySize=0
http.gatewayClPort=9200
http.useCoConnection=false
http.useHttpAuthentication=true
http.gatewayAddr=127.0.0.1
http.useHttpProxy=false
http.useBytecodeCache=true
phone.model=Nokia6150
http.useHttpCookies=true
http.proxyUrl=
wml.useLocalDtd=true
http.useRmiInterfaces=false
encoder.useNativeEncoder=true
|
Cuadro 1. Contenido de un fichero WapSdk.ini típico
Aspectos del Nokia Wap Toolkit
Una vez que entramos dentro del programa, ya sea desde la linea
de comandos ejecutando el programa java o haciendo clic en nuestro
programa, aparecerá la siguiente pantalla (figura 1)
Figura 1
Como podeis ver en la figura, tenemos:
- por un lado una barra de localización (Localization toolbar)
que nos indica que documento WML\WMLScript es el que estamos
visualizando.
- Una serie de pestañas que nos permiten ver diferentes vistas
de nuestro entorno, de este modo podemos ver mensajes, variables,
el historico, los bookmarks o favoritos, el WMLDeck y la Sesión
- En la parte de la derecha tenemos el simulador del cliente,
en este simulador podemos ver el resultado del código que vayamos
tecleando y probar que la secuencia lógica del programa es la
correcta. Posteriormente cuando tengamos el código definitivo
podemos pasarlo a nuestro servidor y colgarlo en la ruta adecuada
para que todo el mundo pueda verla. Los simuladores de clientes
que aparecen no son productos reales de Nokia, sino como su
nombre indica es un simulador.
La barra de herramientas de compone de las opciones típicas
de cualquier programa Windows, como son File, para abrir/cerrar
ficheros, crear ficheros WML, WMLScript y WBMP nuevos y salir
de la aplicación. El menu Edit, con las opciones de Cortar, Pegar,
Deshacer y Rehacer. El menu Go con todas las opciones de refresco
de cartar (cards) y recargas de barajas(decks), ir a la home y
abrir URL remotas como ficheros en disco. El menu de Toolkit con
las opciones de configuración, selección de vistas etc. A lo largo
del artículo haremos alusión a las opciones particulares de cada
menu.
Personalizando el Nokia Wap Toolkit
El primer paso que tenemos que seguir cuando nos ponemos a trabajar
con el Nokia Wap Toolkit es realizar la personalización del entorno
de desarrollo. Para poder realizar esto tenemos una opción del
menu dentro de la pantalla principal que nos posibilita esto,
esta opción la encontramos dentro del menu Toolkit\Preferences.
Todas las modificaciones que efectuemos desde esta opción tiene
su correspondiente reflejo en el fichero WapSDK.Ini que veiamos
antes. Bien que aspectos podemos modificar de nuestro entorno,
pues tenemos tres pestañas diferentes: Communication, Encodig
y General, es decir, las caracteristicas de la comunicación, la
codificación del código y otros aspectos generales respectivamente.
Veamoslos uno por uno:
Communication (Comunicación): Desde aquí podemos especificar
si la comunicación va a efectuarse via HTTP o a través de un Gateway
WAP (Pasarela WAP). Cada tipo de comunicación tiene su propio
conjunto de parametros que debemos especificar. En el caso de
la comunicación HTTP podemos especificar la siguiente información
adicional:
- Use HTTP Cookies (uso de cookies http): Si activamos esta
opción cualquier cookie que recibamos será almacenado en el
disco, de manera que futuras conexiones al lugar desde donde
la descargamos podrá hacer uso de la cookie para determinar
por ejemplo nuestro perfil de usuario. Para que este cambio
tenga efecto hay que reiniciar el Nokia Wap Toolkit
- Use HTTP Autentification (uso de autentificacion HTTP), si
activamos esta opcion obligamos al programa a usar la autentificacion
básica de HTTP en la cual se nos pedirá un usuario y una password
cuando el protocolo reciba una respuesta de no autentificacion
por parte del servidor (lo que se llama una unauthenticated
error)
- Use HTTP proxy (uso de proxy), activando esta opción decimos
al programa que vamos a usar un proxy para hacer nuestras conexiones,
por lo que debemos de indicar la ruta en la cual se encuentra
dicho proxy.
En el caso de optar por la comunicación basada en un WAP Gateway
tenemos que configurar las siguientes opciones:
- Gateway Address (dirección del gateway): se corresponde con
la IP en la cual tenemos configurado nuestro gateway.
- Use Connection Oriented Mode/Use Connectionless Mode: Son
dos tipos de conexiones que podemos efectuar a traves del Gateway,
para ello hay que indicar los puertos que queremos usar (por
defecto 9200 para connectionless y 9201 para connection mode),
el tipo de conexión Connection Mode es un tipo de conexión segura
a través de Gateway no asi el tipo Connectionless, no obstante
la conexión Connection Mode genera más tráfico que la Connectionless
ya que es un protocolo más robusto.
Encoding: Indica el tipo de codificación que queremos realizar,
pudiendo realizar una codificación rápida de nuestros ficheros
WML (lo que en caso de error solo nos devuelve en la ventana de
mensajes determinados errores y no todos) activando la casilla
Use Fast Encoding. Podemos también especificar el juego de caracteres
que queremos usar para HTTP entre UTF 8, Latin 1 y Unicode.
General: Podemos indicar el tamaño del historico (WML History
Size, más adelante en este artículo se cuenta que es eso del histórico)
y el tipo de dispositivo WAP (WAP device) o simulador que queremos
para probar nuestras páginas, podemos elegir entre el Nokia 6150
y el Nokia 6110 ambos son terminales que no están disponibles
comercialmente.
Las Vistas
Hemos dicho que las diferentes pestañas que aparecen en la parte
inferior de la pantalla principal permiten ver distintos aspectos
del Nokia Wap Toolkit, en este apartado veremos cuales son estos
aspectos. En primer lugar para personalizar las vistas que queremos
que aparezcan en pantalla podemos hacerlo desde la opción Toolkit\Show
del menu principal (figura 2) , desde alli podemos determinar
que pestañas queremos que aparezcan en la pantalla principal.
Las vistas que están activas aparecen marcadas con un símbolo
en la parte de la izquierda y para activarlas y desactivarlas
basta con hacer click sobre la opción en cuestión.
Figura 2
Las vistas que tenemos son las siguientes:
- Mensajes (Messages): Contiene los errores que se producen
al compilar nuestros programas asi como cualquier otro tipo
de información que el Nokia Wap Toolkit nos quiera devolver
(figura 3), podemos definir que nivel de información es el que
queremos ver, estos niveles van desde Detail (Detalle, el más
completo, en la figura podeis ver una salida tipo que se produce
cuando seleccionamos este tipo de opción) a Critical (Crítico,
que sólo muestra aquellos mensajes que son críticos para la
ejecución de nuestro programa), existen no obstante otros niveles
como son Debug (muestra información de depuración), Normal (es
el nivel medio), Warning (nos muestra advertencias que se produzcan,
no son errores propiamente dichos sino situaciones que pueden
llevar a un error en un determinado momento). Si queremos borrar
todos los mensajes que se hayan introducido hasta el momento
podemos hacerlo haciendo clic en el botón Clear.

Figura 3
- Variables: Nos muestra todas las variables que esten activas
dentro de un documento WML o WMLScript. El contenido de las
variables se puede editar, modificar, añadir nuevas variables,
borrarlas, etc, para ello basta con añadir el nombre de la variable
y su valor en el campo Name y Value respectivamente y hacer
clic en el botón Set. Si queremos borrar todas las variables
hacemos clic en el botón Clear All (Borrar Todo). Para que los
nuevos valores de las variables tenga efecto en nuestro entorno
tenemos que hacer un Refresh Card desde la opción de menu Go.
- Historico (History): El historico (figura 4) nos muestra todos
los cards (cartas) que hemos ido visitando con nuestro navegador
cliente. Las cartas se muestran las más recientes en primer
lugar y las más antiguas (las primeras visitadas) al final de
la lista, se puede fijar un límite de entradas en el histórico
desde la opción Preferences del menu principal Toolkit.

Figura 4
- WML Deck (Baraja WML): Desde aquí podemos ver el código y
el tamaño del documento (figura 5) WML o WMLScript activo en
este momento. Es importante señalar que desde aquí podemos acceder
a otras diferentes presentaciones del documento, estas son:
la posibilidad de ver el código original y editarlo (Original
Source), la baraja decodificada (decoded deck, que es la opción
por defecto) o bien ver la baraja codificada (undecoded bytecode,
en la cual vemos nuestra baraja como una cadena de caracteres
hexadecimales)

Figura 5
- Bookmarks (Favoritos): Contiene una lista con aquellas direcciones
que pueden resultarnos de interes, estas direcciones pueden
ser también ficheros en nuestro disco duro. Para añadir un nuevo
bookmark basta con hacer clic en boton New que aparece en la
pantalla e introducir la nueva dirección que queremos añadir,
posteriormente si queremos desplazarnos a dicho bookmark basta
con seleccionarlo y hacer clic en el botón de Go.
- Sesión (Session) Esta vista contiene una tabla con tres columnas,
la primera de estas columnas URL determina la URL que ha sido
cargada en el sistema, la segunda columna MIME-TYPE indica que
tipo de contenido habia en esa URL (en la siguiente tabla os
recuerdo los tipo MIME-TYPE posibles). Finalmente la tercera
columna, Size, nos muestra la información sobre los bytes cargados.
| MIME-TYPE |
| Tipo de Contenido |
MIME type |
Extensión |
| Fichero WML |
text/vnd.wap.wml |
wml |
| Bitmap |
image/vnd.wap.wbmp |
wbmp |
| WML Compilado |
application/vnd.wap.wmlc |
wmlc |
| Fichero WMLScript |
text/vnd.wap.wmlscript |
wmls |
| WMLScript compilado |
application/vnd.wap.wmlscriptc |
wmlsc |
El editor WBMP
Una de las utilidades más interesantes que tenemos dentro del
Nokia Wap Toolkit es el editor de imágenes WBMP, recordar que
el tipo WBMP es el tipo definido para las imágenes dentro del
estándar WAP. El editor WBMP permite hacer lo siguiente:
- Crear imágenes WBMP de cualquier tamaño.
- Abrir imagines WBMP ya existentes y modificarlas, el editor
nos permite cortar, pegar y todas las opciones de edición típica.
- Importar GIF y JPEG para convertirlas en WBMP
- Hacer zooms sobre imágenes
Si queremos ver un ejemplo del uso de WBMP dentro del Nokia
Wap Toolkit tenemos un programa llamado weather.wml que nos puede
ser de utilidad para familiarizarnos con el uso del editor. Para
crear un nuevo WBMP podemos hacerlo desde el menu File seleccionar
New y a continuacion seleccionar en WBMP Image, introduciremos
el alto y ancho de nuestra imagen y accederemos al editor propiamente
dicho (figura 6), el WBMP es un pograma de dibujo muy sencillo
pero a la vez lo suficientemente potente como para permitirnos
hacer todo tipo de graficos que cualquier aplicación WAP pudiese
necesitar.
Figura 6
Creando un pequeño programa en WML
Conociendo todo lo anterior estaremos ya en situación de crear
nuestro primer programa WAP con el Nokia WAP Toolkit, el programa
que vamos a crear es un programa muy sencillo, como deciamos al
principio del artículo el típico “Hola Mundo” pero en versión
WAP. Para hacerlo seguimos los siguientes pasos:
- Hacemos clic en File/New WML Deck, y ¡vaya! se genera un cuerpo
de programa automáticamente que resulta ser casi el que nosotros
queremos, salvo por la salvedad de que el mensaje nos aparece
en ingles como “Hello world”. Fijaros en lo útil que resulta este
entorno de desarrollo ya que los distintos tags, comentarios,
en definitiva cualquier elemento que escribamos aparece marcado
en colores distintos, también es interesante ver que el cuerpo
de programa que se nos crea automáticamente nos permitirá un comienzo
rápido para hacer cualquier programa WAP.
- Personalizamos nuestro mensaje cambiando “Hello World” por “Hola
Mundo”.
- Hacemos clic en el botón de Compile para ver si nuestro código
está escrito correctamente, en este momento se nos pide que almacenemos
el fichero en disco.
- Hacemos clic en el botón Show para ver el resultado final de
nuestra creación (figura 7).
Como veis todo el proceso es muy sencillo, ahora os recomiendo
que veais las distintas pestañas para observar que resultados
hemos obtenido y asi seguir familiarizandonos con el programa.

Figura 7
Conclusión:
Espero que este artículo haya servido a todos aquellos que
se inician en este mundo a dar sus primeros pasos con una herramienta
muy completa y relativamente fácil de usar, tambien espero que
a aquellos que lleven más tiempo les haya aportado algo nuevo.
Y nada más por mi parte, hasta la próxima.
Santiago Márquez Solís
Tus comentarios y opiniones sobre el artículo:
|
|