• T4CH
  • NEWS
  • VIDEO
Forum > Software

[java] problema con appletviewer

Discussione inserita in 'Software' da franpic, 26 Maggio 2011.

  1. franpic techNewbie

    Buon giorno a tutti,

    ho creato delle applet java e ovviamente con eclipse mi partono.
    Volendo provare con appletviewer però no, tantomeno in vari browser.

    vi posto il codice della pagina html:
    <P>Questa è la mia <I>prima APPLET</I></P>
    <APPLET CODE="..\..\workspace\Applet\bin\AppletAuto.class" WIDTH=300 HEIGHT=300>Per la visualizzazione di questa applet hai necessità di aggiornare il tuo browser</APPLET>

    e quì quello della classe:
    import java.applet.Applet;
    import java.awt.Color;
    import java.awt.Font;
    import java.awt.Graphics;
    import java.awt.Graphics2D;
    import java.awt.font.FontRenderContext;
    import java.awt.font.TextLayout;
    import java.awt.geom.Point2D;
    import java.awt.geom.Line2D;
    import java.awt.Rectangle;
    import java.awt.geom.Ellipse2D;

    public class AppletAuto extends Applet{
    public void paint(Graphics g) {
    //ristabilisce il riferimento a Graphics2D
    Graphics2D g2 = (Graphics2D)g;

    //Costruisce la carrozzeria centrale
    final int X_CENTRALE = (getWidth()/2) - 30;
    final int Y_CENTRALE = (getHeight()/2) - 5;
    final int LUNGHEZZA = 60;
    final int ALTEZZA = 10;
    Rectangle centrale = new Rectangle(X_CENTRALE, Y_CENTRALE, LUNGHEZZA, ALTEZZA);

    //Costruice le 2 ruote
    Ellipse2D.Double ruota1 = new Ellipse2D.Double((X_CENTRALE + 10), (Y_CENTRALE + 10), 10, 10);
    Ellipse2D.Double ruota2 = new Ellipse2D.Double((X_CENTRALE + 40), (Y_CENTRALE + 10), 10, 10);

    //Costruisce la parte superiore
    Point2D.Double p1 = new Point2D.Double(X_CENTRALE + 10, Y_CENTRALE);
    Point2D.Double p2 = new Point2D.Double(X_CENTRALE + 20, Y_CENTRALE - 10);
    Point2D.Double p3 = new Point2D.Double(X_CENTRALE + 40, Y_CENTRALE - 10);
    Point2D.Double p4 = new Point2D.Double(X_CENTRALE + 50, Y_CENTRALE);
    Line2D.Double l1 = new Line2D.Double(p1, p2);
    Line2D.Double l2 = new Line2D.Double(p2, p3);
    Line2D.Double l3 = new Line2D.Double(p3, p4);

    //Disegna tutte le parti
    g2.draw(l1);
    g2.draw(l2);
    g2.draw(l3);
    g2.draw(centrale);
    g2.draw(ruota1);
    g2.draw(ruota2);

    //testo da scrivere
    String messaggio = "JavaFrancescoMobile 1.2 ti";

    Font fontMoltoGrande = new Font("Sans-Serif",Font.PLAIN, 18);
    g2.setFont(fontMoltoGrande);
    g2.setColor(Color.black);

    //misurare una stringa tramite l'oggetto TextLayout
    //dopo aver convertito g2 in un oggetto di tipo FontRenderContext
    FontRenderContext contesto = g2.getFontRenderContext();
    TextLayout layout = new TextLayout(messaggio, fontMoltoGrande, contesto);

    final float X_INIZIALE = (getWidth() - layout.getAdvance()) / 2;
    final float Y_INIZIALE = Y_CENTRALE + 40;

    g2.drawString(messaggio, X_INIZIALE, Y_INIZIALE);

    }

    }


    come vedrete nel rapporto della JVM c'è scritto che non trova la classe, può dipendere dal fatto che utilizzo percorsi relativi e non assoluti?


    e questo è il report della java virtual machine:
    Java Plug-in 1.6.0_25
    Uso della versione JRE 1.6.0_25-b06 Java HotSpot(TM) Client VM
    Directory principale utente = C:\Users\pic
    ----------------------------------------------------
    c: cancella finestra console
    f: finalizza oggetti nella coda di finalizzazione
    g: recupera spazio
    h: visualizza questo messaggio di aiuto
    l: esegui dump dell'elenco classloader
    m: stampa utilizzo memoria
    o: attiva registrazione eventi
    q: nascondi console
    r: ricarica configurazione criteri
    s: esegui dump delle proprietà del sistema e dell'installazione
    t: esegui dump dell'elenco thread
    v: esegui dump dello stack del thread
    x: cancella cache classloader
    0-5: imposta livello di traccia su <n>
    ----------------------------------------------------


    caricamento: classe ..\..\workspace\Applet\bin\AppletAuto.class non trovata.
    java.lang.ClassNotFoundException: ......workspace.Applet.bin.AppletAuto.class
    at sun.plugin2.applet.Applet2ClassLoader.findClass(Unknown Source)
    at sun.plugin2.applet.Plugin2ClassLoader.loadClass0(Unknown Source)
    at sun.plugin2.applet.Plugin2ClassLoader.loadClass(Unknown Source)
    at sun.plugin2.applet.Plugin2ClassLoader.loadClass(Unknown Source)
    at java.lang.ClassLoader.loadClass(Unknown Source)
    at sun.plugin2.applet.Plugin2ClassLoader.loadCode(Unknown Source)
    at sun.plugin2.applet.Plugin2Manager.createApplet(Unknown Source)
    at sun.plugin2.applet.Plugin2Manager$AppletExecutionRunnable.run(Unknown Source)
    at java.lang.Thread.run(Unknown Source)
    Eccezione: java.lang.ClassNotFoundException: ......workspace.Applet.bin.AppletAuto.class
    franpic, 26 Maggio 2011
    #1
Password dimenticata?
SU TERMINI DI SERVIZIO CONTATTACI