Encontrar y Cargar Ficheros de Datos
Siempre que un applet necesita cargar algún dato desde un fichero que se especifica con una URL relativa (una URL que no especifica completamente la localización del fichero), el applet normalmente usa su code base o document base para formar la URL completa. El code base, devuelto por el método getCodeBase de Applet, es una URL que especifica el directorio desde el que se cargó la clase del applet. El document base, devuelto por el método getDocumentBase de Applet, especifica el directorio de la página HTML que contiene el applet.
A menos que la etiqueta <APPLET> especifique un code base tanto el code base como el document base se refieren al mismo directorio en el mismo servidor.
Los datos que un applet siempre necesita, o necesita relacionar con una copia, normalmente se especifican en relación al code base. Los datos que el usuario de applet especifica, normalmente usando parámetros, se especifican en relación al document base.
|
Nota:
Por razones de seguridad, los navegadores limitan las URLs desde las que pueden leer los appelts sin firmar. Por ejemplo, la mayoría de los navegadores no permiten que los applets sin firmar usen ".." para obtener directorios por encima del code base o del document base. También, como los applets no firmandos no pueden leer ficheros excepto aquellos que hay en el host originario del applet, el document base generalmente no es útil si el documento y el applet no firmado están en diferentes servidores.
|
La clase Applet define formas convenientes de métodos para cargar imágenes y sonidos que nos permiten especificar ficheros de imágenes y sonidos en relación a un URL base. Por ejemplo, imaginemos un applet construido con la estructura de directorios que se ve en la siguiente figura:
Para crear un objeto Image usando el fichero de imagen a.gif bajo el directorio imgDir, podemos usar el siguiente código:
Image image = getImage(getCodeBase(), "imgDir/a.gif");