# JApplet



## der simpel (8. Sep 2003)

Hallozusammn

ich hab ein applet zur kommunikation mit einer Datenbanktabelle erstellt.
im applet viewer wird alles korrekt angezeigt, nur wenn ich dann in der JTable eine zeile markieren möchte, hängt der viewer, und ich kann dann nur noch auf stop drücken.

ferner funktioniert auch das html-file nicht. html code schtimmpt aber ,  die html datei wird direkt von JBuilder generiert. funktioniert die seite nicht, weil ich mit swing arbeite?? muss man da noch irgendwie ein javaplugin laden oder so was?  wie getndass??

naja: hier ist ma der code vom JApplet. wer die Klasse MeinTabModel auch noch sehen will soll sich melden....

vielen dank für eure hilfe
ps: ist dies eine anfängerfrage; wenn nicht, wo würdet ihr die frage einstufen (welche rubrik..?) ?



```
import java.awt.*;
import java.awt.event.*;
import java.applet.*;
import javax.swing.*;
import javax.swing.table.*;
import javax.swing.text.*;
import javax.swing.JApplet;
import java.net.URL;



public class DBApplet extends JApplet{
  private boolean isStandalone = false;
  //Parameterwert holen
  public String getParameter(String key, String def) {
    return isStandalone ? System.getProperty(key, def) :
      (getParameter(key) != null ? getParameter(key) : def);
      }

      JTable table = new JTable();                                               //Tabelle erstellen
      Thread	thethread;

  public DBApplet(){
    //enableEvents(AWTEvent.WINDOW_EVENT_MASK);

    MeinTabModel model = new MeinTabModel();
    table = new JTable(model);
    table.removeColumn(table.getColumnModel().getColumn(0));                    //Erste Spalte (idnr) ausblenden
    table.setAutoCreateColumnsFromModel(false);
    table.setGridColor(Color.black);                                            //Farben bestimmen
    table.setSelectionForeground(Color.white);
    table.setSelectionBackground(Color.blue);
    table.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);                //Selektionsoptionen
    JScrollPane sPane = new JScrollPane(table);
    getContentPane().add(sPane);

  }
 //Das Applet initialisieren
  public void init() {
    try {
      jbInit();


    }
    catch(Exception e) {
      e.printStackTrace();
    }
  }
  //Initialisierung der Komponenten
  private void jbInit() throws Exception {
    this.setSize(new Dimension(800,600));
  }
  //Das Applet starten
  public void start() {


    if (thethread == null) {
      thethread = new Thread();
      thethread.start();
      DBApplet f = new DBApplet();                                                  //Fenster "DBApplet" sichtbar
      f.setVisible(true);
    }
  }
  //Das Applet anhalten
  public void stop() {
    if (thethread != null) {
      thethread = null;
    }
  }
  //Das Applet löschen
  public void destroy() {
  }
  //Applet-Information holen
  public String getAppletInfo() {
    return "Applet-Information";
  }
  //Parameter-Infos holen
  public String[][] getParameterInfo() {
    return null;
  }

  //Statische Initialisierung des Look & Feel                            (für was ist look + feel??)
  static {
    try {
      //UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
      //UIManager.setLookAndFeel(UIManager.getCrossPlatformLookAndFeelClassName());
    }
    catch(Exception e) {
    }
  }
}
```
edited by mariopetr


----------



## DTR (8. Sep 2003)

Solltest du im html den aplet-tag verwenden, versuchs mal mit dem object-tag.


----------



## der simpel (8. Sep 2003)

auch mit  object tag gehz nicht!... und das ist doch nicht fehlerhaft? :

<body>
 <object classid="javaBApplet.class" name="DBApplet" width="800" height="600">
 geht net.</object>
</body>


----------



## DTR (8. Sep 2003)

<OBJECT classid="clsid:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
WIDTH = "100%" HEIGHT = "90%"  codebase="./j2re1_3_0-win-i.exe">
<PARAM NAME = CODE VALUE = "xxx.xxx.xxx.class" >
<PARAM NAME = CODEBASE VALUE = "x:/" >

<PARAM NAME="type" VALUE="application/x-java-applet;version=1.3">
<PARAM NAME="scriptable" VALUE="false">

<COMMENT>
<EMBED type="application/x-java-applet;version=1.3" 
CODE = "xxx.xxx.xxx.class" 
CODEBASE = "x:/" 

WIDTH = "100%" HEIGHT = "90%" 

scriptable=false 
pluginspage="">
<NOEMBED>
</COMMENT>
</NOEMBED>
</EMBED>
</OBJECT>

Damit hat es bei mir funktioniert. Da wo die x stehen, musst du noch deine Werte einsetzen. Wo du genau die classid herbekommst weiß ich leider nicht mehr.


----------



## der simpel (8. Sep 2003)

erstmal vielen dank für den tipp.........


clid???.... naja.... ich habs jetzt mal mit HTML-Converter von JDK probiert....    DIE SCHAISE MACHT GAR NICHTS!!  geich schiess ich mir ne kugel ins knie.... 

ich will doch nur, dass mein applet im browser fenster angezeigt wird... mann...

ok jetzt im ernst: wie funktioniert denn dieses convert-tool? ich hab zwar ne kleine doc dazu, doch auch nach allem was ich probiert habe passiert GAR NICHTS.  ich hab .class dateien angegeben, oder den gesammten ordner, indem sich das applet befindet... meldung:
   verarbeitete dateien = 0 
   gefundene applets = 0
   aufgetauchte fehler = 0 


hääääää?

und noch etwas: irgendwie muss das ja klappen. aber wieso hängt sich alles bereits im appletviewer auf?  denn wenn das applet bereits dort probleme macht, ist es sicherlich nicht sinnvoll eine html-datei zu generieren...

wer kann mir denn helfen...


- der simpel


----------



## der simpel (10. Sep 2003)

endlich funst mein JApplet nun mal einwandfrei. zwar nur im AppletViewer, aber ich weiss jetzt zumindest mal, dass es funst.

ok.

was ich gemacht habe:
ich dödel hab die initialisierung der komponenten nicht in die INIT-methode, sondern ins erzeugen des Applets (public DBApplet{....)  rein getan.... blöd...

aber ich finde es ein bisschen komisch warum das hier niemand gemerkt hat. wo sind denn hier die Applet spezialisten?  ich meine es bräuchte nicht unbedingt ein expert, sondern nur jemand, der eben genug erfahrung hat.

trotzdem vielen dank für all eure bemühungen....
-der simpel


----------



## DTR (10. Sep 2003)

der simpel hat gesagt.:
			
		

> aber ich finde es ein bisschen komisch warum das hier niemand gemerkt hat. wo sind denn hier die Applet spezialisten?  ich meine es bräuchte nicht unbedingt ein expert, sondern nur jemand, der eben genug erfahrung hat.



Das liegt vielleicht daran das man auch noch damit beschäftigt ist, die eigenen fehler zu suchen, und daher nicht jeden Fremden Quellcode komplett durchgeht. Da bleibt halt manchmal nur die Zeit um ein paar Tips zu geben, die einem helfen können den Fehler selbst zu finden.


----------



## der simpel (10. Sep 2003)

schon klar....!
ich will ja auch nicht rummozzen.  ist einfach nur lustig, weil es ist ja eher ein gravierender fehler.  das ich dass nicht gemerkt habe, liegt irgendwie an meiner von alkohol und TV negativ beeinflusster intelligenz....

isi , isi.....


----------



## der simpel (10. Sep 2003)

*WARUM FUNST DIESER SCHAIS NICH?*

was muss ich tun damit mein JApplet auch auf einer html seite angezeigt wird? :x 
ich bringe es einfach nicht fertig... schade eigentlich, denn das applet würde laut applet viewer funktionieren...


----------



## bummerland (10. Sep 2003)

versuch mal 

```
<html>
<body>
<applet code="DeineKlasse.class" width="200" height="100">
</applet>
</body>
</html>
```

hierbei muss das applet im gleichen ordner wie die html - datei liegen.


----------



## der simpel (11. Sep 2003)

hallo bacstift

merci...

aber eben genau _das_ funktioniert nich.....
mit dem object tag gehts auch nich .... irgendwie....


----------



## Guest (10. Apr 2004)

Man muss das .class weglassen...


----------

