PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Java Applet BG ändern



neocrom
26.07.2009, 19:22
Hey Leute hier mal der Großteil des Codes für ein Applet mit Datenbank connec. das ich imo programmiere:
Java Code: Quelltext in neuem Fenster öffnen


package neoPC;

import javax.swing.JApplet;

import java.awt.Color;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.sql.Statement;
import java.sql.ResultSet;


public class Main extends JApplet
{
//Deklaration Attribute
Connection mConnec = null;
Statement stmt=null;
ResultSet erg=null;

public void init()
{
connect();
createRootPane();
rootPane.setBackground(Color.black);
rootPane.setSize(380,450);
setBackground(Color.black);
try
{
stmt=mConnec.createStatement();
}
catch (SQLException e)
{
e.printStackTrace();
}

try
{
erg=stmt.executeQuery("select * from projects;");
erg.next();
System.out.println(erg.getString(3));
String ffs="test";
ffs=erg.getString(1);
System.out.println(ffs);
int test=erg.getInt("ID");
System.out.println("Der Test ergab: "+test);

}
catch (SQLException e)
{
e.printStackTrace();
}
}


Nun habe ich schon länger nicht mehr mit Applets gearbeitet. ... also ich stell den BG ein (einmal über RootPane (sollte ja eig. ein Container sein -> Sowas wie die Zeichen Fälsche) und einmal über die JFrame habende Methode setBackground)

Doch innerhalb von sec. färbt sich der Background wieder grau (zmd. iM Applet viewer von Eclipse) ...

und damit komm ich zum nächsten Prob! ...

Ich wollte mir das App anschauen udn gucken ob das ganze wenigstens im Browser funzt:
Code der Html dat:


<HTML>
<HEAD>
<TITLE>JDBC-Test</TITLE>
</HEAD>
<BODY>
<H3><HR WIDTH="100%">Applet HTML Page<HR WIDTH="100%"></H3>

<P>
<APPLET code="Main.class" width=380 height=450></APPLET>
</P>

<HR WIDTH="100%"><FONT SIZE=-1><I>Generated BY Maself:D</I></FONT>
</BODY>
</HTML>


liegt im gleichen Verzeichniss wie die Klasse

Main.class

aber die Java konsole sagt mir:
Code:


java.lang.NoClassDefFoundError: Main (wrong name: neoPC/Main)
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java :621)
at java.security.SecureClassLoader.defineClass(Secure ClassLoader.java:124)
at sun.plugin2.applet.Applet2ClassLoader.findClass(Ap plet2ClassLoader.java:140)
at java.lang.ClassLoader.loadClass(ClassLoader.java:3 07)
at java.lang.ClassLoader.loadClass(ClassLoader.java:2 52)
at sun.plugin2.applet.Plugin2ClassLoader.loadCode(Plu gin2ClassLoader.java:417)
at sun.plugin2.applet.Plugin2Manager.createApplet(Plu gin2Manager.java:2866)
at sun.plugin2.applet.Plugin2Manager$AppletExecutionR unnable.run(Plugin2Manager.java:1395)
at java.lang.Thread.run(Thread.java:619)
Ausnahme: java.lang.NoClassDefFoundError: Main (wrong name: neoPC/Main)

so wie ich das sehe findet er die Klasse nicht aber wieso nicht? meine Die klasse ist klar im Package ... hab auch schon versucht die Class datei in den Ordner neoPC zutun und die html dat halt in den Ordner davor was leider auch nicht geklappt hat ...

naroht
26.07.2009, 21:43
Du kannst mit einem Applet nicht auf eine Datenbank zugreifen. Das verhindert die Same Origin Policy, welche beispielsweise auch den Zugriff von Javascript beschränkt. Du kannst demnach nur einen eigenständige Java-Anwendung erstellen. Sobald du das aus dem Browser heraus startest, greift die SOP.

neocrom
26.07.2009, 21:46
Jo danke dir =) und der BG fehler ist

this.getContentPane.setBackground(Color.black);

;)