El desarrollo de un applets contempla dos etapas:
Esta etapa es la más compleja y consiste en definir una subclase de Applet. En esta subclase se redefinen algunos métodos de Applet como init.
Consiste simplemente en agregar la etiqueta <applet ...> a alguna página Web. Esta etapa no presenta mayores complicaciones.
import java.applet.*; // Contiene la clase Applet import java.awt.*; // Las clases de la AWT public class MyApplet extends Applet { ... public void init() { // redefinición ... // construcción de los widgets } }
Ejemplo: La misma interfaz de antes como applet.
import java.applet.*; // agregar import java.awt.*; import java.awt.event.*; public class GuiApplet extends Applet { // cambiar Button boton; // Se crean variables de instancia Label etiq; // para cada widget ... public void init() { // Cambiar el constructor de Gui por init setLayout(new BorderLayout()); // asigna el layout ... // Lo mismo que el constructor de la clase Gui } // No lleva main // public static void main(String[] args) { ... } } ...
El applet responde a los eventos de interacción de la misma forma que lo hace una aplicación.
Este código requiere la versión 1.1 de Java, por lo que no funciona en la mayoría de los browsers instalados, los cuales sólo implementan la versión 1.0.2.public class GuiApplet extends Applet { ... public void init() { ... texto.addActionListener(new IngresoDeTexto()); } public class IngresoDeTexto implements ActionListener { public void actionPerformed(ActionEvent e) { lista.add(texto.getText()); // Agrega el ítem a la lista texto.setText(""); // Borra el campo de texto } } }
<applet code="GuiApplet.class" codebase="Awt" width=250 height=150> Este es el texto que aparece en caso de que el browser Web no tenga un intérprete de Java </applet>
En la página Web se pueden especificar parámetros:
Estos parámetros se reciben en el applet por medio del método getParameter:<applet code="GuiApplet.class" codebase="Awt" width=250 height=150> <param name="etiqueta" value="Hello World"> <param name="item0" value="Primer item"> </applet>
getParameter retorna null si el parámetro demandado no fue especificado desde la página Web.String paramEtiqueta= getParameter("etiqueta"); String paramItem0= getParameter("item0");
Ejemplo: Un applet con una interfaz gráfica.
Los parámetros permiten mostrar variaciones del mismo applet sin recompilar el fuente en java.
Los applets hechos para la versión 1.1 no funcionan en la mayoría de los browsers.
Consejos útiles sobre el desarrollo de applets para la versión 1.02:
Consejos útiles sobre el desarrollo de applets en general:
Desarrollar applets debería ser sencillo, pero en la práctica no los es debido a:
Solución no trivial: Sun ha implementado Java Plug-in. Se trata de un mecanismo que actualiza semi-automáticamente el browser del cliente a la última versión de Java. Esto ocurre cuando el usuario visita uno de los applets que Ud. desarrolló.
Solución no trivial: firme digitalmente sus applets. Obtener la firma y mantenerla en un lugar seguro, requiere un esfuerzo adicional.