De ahora en adelante consideraremos que ya tenemos un applet, bien porque lo hemos programado nosotros mismos, bien porque estamos usando un applet de distribución gratuita, es hora de aprender a insertarlo en nuestra página Web. Para ello usaremos una nueva etiqueta: APPLET. Esta etiqueta está formada por una instrucción de inicio, <APPLET>, y una instrucción de fin, </APPLET>.
|
La etiqueta APPLET fue introducida por Netscape en la versión 2.0 de Navigator fruto de un acuerdo con Sun para soportar la tecnología Java. Todos sus navegadores posteriores también la soportan. El otro gran navegador, Microsoft Internet Explorer, soporta la tecnología Java desde la versión 3.0. En cuanto al estándar se refiere, esta etiqueta se incluye en la especificación HTML 3.2, aunque no podemos asegurar que los navegadores posteriores que respetan la norma HTML 3.2 soporten la tecnología Java, simplemente entienden la etiqueta, pero no son capaces de ejecutar un applet. |
La inserción de un applet en una página es similar a la inserción de una imagen, a lo cual ya estamos muy acostumbrados. Deberemos especificar el archivo donde se encuentra el applet y las dimensiones (anchura y altura) que este debe ocupar en la página. Al igual que ocurría con las imágenes el applet se introducirá en el lugar exacto donde indique su código, si es necesario se insertará entre el texto, pero no pasará a una nueva línea, como sucedía con las marquesinas, si no lo indicamos específicamente (con la etiqueta <BR>). Para indicar el archivo en el que se encuentra el applet usaremos el atributo CODE y para especificar la anchura y altura en pixeles usaremos WIDTH y HEIGHT respectivamente. En resumen, para insertar un applet debemos usar el siguiente código en cualquier lugar de la página:
<APPLET CODE="nombre_applet.class" WIDTH="ancho" HEIGHT="alto">
</APPLET>
|
Los tres atributos que hemos usado deben incluirse obligatoriamente siempre que insertemos un applet. Esto parece obvio con el atributo CODE, ya que no se podría insertar el applet sin indicar donde está, pero resulta más extraño con los atributos WIDTH y HEIGHT. Aun así, si no especificamos el tamaño que debe ocupar el applet en la página no será mostrado ni ejecutado por el navegador. Debemos estar muy atentos a este detalle ya que hasta ahora estos dos atributos eran totalmente optativos y por ello es un error común olvidarlos y no ser capaz de descubrir porqué no funciona el applet.
Y aquí vemos como insertar un applet de ejemplo:
<HTML>
<HEAD>
<TITLE>Applet sonoro</TITLE>
</HEAD>
<BODY>
<APPLET CODE="SoundExample.class" WIDTH=450 HEIGHT=50></APPLET>
</BODY>
</HTML>
|
|
Los applets de Java son sensibles a las mayúsculas y a las minúsculas, si no ponemos el nombre del archivo exactamente igual, incluyendo mayúsculas o minúsculas, no hubiera funcionado. Por ejemplo, si hubiéramos escrito CODE="soundexample.class" el código anterior no hubiera funcionado. Este es un ejemplo muy común por lo que debemos tener cuidado. |
Si visualizamos este archivo con un navegador que soporte la tecnología Java debemos obtener el resultado de la figura 11.3.
|
Los applets Java tienen la terminación .class, como ya hemos comentado antes, esto exige que para poder usar un applet debemos utilizar un sistema operativo que soporte nombres largos. Desgraciadamente los usuarios de Windows 3.1 no podrán probar esta tecnología localmente en su ordenador. Afortunadamente esto no significa que no puedan disfrutar los applets que estén publicados en el WWW. |
Pasemos a explicar que ocurre cuando el navegador se encuentra con el código anterior. En primer lugar busca el archivo SoundExample.class en la misma dirección URL y en el mismo directorio donde se encuentre la página actual y lo baja a nuestro ordenador (este es un ejemplo en el que ambos archivos ya están en nuestro ordenador, con lo que este paso no sería necesario). Mientras reserva un rectángulo, con las dimensiones especificadas por los atributos WIDTH y HEIGHT, donde será mostrado el applet. Una vez ha llegado el archivo anterior el navegador llama a lo que se conoce como máquina virtual Java (también llamada JVM, Java Virtual Machine) que pasará a ejecutar el applet. A partir de ese momento el applet se ejecutará como cualquier otro programa de nuestro ordenador, aunque lo hará en el interior de la página Web. De esta forma cuando nuestro cursos este dentro del rectángulo de 450x50 creado el control pasará al applet y si pulsamos los botones el propio applet será el encargado de realizar las acciones oportunas. La Máquina Virtual Java implementa además ciertas medidas de seguridad para que el applet no pueda, por ejemplo, borrar nuestro disco duro. Una vez conocemos el funcionamiento de los applets podemos adentrarnos más a fondo en las diferentes características de estos que pueden ser modificadas con el lenguaje HTML.
Especificando la dirección del applet.
Dejando a un lado el ejemplo y volviendo al código general es obvio que el código es, todavía, muy sencillo. Para empezar el archivo con el applet (que siempre tiene la extensión .class) se encuentra en el mismo directorio que el documento HTML de la página actual. Lo habitual, sin embargo, es agrupar todos los applets Java en un directorio dedicado de la misma manera que hacíamos con las imágenes. Podríamos pensar que para reflejar este cambio no tendríamos más que cambiar ligeramente el código y escribir:
<APPLET CODE="applets/nombre_applet.class" WIDTH="ancho" HEIGHT="alto">
</APPLET>
|
Por desgracia, este código es incorrecto. El atributo CODE permite únicamente especificar el nombre del archivo donde se encuentra el applet, pero no podemos incluir un directorio ni, por supuesto, una dirección de Internet. ¿Significa esto que es imposible? Afortunadamente no, los diseñadores de esta etiqueta pensaron en ello e introdujeron un nuevo atributo, CODEBASE, que nos permitirá indicar la dirección URL o ruta de directorios donde se encuentre el archivo especificado en el atributo CODE. Usando CODEBASE podemos reescribir el código anterior de manera correcta:
<APPLET CODEBASE="applets/" CODE="nombre_applet.class" WIDTH="ancho" HEIGHT="alto">
</APPLET>
|
Sin embargo podemos ir más allá. Podemos usar en nuestra página un applet que se encuentre en cualquier otro lugar del WWW sin tener que copiarlo a nuestro servidor. Para ello no tendremos más que usar el atributo CODEBASE para especificar la dirección base. Por ejemplo:
<APPLET code=TicTacToe.class width=120 height=120 CODEBASE="http://Java.sun.com/applets/TicTacToe/1.1/">
</APPLET>
|
Esta dirección es real, si incluimos este código en una página habremos insertado un juego de las tres en raya como el que vemos en la figura 11.4 en el que cualquier visitante de nuestra página podrá jugar (contra el ordenador). Si vemos en cualquier página un applet que nos gusta y sus autores permiten que sea utilizado en páginas ajenas (esto es muy importante) no debemos dudarlo y usarlo. La carga del applet no será más lenta que si estuviera en nuestro mismo servidor y además tendremos a nuestra disposición una mayor cantidad de applets, ya que muchos autores permiten el uso de applets siempre y cuando estos no sean copiados de su servidor sino usados directamente desde él.