PDF de programación - Tema 7. Construcción de Applets en Java - Programación en Java

Imágen de pdf Tema 7. Construcción de Applets en Java - Programación en Java

Tema 7. Construcción de Applets en Java - Programación en Javagráfica de visualizaciones

Publicado el 7 de Septiembre del 2020
487 visualizaciones desde el 7 de Septiembre del 2020
133,0 KB
15 paginas
Creado hace 20a (12/05/2003)
Programación en Java

Tema 7. Construcción de Applets en
Java

Luis Rodríguez Baena

Universidad Pontificia de Salamanca (campus Madrid)
Facultad de Informática

1

Applets

Aplicación Java que se ejecuta dentro de un cliente web

para ampliar las capacidades de interacción del navegador.

Ventajas:

No hay necesidad de instalar la aplicación en la máquina local.
Aumenta la seguridad de los sistemas.

Inconvenientes.

Entorno de ejecución más restringido que una aplicación Java.
La ejecución de un applet puede ser más lenta que la de una

aplicación Java.

Universidad Pontificia de Salamanca (campus Madrid)
Facultad de Informática ©Luis Rodríguez Baena, 2003

2

2

Las clases Applet

java.lang.Object

java.awt.Component

java.awt.Container

java.awt.Panel

java.awt.Applet

javax.swing.JApplet

Presenta un marco de trabajo de

aplicación para construir otras clases.
Se trata de un contenedor de primer
nivel donde colocar los componentes.
Se puede usar tanto la clase Applet

como la clase JApplet.
Si se utilizan componentes swing se debe

utilizar la clase JApplet.

Universidad Pontificia de Salamanca (campus Madrid)
Facultad de Informática ©Luis Rodríguez Baena, 2003

3

3

Restricciones de seguridad

Los applets se ejecutan en un entorno restringido (sandbox).
Un applet no puede ejecutar un programa local.
Un applet no puede comunicarse con ningún otro servidor aparte del

que ha sido cargado.

Un applet no puede leer ni escribir en el sistema de archivos local.
Un applet no puede obtener información acerca de la máquina cliente
excepto la versión utilizada de Java, el nombre y versión del sistema
operativo, los caracteres utilizados como separadores de archivo, rutas
o líneas.

Estas restricciones se pueden evitar utilizando appletsfirmados, que

incluyen un certificado para que no puedan ser falsificados

Universidad Pontificia de Salamanca (campus Madrid)
Facultad de Informática ©Luis Rodríguez Baena, 2003

4

4

Ciclo de vida de un applet (I)

La clase Applet dispone de cuatro métodos que controlan

su creación y ejecución.
Esos métodos se pueden sobrescribir para dotarles de

funcionalidad.

init().

Se llama en la primera inicialización del applet.
Se utiliza para incluir las tareas que lleven una cantidad

considerable de tiempo.

Incluirán aquellas tareas que en otras clases se implementen en el

constructor.

Universidad Pontificia de Salamanca (campus Madrid)
Facultad de Informática ©Luis Rodríguez Baena, 2003

5

5

Ciclo de vida de un applet (II)

start().

Se llama cada vez que se visualiza el applet en el navegador.
Permite que comiencen las tareas normales de ejecución.

stop().

Se invoca cuando el applet se aparta de la vista del navegador.
Se utiliza para detener las tareas más costosas.
También se llama justo antes de destruir el applet con el método

destroy().

destroy().

Se llama cuando se descarga el applet del navegador.
Se utiliza para liberar los recursos.

No todos los navegadores implementan de la misma forma estos

métodos.

Universidad Pontificia de Salamanca (campus Madrid)
Facultad de Informática ©Luis Rodríguez Baena, 2003

6

6

Ciclo de vida de un applet (III)

Creación

Inicialización

init()

Inicio / Reinicio

start()

Finalización
destroy()

Parada
stop()

Universidad Pontificia de Salamanca (campus Madrid)
Facultad de Informática ©Luis Rodríguez Baena, 2003

7

7

Un applet básico

Todos los applets heredan de la clase Applet, que a su vez hereda de la clase

Panel.
La clase Panel es un contenedor para elementos GUI.

Para inicializar y comenzar a ejecutar el applet se deben sobreescribir los método

Los applets no tienen método main().

init() y start().
import javax.swing.*;
import java.awt.event.*;
public class HolaMundoApplet extends JApplet{

JButton btn = new JButton("Pulse...");
JLabel lbl = new JLabel();
public void init(){

getContentPane().add(btn);
btn.addActionListener(new ActionListener(){

public void actionPerformed(ActionEvent event){
}

btn.setText("Hola mundo!");

});

}

}

Universidad Pontificia de Salamanca (campus Madrid)
Facultad de Informática ©Luis Rodríguez Baena, 2003

8

8

Ejecución del applet (I)

El applet debe ejecutarse en un navegador como parte de

un archivo HTML.

<html>
<head><title>Un applet básico</title>
</head>
<body>
<applet

code = "HolaMundoApplet.class"
width = "150"
height = "50"
>

</applet>
</html>

Universidad Pontificia de Salamanca (campus Madrid)
Facultad de Informática ©Luis Rodríguez Baena, 2003

9

9

Ejecución del applet (II)

La etiqueta applet de HTML.

code. Obligatorio. Indica el nombre de la clase a cargar.
with/height. Obligatorio. Ancho y alto de la ventana del applet.
codebase. Opcional. Indica un URL de la ubicación del applet en un

servidor.

<applet CODEBASE="http://java.sun.com/applets/jdk/1.1/demo/NervousText"

code="NervousText.class"
width=400 height=75>

</applet>

La utilidad appletviewer.

Extrae los applets existentes en un archivo HTML y los ejecuta en ventanas

separadas ignorando el resto del código HTML.

Admite como argumento un archivo HTML.
También es posible utilizar un archivo java en el que las etiquetas applet se han

puesto como comentarios.

Universidad Pontificia de Salamanca (campus Madrid)
Facultad de Informática ©Luis Rodríguez Baena, 2003

10

10

Ejecución del applet (III)

La etiqueta object.

Recomendada por el W3C en lujar de applet.

No funciona correctamente con Internet Explorer 6.

<object codetype="application/java"

classid = "java:HolaMundoApplet.class"
width
= "150"
height = "50"

>

El atributo codetype indica el tipo de objeto.

Es un tipo mime (en este caso una aplicación Java)

El atributo code es sustituido por classid, donde hay que indicar que se

trata de una clase java.

Universidad Pontificia de Salamanca (campus Madrid)
Facultad de Informática ©Luis Rodríguez Baena, 2003

11

11

Parámetros de un applet (I)

Los parámetros de pasan desde la etiqueta applet
mediante etiquetas param anidadas en su interior.
<param name=“nombreParam” value=“valor”>

Para extraer el contenido, se utiliza el método

getParameter de la clase JApplet.
public String getParameter(String nombreParam).

Devuelve una cadena con el contenido del atributo value.

Universidad Pontificia de Salamanca (campus Madrid)
Facultad de Informática ©Luis Rodríguez Baena, 2003

12

12

Parámetros de un applet (II)

/* <applet

= "HolaMundoApplet.class"

code
width = "150"
height= "50"
>
<param name="Usuario" value ="Juanillo">

</applet> */
import javax.swing.*;
import java.awt.event.*;
public class HolaMundoApplet extends JApplet{

JButton btn = new JButton("Pulse...");
JLabel lbl = new JLabel();
String mensaje = "Hola, mundo!";
public void init(){

String usuario = getParameter("Usuario");
if(usuario != null)
getContentPane().add(btn);
btn.addActionListener(new ActionListener(){

mensaje = "Hola, " + usuario + "!";

public void actionPerformed(ActionEvent event){
}

btn.setText(mensaje);

});

}

}

Universidad Pontificia de Salamanca (campus Madrid)
Facultad de Informática ©Luis Rodríguez Baena, 2003

13

13

Algunos métodos de la clase applet.

Redefinición de métodos gráficos.

public void paint(Graphics g).
public void update(Graphics g).
public void repaint().

Actualiza el contenedor, redibujando sus componentes.

Llama a update tan pronto como sea posible.

Métodos para la recuperación de información.

public URL getCodeBase().
public URL getDocumentBase().
public String getAppletInfo().

Devuelve información sobre el applet. Un applet debería sobrescribir
este método para proporcionar información sobre el autor, versión,
copyright, etc.

Universidad Pontificia de Salamanca (campus Madrid)
Facultad de Informática ©Luis Rodríguez Baena, 2003

14

14

Conversión de aplicaciones GUI en applets

Crear una página HTML para cargar el código del applet.
Sustituir la subclase de JFrame por una subclase de JApplet y

definirla como pública.

Eliminar el método main.
Mover el código de inicialización del contenedor del constructor al

método init del applet.

Eliminar las llamadas a setSize().
Eliminar la llamada a setDefaultCloseOperation().
Eliminar las llamadas a setTitle().
No invocar el método show().

Universidad Pontificia de Salamanca (campus Madrid)
Facultad de Informática ©Luis Rodríguez Baena, 2003

15

15
  • Links de descarga
http://lwp-l.com/pdf18183

Comentarios de: Tema 7. Construcción de Applets en Java - Programación en Java (0)


No hay comentarios
 

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios...
CerrarCerrar
CerrarCerrar
Cerrar

Tienes que ser un usuario registrado para poder insertar imágenes, archivos y/o videos.

Puedes registrarte o validarte desde aquí.

Codigo
Negrita
Subrayado
Tachado
Cursiva
Insertar enlace
Imagen externa
Emoticon
Tabular
Centrar
Titulo
Linea
Disminuir
Aumentar
Vista preliminar
sonreir
dientes
lengua
guiño
enfadado
confundido
llorar
avergonzado
sorprendido
triste
sol
estrella
jarra
camara
taza de cafe
email
beso
bombilla
amor
mal
bien
Es necesario revisar y aceptar las políticas de privacidad