Hallo,
wie es der Titel schon verrät habe ich Probleme mit der Signatur von einem Applet.
Dieses Applet soll eine Verbindung zu einer Datenbank aufbauen und auch auf die Festplatte zugreifen können.
Ich habe die fertige jar bereits Signiert und auf dem PC auf dem ich das Projekt entwickle läuft es auch.
Sobald ich jedoch von einem Rechner aus dem Netzwerk versuche darauf zuzugreifen kommt folgende Fehlermeldung:
Wobei 192.168.0.46 die IP von dem Rechner ist auf dem das Applet liegt und 3306 der Port ist um die MySQL-Datenbank anzusprechen. Ich habe das Problem insofern eingegrenzt dass schonmal nicht an den Zugriffsrechten für die Datenbank liegt, da ich diese über den MySQL-Client erreiche.
Da gibt es noch die Geschichte mit den Policy-Dateien, habe mehrere Tutorials gelesen in denen geschildert wird wie diese aussehen und wie in denen Rechte definieren kann. Ich habe einfach mal eine erstellt die so aussieht:
und habe diese mit in die JAR-Datei gepackt. Läuft trotzdem nicht.
Kann mir vielleicht jemand weiterhelfen?
Vielen Dank
kingston
wie es der Titel schon verrät habe ich Probleme mit der Signatur von einem Applet.
Dieses Applet soll eine Verbindung zu einer Datenbank aufbauen und auch auf die Festplatte zugreifen können.
Ich habe die fertige jar bereits Signiert und auf dem PC auf dem ich das Projekt entwickle läuft es auch.
Sobald ich jedoch von einem Rechner aus dem Netzwerk versuche darauf zuzugreifen kommt folgende Fehlermeldung:
Java-Konsole hat gesagt.:com.mysql.jdbc.CommunicationsException: Communications link failure due to underlying exception:
** BEGIN NESTED EXCEPTION **
java.net.SocketException
MESSAGE: java.security.AccessControlException: access denied (java.net.SocketPermission 192.168.0.46:3306 connect,resolve)
STACKTRACE:
java.net.SocketException: java.security.AccessControlException: access denied (java.net.SocketPermission 192.168.0.46:3306 connect,resolve)
at com.mysql.jdbc.StandardSocketFactory.unwrapExceptionToProperClassAndThrowIt(StandardSocketFactory.java:292)
at com.mysql.jdbc.StandardSocketFactory.connect(StandardSocketFactory.java:182)
at com.mysql.jdbc.MysqlIO.<init>(MysqlIO.java:268)
at com.mysql.jdbc.Connection.createNewIO(Connection.java:2745)
at com.mysql.jdbc.Connection.<init>(Connection.java:1553)
at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:285)
at java.sql.DriverManager.getConnection(Unknown Source)
at java.sql.DriverManager.getConnection(Unknown Source)
at chemTrackDB.DBAccess.connect(DBAccess.java:30)
at chemTrackDB.DBAccessPurchaser.getQuantity(DBAccessPurchaser.java:161)
at chemTrackFS.PurchaserManagement.getAll(PurchaserManagement.java:126)
at chemTrackGUI.ChemTrack.init(ChemTrack.java:107)
at com.opera.AppletPanel.runHandlerThread(AppletPanel.java:438)
at com.opera.AppletPanel.run(AppletPanel.java:334)
at java.lang.Thread.run(Unknown Source)
Wobei 192.168.0.46 die IP von dem Rechner ist auf dem das Applet liegt und 3306 der Port ist um die MySQL-Datenbank anzusprechen. Ich habe das Problem insofern eingegrenzt dass schonmal nicht an den Zugriffsrechten für die Datenbank liegt, da ich diese über den MySQL-Client erreiche.
Da gibt es noch die Geschichte mit den Policy-Dateien, habe mehrere Tutorials gelesen in denen geschildert wird wie diese aussehen und wie in denen Rechte definieren kann. Ich habe einfach mal eine erstellt die so aussieht:
Code:
grant signedBy "ICH"
{
permission java.security.AllPermission;
};
und habe diese mit in die JAR-Datei gepackt. Läuft trotzdem nicht.
Kann mir vielleicht jemand weiterhelfen?
Vielen Dank
kingston