Академический Документы
Профессиональный Документы
Культура Документы
TECNOLÓGICO
Ingeniería en Sistemas Computacionales Tecnológico
NACIONAL
DE MÉXICO de la Costa Grande
Unidad II “Aplicaciones web”
Los applets deben ser subclases de la clase Applet (si se van a utilizar clases de AWT) o de JApplet (si se van a
utilizar clases de Swing).A diferencia de las aplicaciones vistas hasta el momento, la ejecución de un applet no
comienza en el método main(.). Hay una serie de métodos que son llamados cuando ocurren determinadas
circunstancias. Estos métodos de Applet o de JApplet son los que hay que sobreescribir.
Un applet concreto puede sobreescribir todos estos méodos o solamente algunos de ellos en función de la tarea que
deba realizar.
Ejemplo: ISCTAPU2EJEM007
Archivo html
<!--
Nombre del programa: ISCTAPU2EJEM007.html
Fecha de programacion: 13 de Abril de 2018
Autor :
Objetivo : Carga el appet de java ISCTAPU2EJEM007.class
-->
<HTML>
<HEAD>
<TITLE>Topicos Avanzados de programación </TITLE>
</HEAD>
<CENTER>
<BODY background="ISCTAPU2EJEM007Fondo.png">
</BODY>
<h1>
UNIDAD 2
</h1>
<h6>
<img src = "ISCTAPU2EJEM007A.jpg" border="0" width="80" height="80">
"Desarrollo de aplicaciones para internet"
<img src = "ISCTAPU2EJEM007B.jpg" border="0" width="80" height="80">
</h6>
<APPLET CODE = "ISCTAPU2EJEM007.class"
WIDTH=1000
HEIGHT=200>
</APPLET>
</CENTER>
/******************************************************
Nombre del programa: ISCTAPU2EJEM007.java
Fecha de programacion: 13 de Abril de 2018
Autor :
Objetivo : Ejemplo del manejo de TextField con color y
tipo de letra, mediante el metod action –
return de tipo boleano
*******************************************************/
import java.awt.*;
import java.applet.*;
add(CampodeTexto1);
add(CampodeTexto2);
Practica: ISCTAPU2PRAC007
En base al ejemplo ISCTAPU2EJEM007.java debera realizar las investigación necesaria para poder realizar la
practica
Donde:
TAP es el alias que voy a utilizar (debes sustituirlo por el que tú deseas).
365 son los días de validez del certificado.
Después de ejecutar el comando se te harán algunas preguntas (como se muestra en la imagen siguiente), debes
contestarlas a tu preferencia (como te venga en gana pues).
Después de esto te pedirá escribir la contraseña que definiste anteriormente, si es correcta el applet quedará firmado
y listo para ejecutarse en el navegador. Es importante que tomes en cuenta que si utilizas varios archivos jar en tu
aplicación es necesario que todos estén firmados ya que de lo contrario seguirás sin poder ejecutarla. Cuando ejecutes
tu aplicación te aparecerá un mensaje parecido al siguiente:
Una vez que des clic en Ejecutar podrás trabajar con ella sin problemas.
El plugin de Java
A la hora de cargar un applet en un navegador Web se presentan cualquiera de las siguientes acciones:
• Cargarlo en la maquina virtual que proporciona el propio navegador o,
• Cargarlo en el plugin que proporciona Oracle (lo cual implica que debe estar instalado el plugin para el
navegador).
La primera aproximacion tiene la ventaja de que el cliente podrá ejecutar el applet sin necesidad de haber
instalado nada adicional en el navegador. Pero tiene el inconveniente de que si el proveedor del navegador no
actualiza la máquina virtual es posible que no se pueda cargar codigo desarrollado con las últimas versiones del
JSDK. Si el applet que hemos desarrollado merece la pena y necesita las últimas bibliotecas de clases se puede
forzar a que el cliente utilice el plugin pero si es una mera decoración se recomienda no forzar a utilizar el plugin.
Si se desea forzar al navegador a utilizar el plugin, el (sencillo) código HTML mostrado a lo largo de este tema se
complica ya que hay que tener en cuenta las particularidades de cada navegador (y del appletviewer) para
contemplar todas las posibilidades. El codigo de la derecha muestra la etiqueta <applet> tal y como lo hemos visto
hasta ahora y el de la derecha muestra la transformacion para que se ejecute en el plugin (hay que tener en cuenta
que si el cliente no tiene instalado el plugin este código intenta instalarlo).
Applets firmados
Seguridad en Java
Las características del diseño del lenguaje (verificación de los límites de los vectores, comprobacion de las
conversiones de tipo, ...) Un mecanismo de control de acceso que controla lo que el código puede hacer (acceso a
archivos, acceso a la red,...). Firma de codigo, con lo que es posible utilizar los algoritmos de criptografía estandar
para autenticar el codigo. El usuario de este código puede determinar quién creó el codigo y si el codigo ha sido
alterado después de haber sido firmado. Para ejecutar una aplicacion en la máquina virtual lo primero que hay
que hacer es cargar las clases necesarias para lo cual la maquina virtual utiliza cargadores de clase (que se
pueden personalizar). Una vez que los archivos de clases se han cargado en la máquina virtual, se verifica la
integridad del bytecode comprobando:
• Que en las llamadas a un método los argumentos son del tipo correcto.
• Que no se han violado las reglas para el acceso a los métodos y datos privados.
• Que los accesos a las variables locales caen dentro de la pila runtime (la pila de llamadas a métodos)...
• Si el hilo actual puede aceptar una conexión socket desde un host y número de puerto específicos.
• Si el hilo actual puede realizar una conexión socket a un host y número de puerto específicos.
• Si el hilo actual puede esperar una solicitud de conexión en un número de puerto local específico.
• Si el hilo actual puede llamar a los métodos stop(), suspend(), resume(), destroy(), set- Priority() /
setMaxPriority(), setName(), o setDaemon() de un hilo dado o de un grupo de hilos.
• Si el hilo actual puede iniciar un trabajo de impresión.
El comportamiento por defecto al ejecutar aplicaciones Java es que no se instala ningún administrador de
seguridad, de modo que todas estas operaciones están permitidas. Por otra parte la utilidad appletviewer
instala inmediatamente un administrador se seguridad (denominado AppletSecurity) que es bastante
restrictivo.
Ejemplo: ISCTAPU2EJEM008
Archivo html
<!--
Nombre del programa: ISCTAPU2EJEM008.html
Fecha de programacion: 13 de Abril de 2018
Autor :
Objetivo : Carga el appet de java ISCTAPU2EJEM008.class
-->
<HTML>
<HEAD>
<TITLE>Topicos Avanzados de programación </TITLE>
</HEAD>
<CENTER>
<h1>
UNIDAD 2
</h1>
<h6>
"Desarrollo de aplicaciones para internet"
</h6>
<APPLET
CODE = "ISCTAPU2EJEM008.class"
WIDTH = 1000
HEIGHT = 200>
</APPLET>
</CENTER>
</HTML>
Archivo java
/*************************************************************
Nombre del programa: ISCTAPU2EJEM008.java
Fecha de programacion: 13 de Abril de 2018
Autor :
Objetivo : Ejemplo del manejo de TextField con color y tipo
de letra tipo espejo, mediante el metodo handleEvent
return super.handleEvent(evt), similar a la practica
ISCTAPU2EJEM007.java
***************************************************************/
import java.awt.*;
import java.applet.*;
// Esta función miembro es llamada al crearse el applet. Es llamada sólo una vez.
// La clase Applet no hace nada en init(). Las clases derivadas deben sobrecargar
// este método para cambiar el tamaño durante su inicialización, y cualquier otra
// inicialización de los datos que solamente deba realizarse una vez. Deberían
// realizarse al menos las siguientes acciones:
// Carga de imágenes y sonido
// El redimensionado del applet para que tenga su tamaño correcto
// Asignación de valores a las variables globales
public void init() {
// Agregar la variable objeto CampoTexto1 al applet
add(CampodeTexto1);
// Asignacion de falso a la edicion del objeto CampoTexto2, esto quiere decir que no se puede editar
CampodeTexto2.setEditable(false);
Resultado
Practica ISCTAPU2PRAC008
1) En base al ejemplo ISCTAPU2EJEM008.java debera realizar las investigación necesaria para poder realizar la
practica
2) Debera deiseñar la interfaz para capturar
a) Nombre
B) Apellido Paterno
C) Apellido Materno
D) Fecha de nacimiento
1) Año
2) Mes
3) Dia
Bajo el siguiente formato
2018 Abril 13
3) A su vez cada uno de los datos debe tener su objeto reflejo correspondiente