# GUI -> Applet



## pikus (30. Januar 2008)

hallo

ich hab eine kleine GUI oberflaeche und ich möchte die so einfach wie möglich in Applet umschreiben 
so das man sie in einem Browser öffnen kann


```
* To change this template, choose Tools | Templates
  * and open the template in the editor.
  */
package projektarbeit;

import java.awt.*;
import java.awt.Menu;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JFrame;
import javax.swing.*;

/**
 *
 * @author neon
 */
public class Passwort {
    //Layoutelemente anlegen
    JFrame frame = new JFrame();
    JPanel panel = new JPanel();
    JDialog d = new JDialog(frame, "Passwortschutz", true);
    public static void main(String[] args) {
        Passwort m = new Passwort();
        
        m.los();
        
    }
    
    
    public void los() {
        
        d.getContentPane().setLayout(null);
        JPasswordField jPasswordField1 = new JPasswordField();
        d.add(jPasswordField1).setBounds(100,40,100,25);
        JLabel label1 = new JLabel("Passwortschutz");
        JLabel label2 = new JLabel("Administrator: ");
        d.add(label1).setBounds(60,10,100,25);
        d.add(label2).setBounds(10,40,100,25);
        JButton absenden = new JButton("absenden");
        d.add(absenden).setBounds(100,75,100,25);
       
     
        d.setSize(230, 130);
        d.setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
        d.setVisible(true);
      }
}
```

kann mir einer helfen?

DANKE


----------



## zerix (30. Januar 2008)

Hallo,

ich glaube nicht, dass es dir irgendjemand einfach so umschreibt.

Du solltest deine Klasse von Applet ableiten. Die entsprechenden Methoden implementieren und dann alles dem Applet hinzufügen, statt dem JFrame. Das Frame kannst du dann löschen.

MFG

zEriX


----------



## pikus (30. Januar 2008)

funktionieren auch sowelche JButtons in applet?


----------



## MeinerEiner_80 (30. Januar 2008)

Prinzipiell funktionieren JButtons auch in JApplets. Wieso auch nicht.
Kommt halt drauf an, welche Aktion der Button auslöst, d.h. ob das Applet das auch darf..
Man weis ja nicht, was sich hinter deinem "absenden" verbirgt..

*grüssle*
MeinerEiner


----------



## pikus (30. Januar 2008)

ich hab jetzt das hier geschrieben zu probe
aber ich bekomme das nicht in einem Browser offen


```
import javax.swing.JApplet;
import javax.swing.JFrame;

public class Main extends JApplet {
    
    private JFrame frame;
    
    public void init() {
        super.init();
        frame = new JFrame("Test Fenster");
        frame.setBounds(100,100,200,200);
        frame.setVisible(true);
    }
    
    
    public void destroy() {        
        super.destroy();
        frame.dispose();
    }

}
```

hier mein html code


```
<html> <head> </head>
<body>
<applet code="Main.class" width="300" height="200"> </applet>
</body>
</html>
```


----------



## zerix (30. Januar 2008)

Möchtest du ein Fenster öffnen und nicht im Browser arbeiten?

Wenn dies so sein sollte, solltest du dir mal überlegen, das ganze über webstart und jnlp-Dateien zu machen.


MFG

zEriX


----------



## pikus (30. Januar 2008)

ich möchte das es sich in einem browser öffnet


----------



## zerix (30. Januar 2008)

Und warum versuchst du dann ein JFrame zu erzeugen?

MFG

zEriX


----------



## pikus (30. Januar 2008)

soll ich dann nur ein Panel benutzen?


----------



## pikus (30. Januar 2008)

```
import java.awt.Panel;
import javax.swing.JApplet;
import javax.swing.JFrame;
import javax.swing.JPanel;

public class Passwort extends JApplet {
    
     JPanel panel;
    
    public void init() {
        super.init();
        panel = new JPanel();
        panel.setBounds(100,100,200,200);
        panel.setVisible(true);
    }
    
    
    public void destroy() {        
        super.destroy();
        
    }

}
```


----------



## zerix (30. Januar 2008)

Ja, und das kannst du dann deiner Klasse hinzufügen.


```
import javax.swing.JApplet;
import javax.swing.JFrame;

public class Main extends JApplet {
    
        public void init() {
        super.init();
        JButton button = new JButton("test");
add(button);

    }
    
    
    public void destroy() {        
        super.destroy();
        frame.dispose();
    }

}
```


MFG

zEriX


----------



## pikus (30. Januar 2008)

er zeigt mit immer 
fehler beim laden des Jav Applets


----------



## MeinerEiner_80 (30. Januar 2008)

Welchen Quellcode nutzt du denn? Deinen?

Öffne mal die Java Console deines Browsers und poste da mal die Fehlermeldung die er gibt..

Weiterhin würde ich dir mal empfehlen, dich ein wenig mehr mit den Grundlagen von Applets zu beschäftigen..

Übrigens: Sofern man nicht Java 1.6 nutzt, sollte man nicht einem JApplet direkt etwas hinzufügen, sondern des ContentPane

*grüssle*
MeinerEiner


----------



## pikus (30. Januar 2008)

jetzt hat das funktioniert
aber das Programm ist unzuverlässig weil bei mir funktionieren die Buttons
und bei kollegen nicht
kann man das noch irgendwie anders lösen?

hier mein code

```
import java.awt.Panel;
import javax.swing.JApplet;
import java.awt.*;
import java.awt.Menu;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JFrame;
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import javax.swing.*;
import java.io.*;

public class asd extends JApplet {
    
       //Layoutelemente anlegen
    JPanel panell = new JPanel();
    JMenuBar bar;
    JButton Button1;
    JButton Button2;
    JCheckBox Box1;
    JCheckBox Box2;
    JCheckBox Box3;
    JCheckBox Box4;
    JMenuBar Menubar;
    JMenu Menu1;
    JMenu Menu2;
    JMenuItem Item1;
    JMenuItem Item2;
    JMenuItem Item3;
    JMenuItem Item4;
    JTextField textfeld = new JTextField("AUSGABE!!");
    Color c = new Color(255, 255, 255);
   
    JScrollPane JScrollPane2;
    JScrollPane JScrollPane3;
    JList list = new JList();
    JList list3 = new JList();
    JList list2 = new JList();
    JScrollPane JScrollPaneausgabe;
    JList listausgabe = new JList();
    
    String list1text = "";
    String list2text = "";
    String list3text = "";
    
    public void init() {
        super.init();
          //Layoutelemente zuweisen
        Button1 = new JButton("Suche");
        Button2 = new JButton("Erweiterte \nSuche");
        Box1 = new JCheckBox("Gebrauchsanweisung");
        Box2 = new JCheckBox("Prospekt");
        Box3 = new JCheckBox("Service Manual");
        Box4 = new JCheckBox("Kurzanleitung");
        Menubar = new JMenuBar();
        Menu1 = new JMenu("");
        Menu2 = new JMenu("");
        Item1 = new JMenuItem("Neu");
        Item2 = new JMenuItem("Beenden");
        Item3 = new JMenuItem("Info");
        Item4 = new JMenuItem("Hilfe");
        
         Button1.setBackground(Color.white);
        Button1.setForeground(Color.blue);
        Button2.setBackground(Color.white);
        Button2.setForeground(Color.blue);
        Box1.setBackground(Color.white);
        Box2.setBackground(Color.white);
        Box3.setBackground(Color.white);
        Box4.setBackground(Color.white);
        Box1.setForeground(Color.blue);
        Box2.setForeground(Color.blue);
        Box3.setForeground(Color.blue);
        Box4.setForeground(Color.blue);
        
         JScrollPaneausgabe = new JScrollPane();
        add(JScrollPaneausgabe).setBounds(10, 300, 400, 200);
        add(Button1).setBounds(430, 300, 180, 50);
        add(Button2).setBounds(430, 370, 180, 50);
        add(Box1).setBounds(20, 250, 150, 20);
        add(Box2).setBounds(170, 250, 80, 20);
        add(Box3).setBounds(250, 250, 120, 20);
        add(Box4).setBounds(370, 250, 150, 20);
        add(Menubar).setBounds(0, 0, 650, 30);
        Menubar.add(Menu1).setBounds(0, 0, 20, 20);
        Menubar.add(Menu2).setBounds(30, 0, 20, 20);
        Menu1.add(Item1);
        Menu1.add(Item2);
        Menu2.add(Item3);
        Menu2.add(Item4);
        
         // Icons
        Menu2.setIcon(new javax.swing.ImageIcon(getClass().getResource("/help.png")));
        Menu1.setIcon(new javax.swing.ImageIcon(getClass().getResource("/fileopen.png")));
        Button1.setIcon(new javax.swing.ImageIcon(getClass().getResource("/xmag.png")));
        Button2.setIcon(new javax.swing.ImageIcon(getClass().getResource("/kmag.png")));
        Item1.setIcon(new javax.swing.ImageIcon(getClass().getResource("/folder.png")));
        Item2.setIcon(new javax.swing.ImageIcon(getClass().getResource("/no.png")));
        Item3.setIcon(new javax.swing.ImageIcon(getClass().getResource("/hwinfo.png")));
        Item4.setIcon(new javax.swing.ImageIcon(getClass().getResource("/important.png")));
        
         Button1.addActionListener(new ActionListener() {
            public void actionPerformed(ActionEvent e) {
JDialog d = new JDialog();
         d.setSize(230, 130);
        d.setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
        d.setVisible(true);
            }
        });
        
         Button2.addActionListener(new ActionListener() {
            public void actionPerformed(ActionEvent e) {
JDialog d = new JDialog();
         d.setSize(230, 130);
        d.setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
        d.setVisible(true);
            }
        });
        
        Item2.addActionListener(new ActionListener() {
            public void actionPerformed(ActionEvent e) {
JDialog d = new JDialog();
         d.setSize(230, 130);
        d.setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
        d.setVisible(true);
            }
        });
        
        JScrollPane JScrollPane1 = new JScrollPane();
        JScrollPane2 = new JScrollPane();
        JScrollPane3 = new JScrollPane();
        add(JScrollPane1).setBounds(20, 40, 150, 200);
        add(JScrollPane2).setBounds(200, 40, 150, 200);
        add(JScrollPane3).setBounds(380, 40, 150, 200);
        final DefaultListModel daten = new DefaultListModel();
        list = new JList(daten);
        JScrollPane1.getViewport().setView(list);
        
        list.addMouseListener(new MouseAdapter() {
            public void mouseClicked(MouseEvent e) {
                if (e.getClickCount() == 1) {
                   
                    
                }
            }
        });
      add(new JLabel("")).setBounds(60,10,100,25);
    }
    
    
    public void destroy() {        
        super.destroy();
        
    }

}
```


----------



## MeinerEiner_80 (30. Januar 2008)

Und was heißt, "sie funktionieren nicht" ?


----------



## pikus (30. Januar 2008)

bei mir kommt ein jdialog wenn ich auf irgend ein drauf klicke
und bei kollegen nicht

LINK


----------



## MeinerEiner_80 (30. Januar 2008)

Bei mir kommt der Dialog auch... Vielleicht nutzen deine Kollegen eine andere Java Version? (Ich nutzt hier 1.6)
Falls dem so ist, solltest du mal unter 1.4 oder 1.5 kompilieren und schauen was dann passiert..

*grüssle*
MeinerEiner


----------



## pikus (31. Januar 2008)

ich hab noch eine frage wie bekomme ich eine verbindung zur Mysql mit dem Applet?

allso zu hsql ist ja einfach

```
Connection conn = null;
    Statement stm = null;
    ResultSet rslt = null;
    /** Creates a new instance of datenbank1 */
    public datenbank1() {
        try{
            Class.forName("org.hsqldb.jdbcDriver");
        } catch(Exception e) {
        }
        
        try{
            conn = DriverManager.getConnection("jdbc:hsqldb:mem:.","sa","");
        } catch(Exception e) {
        }
        
        
        try {
            stm = conn.createStatement();
            
        }catch(Exception e) {
            System.out.println("Folgender Fehler beim erstellen eines Statements :  "+e);
            
        }
       
       
      
        try {
            int selectAnweisung = stm.executeUpdate(hsqldatei);
            
        } catch(Exception e) {
            System.out.println("Folgender Fehler beim erstellen der Tabelle/Inserts/Select-Anweisung :  "+e);
            
        }
```


----------



## zerix (31. Januar 2008)

Mit MySQL funktioniert das fast genau so. Wenn MySQL auf deinem Rechner installiert ist, muss die DB allerdings auch von außen erreichbar sein.

MFG

zEriX


----------



## pikus (31. Januar 2008)

die Mysql Datenbank ist auf einbem Server installiert


----------



## MeinerEiner_80 (31. Januar 2008)

moin!
Hier ist ein Beispiel für Applets und JDBC:
http://publib.boulder.ibm.com/infoc....db2.udb.doc/ad/samples/jdbc/s-Applt-java.htm

*grüssle*
MeinerEiner


----------



## pikus (31. Januar 2008)

das hilft mir leider nicht weiter 
kann mir einer eine Beispiel Verbindung zu einem Mysql Datenbank auf einem Server erstellen?


----------



## zerix (31. Januar 2008)

Das Beispiel ist genau das was du brauchst. Du kannst eigentlich deinen kompletten Code übernehmen. Du musst nur das ändern

```
conn = DriverManager.getConnection("jdbc:hsqldb:mem:.","sa","");
```

Da musst du halt den Text für MySQL eingeben und natürlich auch IP zu dem Server.

MFG

zEriX


----------



## pikus (31. Januar 2008)

ich hab gerade diese classe mit der Datenbank Verbindung auf mein funpic accound draufgezogen aber wenn ich alles ausfür dann kommt diese Fehlermeldung

Folgender Fehler beim erstellen eines Statements :  java.lang.NullPointerException
Folgender Fehler beim erstellen der Tabelle/Inserts/Select-Anweisung :  java.lang.NullPointerException
java.lang.NullPointerException
	at Main.init(Main.java:123)
	at sun.applet.AppletPanel.run(AppletPanel.java:417)
	at java.lang.Thread.run(Thread.java:619)


hier meine code


```
import java.io.*;
import java.sql.*;

/**
 *
 * @author info
 */
public class datenbank1 {
    Connection conn = null;
    Statement stm = null;
    ResultSet rslt = null;
    /** Creates a new instance of datenbank1 */
    public datenbank1() {
        try{
            Class.forName("com.mysql.jdbc.Driver");
        } catch(Exception e) {
        }
        
        try{
            conn = DriverManager.getConnection("jdbc:mysql://localhost/dnsalias","dnsalias","*******r");
        } catch(Exception e) {
        }
        
        
        try {
            stm = conn.createStatement();
            
        }catch(Exception e) {
            System.out.println("Folgender Fehler beim erstellen eines Statements :  "+e);
            
        }
       
        
    }
    
    public ResultSet box1Ausgabe(){
        try {
            
            rslt = stm.executeQuery("Select user FROM users");
        } catch(Exception e) {
            System.out.println("Folgender Fehler beim erstellen der Tabelle/Inserts/Select-Anweisung :  "+e);
            
        }
        return rslt;
    }
   
}
```


----------



## zerix (31. Januar 2008)

Es wäre schon nicht schlecht, wenn du den Stacktrace mal ausgeben lassen würdest und den posten würdest.

MFG

zEriX


----------



## pikus (31. Januar 2008)

hab das hier
 e.printStackTrace(System.out);
 überall eingefügt aber es funktioniert nicht
in der java konsole kommt das gleiche wie vorher


----------



## zerix (31. Januar 2008)

Mach einfach 
	
	
	



```
e.printStackTrace();
```

Das was da ausgegeben wird postest du bitte. 

MFG

zEriX


----------



## pikus (31. Januar 2008)

java.lang.ClassNotFoundException: com.mysql.jdbc.Driver
	at sun.applet.AppletClassLoader.findClass(AppletClassLoader.java:183)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
	at sun.applet.AppletClassLoader.loadClass(AppletClassLoader.java:127)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
	at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319)
	at java.lang.Class.forName0(Native Method)
	at java.lang.Class.forName(Class.java:169)
	at datenbank1.<init>(datenbank1.java:16)
	at Main.<init>(Main.java:38)
	at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
	at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
	at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
	at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
	at java.lang.Class.newInstance0(Class.java:355)
	at java.lang.Class.newInstance(Class.java:308)
	at sun.applet.AppletPanel.createApplet(AppletPanel.java:778)
	at sun.plugin.AppletViewer.createApplet(AppletViewer.java:2045)
	at sun.applet.AppletPanel.runLoader(AppletPanel.java:707)
	at sun.applet.AppletPanel.run(AppletPanel.java:361)
	at java.lang.Thread.run(Thread.java:619)
Caused by: java.io.IOException: open HTTP connection failed.
	at sun.applet.AppletClassLoader.getBytes(AppletClassLoader.java:286)
	at sun.applet.AppletClassLoader.access$100(AppletClassLoader.java:44)
	at sun.applet.AppletClassLoader$1.run(AppletClassLoader.java:173)
	at java.security.AccessController.doPrivileged(Native Method)
	at sun.applet.AppletClassLoader.findClass(AppletClassLoader.java:170)
	... 19 more
java.sql.SQLException: No suitable driver found for jdbc:mysql://localhost/dnsalias
	at java.sql.DriverManager.getConnection(DriverManager.java:602)
	at java.sql.DriverManager.getConnection(DriverManager.java:185)
	at datenbank1.<init>(datenbank1.java:22)
	at Main.<init>(Main.java:38)
	at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
	at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
	at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
	at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
	at java.lang.Class.newInstance0(Class.java:355)
	at java.lang.Class.newInstance(Class.java:308)
	at sun.applet.AppletPanel.createApplet(AppletPanel.java:778)
	at sun.plugin.AppletViewer.createApplet(AppletViewer.java:2045)
	at sun.applet.AppletPanel.runLoader(AppletPanel.java:707)
	at sun.applet.AppletPanel.run(AppletPanel.java:361)
	at java.lang.Thread.run(Thread.java:619)
Folgender Fehler beim erstellen eines Statements :  java.lang.NullPointerException
java.lang.NullPointerException
	at datenbank1.<init>(datenbank1.java:29)
	at Main.<init>(Main.java:38)
	at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
	at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
	at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
	at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
	at java.lang.Class.newInstance0(Class.java:355)
	at java.lang.Class.newInstance(Class.java:308)
	at sun.applet.AppletPanel.createApplet(AppletPanel.java:778)
	at sun.plugin.AppletViewer.createApplet(AppletViewer.java:2045)
	at sun.applet.AppletPanel.runLoader(AppletPanel.java:707)
	at sun.applet.AppletPanel.run(AppletPanel.java:361)
	at java.lang.Thread.run(Thread.java:619)
Folgender Fehler beim erstellen der Tabelle/Inserts/Select-Anweisung :  java.lang.NullPointerException
java.lang.NullPointerException
	at datenbank1.box1Ausgabe(datenbank1.java:42)
	at Main.init(Main.java:121)
	at sun.applet.AppletPanel.run(AppletPanel.java:417)
	at java.lang.Thread.run(Thread.java:619)
java.lang.NullPointerException
	at Main.init(Main.java:123)
	at sun.applet.AppletPanel.run(AppletPanel.java:417)
	at java.lang.Thread.run(Thread.java:619)


----------



## zerix (31. Januar 2008)

Da sieht das ganze doch auch schon ganz anders aus.

Hast du dir den JDBC-Treiber runtergeladen von MySQL?

MFG

zEriX


----------



## pikus (31. Januar 2008)

in welchen Verzeichnis auf meinem funpic webspace soll ich ihn drauf tun?


----------



## MeinerEiner_80 (31. Januar 2008)

pikus hat gesagt.:


> in welchen Verzeichnis auf meinem funpic webspace soll ich ihn drauf tun?


Am besten im selben Verzeichnis, aber es bleibt dir überlassen. Wichtig ist, das du dem Applet dann auch sagst, wo es den Treiber finde kann (Archive Tag). Schau dir mal das hier an:
http://java.sun.com/j2se/1.4.2/docs/guide/misc/applet.html

*grüssle*
MeinerEiner


----------



## pikus (31. Januar 2008)

kommt immer noch ein Fehler
hab meine html seite verändert


```
<applet code="Main.class" width="1000" height="1000" archive="mysql-connector-java-5.1.5-bin.jar"> </applet></body>
```

und die jar Datei hab in den gleichen ordner getan wo die html ist und die classe


```
com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure

Last packet sent to the server was 0 ms ago.
	at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
	at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
	at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
	at java.lang.reflect.Constructor.newInstance(Unknown Source)
	at com.mysql.jdbc.Util.handleNewInstance(Util.java:406)
	at com.mysql.jdbc.SQLError.createCommunicationsException(SQLError.java:1074)
	at com.mysql.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:2104)
	at com.mysql.jdbc.ConnectionImpl.<init>(ConnectionImpl.java:729)
	at com.mysql.jdbc.JDBC4Connection.<init>(JDBC4Connection.java:46)
	at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
	at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
	at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
	at java.lang.reflect.Constructor.newInstance(Unknown Source)
	at com.mysql.jdbc.Util.handleNewInstance(Util.java:406)
	at com.mysql.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:302)
	at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:283)
	at java.sql.DriverManager.getConnection(Unknown Source)
	at java.sql.DriverManager.getConnection(Unknown Source)
	at datenbank1.<init>(datenbank1.java:22)
	at Main.<init>(Main.java:38)
	at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
	at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
	at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
	at java.lang.reflect.Constructor.newInstance(Unknown Source)
	at java.lang.Class.newInstance0(Unknown Source)
	at java.lang.Class.newInstance(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.net.SocketException: java.security.AccessControlException: access denied (java.net.SocketPermission 127.0.0.1:3306 connect,resolve)
	at com.mysql.jdbc.StandardSocketFactory.unwrapExceptionToProperClassAndThrowIt(StandardSocketFactory.java:407)
	at com.mysql.jdbc.StandardSocketFactory.connect(StandardSocketFactory.java:268)
	at com.mysql.jdbc.MysqlIO.<init>(MysqlIO.java:276)
	at com.mysql.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:2027)
	... 24 more
Folgender Fehler beim erstellen eines Statements :  java.lang.NullPointerException
java.lang.NullPointerException
	at datenbank1.<init>(datenbank1.java:29)
	at Main.<init>(Main.java:38)
	at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
	at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
	at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
	at java.lang.reflect.Constructor.newInstance(Unknown Source)
	at java.lang.Class.newInstance0(Unknown Source)
	at java.lang.Class.newInstance(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)
Folgender Fehler beim erstellen der Tabelle/Inserts/Select-Anweisung :  java.lang.NullPointerException
java.lang.NullPointerException
	at datenbank1.box1Ausgabe(datenbank1.java:42)
	at Main.init(Main.java:121)
	at sun.applet.AppletPanel.run(Unknown Source)
	at java.lang.Thread.run(Unknown Source)
java.lang.NullPointerException
	at Main.init(Main.java:123)
	at sun.applet.AppletPanel.run(Unknown Source)
	at java.lang.Thread.run(Unknown Source)
```


----------



## MeinerEiner_80 (31. Januar 2008)

Das heißt soviel, das dein Applet nicht auf die lokale Ressource zugreifen darf. Du musst es erst signieren.. wie das geht, findet sich leicht im Netz...
Allerdings dachte ich, deine Datenbank liegt auf dem Server. Wieso greifst du denn auf die 127.0.0.1:3306 zu?


----------



## pikus (31. Januar 2008)

aso nein du hast recht 
mein fehler


----------



## pikus (31. Januar 2008)

hab das hier geändert aber es funktioniert immer noch nicht 

```
conn = DriverManager.getConnection("jdbc:mysql://dnsalias.dn.funpic.de/dnsalias","dnsalias","*******");
```




```
com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure

Last packet sent to the server was 0 ms ago.
	at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
	at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
	at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
	at java.lang.reflect.Constructor.newInstance(Unknown Source)
	at com.mysql.jdbc.Util.handleNewInstance(Util.java:406)
	at com.mysql.jdbc.SQLError.createCommunicationsException(SQLError.java:1074)
	at com.mysql.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:2104)
	at com.mysql.jdbc.ConnectionImpl.<init>(ConnectionImpl.java:729)
	at com.mysql.jdbc.JDBC4Connection.<init>(JDBC4Connection.java:46)
	at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
	at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
	at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
	at java.lang.reflect.Constructor.newInstance(Unknown Source)
	at com.mysql.jdbc.Util.handleNewInstance(Util.java:406)
	at com.mysql.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:302)
	at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:283)
	at java.sql.DriverManager.getConnection(Unknown Source)
	at java.sql.DriverManager.getConnection(Unknown Source)
	at datenbank1.<init>(datenbank1.java:22)
	at Main.<init>(Main.java:38)
	at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
	at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
	at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
	at java.lang.reflect.Constructor.newInstance(Unknown Source)
	at java.lang.Class.newInstance0(Unknown Source)
	at java.lang.Class.newInstance(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.net.ConnectException: Connection refused: connect
	at java.net.PlainSocketImpl.socketConnect(Native Method)
	at java.net.PlainSocketImpl.doConnect(Unknown Source)
	at java.net.PlainSocketImpl.connectToAddress(Unknown Source)
	at java.net.PlainSocketImpl.connect(Unknown Source)
	at java.net.SocksSocketImpl.connect(Unknown Source)
	at java.net.Socket.connect(Unknown Source)
	at java.net.Socket.connect(Unknown Source)
	at java.net.Socket.<init>(Unknown Source)
	at java.net.Socket.<init>(Unknown Source)
	at com.mysql.jdbc.StandardSocketFactory.connect(StandardSocketFactory.java:256)
	at com.mysql.jdbc.MysqlIO.<init>(MysqlIO.java:276)
	at com.mysql.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:2027)
	... 24 more
Folgender Fehler beim erstellen eines Statements :  java.lang.NullPointerException
java.lang.NullPointerException
	at datenbank1.<init>(datenbank1.java:29)
	at Main.<init>(Main.java:38)
	at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
	at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
	at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
	at java.lang.reflect.Constructor.newInstance(Unknown Source)
	at java.lang.Class.newInstance0(Unknown Source)
	at java.lang.Class.newInstance(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)
Folgender Fehler beim erstellen der Tabelle/Inserts/Select-Anweisung :  java.lang.NullPointerException
java.lang.NullPointerException
	at datenbank1.box1Ausgabe(datenbank1.java:42)
	at Main.init(Main.java:121)
	at sun.applet.AppletPanel.run(Unknown Source)
	at java.lang.Thread.run(Unknown Source)
java.lang.NullPointerException
	at Main.init(Main.java:123)
	at sun.applet.AppletPanel.run(Unknown Source)
	at java.lang.Thread.run(Unknown Source)
```


----------



## MeinerEiner_80 (31. Januar 2008)

Mir würde dann noch einfallen, das du vielleicht mal nachschaust, ob du denn überhaupt von ausserhalb auf die Datenbank zugreifen darfst. Schau dir mal die entsprechende Konfigurationen an...

*grüssle*
MeinerEiner


----------



## pikus (31. Januar 2008)

ja ich glaub das ist das
kennt einer ein kostenloses webspace wo man das darf
oder eine andere möglichkeit eine andere Datenbank zu verwenden


----------



## pikus (5. Februar 2008)

eine Frage noch 
ich hab ja ein programm geschrieben was Pdf Dateien durchsucht
und ich möchte jetzt den gefundenen Link in einem neuen Browser Fenster öffnen
die Links werden im JList angezeigt

hatt jemand eine idee?

DANKE


----------



## pikus (5. Februar 2008)

ich hab noch eine Frage

ich hab ein Programm geschrieben was nach pdf dateien sucht
und ich möchte jetzt das die gefundenen Links in einem neuem Browser Fenster angezeigt werden
die Links werden im Jlist angezeigt


hatt jemand eine Idee?

DANKE


----------

