Foros del Web » Programación para mayores de 30 ;) » Java »

Carga de applets

Estas en el tema de Carga de applets en el foro de Java en Foros del Web. Hola. Tengo un problema con la carga de un applet y me gustaria si alguien sabe como solucionarlo que me lo dijese. Aqui os planteo ...
  #1 (permalink)  
Antiguo 10/06/2007, 10:35
 
Fecha de Ingreso: abril-2006
Mensajes: 128
Antigüedad: 18 años
Puntos: 1
Carga de applets

Hola.
Tengo un problema con la carga de un applet y me gustaria si alguien sabe como solucionarlo que me lo dijese. Aqui os planteo el problema:
En la carpeta paquete tengo una serie de ficheros java, y entre ellos también tengo el fichero del applet. En este fichero tengo lo siguiente:

package paquete;

import java.awt.*;
import java.awt.BorderLayout;
import java.awt.GridLayout;
import java.awt.event.ActionEvent;

import java.awt.event.ActionListener;
import javax.swing.*;


public class bienvenido extends JApplet implements ActionListener {
private JTextField nombre = null;
private JPasswordField password = null;
JTextArea ta = new JTextArea(2,20);

public void init() {
try{

this.getContentPane().setLayout(new BorderLayout());

nombre = new JTextField();
nombre.setHorizontalAlignment(SwingConstants.LEFT) ;
password = new JPasswordField();
............

Como se puede ver tengo creado un package para todos los ficheros de java.
Y en el fichero de la carga del applet tengo puesto:

<applet codebase="../paquete/" code="bienvenido.class" width="300" height="100">
....
Y resulta que cuando cargo la pagina bienvenido.html me dice la maquina Java que no encuentra la clase bienvenido, y por lo tanto no puedo ver el applet que he creado.
Pero si del fichero applet quito la linea package paquete; si que se visualiza.
Entonces me gustaria que alguien me dijese como poder tener la linea de package y que se pueda cargar el applet en la pagina html, ya que este package me es necesario para hacer ciertas cosas con los ficheros que estan en el.
Muchas gracias de antemano.
Mari
  #2 (permalink)  
Antiguo 10/06/2007, 15:21
Avatar de chuidiang
Colaborador
 
Fecha de Ingreso: octubre-2004
Mensajes: 3.774
Antigüedad: 19 años, 7 meses
Puntos: 454
Re: Carga de applets

Hola:

El paquete y el nombre del directorio están muy relacionados. Si tu clase bienvenido está en el paquete "paquete", entonces debe estar dentro de un directorio que se llame "paquete".

Para que java la encuentre, debes situarte en el directorio padre del subdirectorio paquete y llamar a la clase paquete.bienvenido.

Resumientod, tu tag applet sería

<applet codebase="../" code="paquete.bienvenido" ....

no hace falta el .class en el code.

Se bueno.
__________________
Apuntes Java
Wiki de Programación
  #3 (permalink)  
Antiguo 11/06/2007, 08:36
 
Fecha de Ingreso: abril-2006
Mensajes: 128
Antigüedad: 18 años
Puntos: 1
Re: Carga de applets

El fichero bienvenido.html lo tengo en distinto directorio que el fichero del applet.
Por eso en codebase pongo el lugar donde tengo situado el fichero del applet, pero el problema es que en el bienvenido.java al poner la linea package paquete; no lee el fichero html la class
He puesto en el code="paquete.bienvenido" y me sigo saliendo el siguiente error:
cargar: clase paquete.bienvenido no encontrada.
java.lang.ClassNotFoundException: paguete.registrar
at sun.applet.AppletClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.applet.AppletClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.applet.AppletClassLoader.loadCode(Unknown Source)
at sun.applet.AppletPanel.createApplet(Unknown Source)
at sun.plugin.AppletViewer.createApplet(Unknown Source)
at sun.applet.AppletPanel.runLoader(Unknown Source)
at sun.applet.AppletPanel.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
Caused by: java.io.IOException: open HTTP connection failed.
at sun.applet.AppletClassLoader.getBytes(Unknown Source)
at sun.applet.AppletClassLoader.access$100(Unknown Source)
at sun.applet.AppletClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
... 10 more

Como lo puedo solucionar
  #4 (permalink)  
Antiguo 11/06/2007, 11:07
Avatar de chuidiang
Colaborador
 
Fecha de Ingreso: octubre-2004
Mensajes: 3.774
Antigüedad: 19 años, 7 meses
Puntos: 454
Re: Carga de applets

Hola:

Mira también lo que te puse en "code="../". Tienes que poner el path al sitio donde esté el subdirectorio paquete, no el path del fichero .class

Si tienes

/proyecto/directorio1/bienvenido.html
/proyecto/paquete/bienvenido.class

en bienvenido.html tienes que poner codebase="../" y no codebase="../paquete/"

Se bueno.
__________________
Apuntes Java
Wiki de Programación
  #5 (permalink)  
Antiguo 11/06/2007, 12:45
 
Fecha de Ingreso: octubre-2003
Mensajes: 3.578
Antigüedad: 20 años, 6 meses
Puntos: 51
Re: Carga de applets

Yo diría tambien que falta la clase paguete.registrar :
Cita:
cargar: clase paquete.bienvenido no encontrada.
java.lang.ClassNotFoundException: paguete.registrar
S!
  #6 (permalink)  
Antiguo 12/06/2007, 13:18
 
Fecha de Ingreso: abril-2006
Mensajes: 128
Antigüedad: 18 años
Puntos: 1
Re: Carga de applets

Gracias por la respuesta, probe a cambiar el code y el codebase y efectivamente lo estaba poniendo mal.
Lo puse como me dijistes y ya me funciona. Asi que problema soluciona.
Gracias
  #7 (permalink)  
Antiguo 09/12/2008, 06:56
 
Fecha de Ingreso: marzo-2008
Ubicación: Cádiz, España
Mensajes: 89
Antigüedad: 16 años, 1 mes
Puntos: 0
Respuesta: Carga de applets

Hola de nuevo. No consigo encntrar la forma correcta de poner el code u el codebase.
Os digo mi estructura y haber si me podeis ayudar.

La clase java está en:

src--->prueba--->Panoramica.java (prueba es un paqueta)

La clase compilada esta en:

WEB-INF---->classes-->prueba--->Panoramica.class

Desde la jsp lo llamo asi pero no me funciona. Me dice que no encuentra la clase.

Código PHP:
<applet code="/prueba/Panoramica" width=300 height=217 codebase="../">
<
param name="Fichero_Imagen" value="./img/motonegra.jpg">
</
applet
Cual es la forma correcta de ponerlo.
  #8 (permalink)  
Antiguo 09/12/2008, 11:03
 
Fecha de Ingreso: octubre-2003
Mensajes: 3.578
Antigüedad: 20 años, 6 meses
Puntos: 51
Respuesta: Carga de applets

1) code indica el nombre de la clase (fully qualified) asi que debería ser prueba.Panoramica, con ?.' y no con '/'.

2) Las clases dentro de WEB-INF no son visibles desde el navegador, así que las clases del applet no pueden estar dentro de WEB-INF/classes. Tienen que estar fuera, descargablesc omo cualquier otro recurso. Las clases que van dentro de WEB-INF son las de la aplicacion web, no las de los applet, que son otro tipo de aplicaciones.

3) Codebase es relativo a la pagina HTML donde esta ese tag, así que segun donde pongas las clases despues de hacer caso al punto 2... lo cambias adecuadamente. .

S!
__________________
Para obtener respuestas, pregunta de forma inteligente o si no, pregunta lo que quieras que yo contestaré lo que me dé la gana.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 10:32.