Hallo,
ich habe ein Java Applet geschrieben(Meine Java kenntnisse sind aber nicht so berauschend) das auf dem lokalen Rechner Dateien lesen und schreiben soll und dafür 2 Funktionen gemacht. Diese sollen später über Javascript aufgerufen werden können. Vorweg ich habe das Applet bereits signiert! Aber ich bekomme beim schreiben(Nicht beim lesen) immer so einen dämlichen Fehler und zwar: writeFile: caught security exception: java.security.AccessControlException: access denied (java.io.FilePermission Hallo.txt write)
Und den bekomme ich nur, wenn ich versuche über Javascript das zu machen also so:
Applet:
HTML datei:
So geht es nicht! Das komische so geht es:
Applet:
HTML Datei:
So geht das, aber warum nur? Ich bin echt am verzweifeln bitte helft mir. Vielen dank im voraus!
ich habe ein Java Applet geschrieben(Meine Java kenntnisse sind aber nicht so berauschend) das auf dem lokalen Rechner Dateien lesen und schreiben soll und dafür 2 Funktionen gemacht. Diese sollen später über Javascript aufgerufen werden können. Vorweg ich habe das Applet bereits signiert! Aber ich bekomme beim schreiben(Nicht beim lesen) immer so einen dämlichen Fehler und zwar: writeFile: caught security exception: java.security.AccessControlException: access denied (java.io.FilePermission Hallo.txt write)
Und den bekomme ich nur, wenn ich versuche über Javascript das zu machen also so:
Applet:
Code:
import java.applet.Applet;
import java.io.BufferedOutputStream;
import java.io.DataOutputStream;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
public class Test extends Applet {
public void init() {
String osname = System.getProperty("os.name");
}
public boolean writeFile(String FileN,String WriteData)
{
DataOutputStream dos;
File f = new File(FileN);
try {
dos = new DataOutputStream(new BufferedOutputStream(new FileOutputStream(FileN), 512));
dos.writeBytes(WriteData);
dos.flush();
dos.close();
System.out.println("Successfully wrote to the file named " + FileN+ " -- go take a look at it!");
return true;
} catch (SecurityException e) {
System.out.println("writeFile: caught security exception: " + e);
return false;
} catch (IOException ioe) {
System.out.println("writeFile: caught i/o exception");
return false;
}
}
}
HTML datei:
Code:
<html>
<head><title>Test</title>
</head>
<body>
<applet archive="Include.jar" code="Test.class" name="JInclude" width="500" height="500">
</applet>
<script LANGUAGE="JavaScript">
var Output = document.applets.JInclude.writeFile("Hallo.txt","Wie gehts so?\n");
return Output;
</script>
</body>
</html>
So geht es nicht! Das komische so geht es:
Applet:
Code:
import java.applet.Applet;
import java.awt.Graphics;
import java.io.BufferedOutputStream;
import java.io.DataOutputStream;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
public class Test extends Applet {
String myFile = "Hallo.txt";
File f = new File(myFile);
DataOutputStream dos;
public void init() {
String osname = System.getProperty("os.name");
}
public void paint(Graphics g) {
try {
dos = new DataOutputStream(new BufferedOutputStream(
new FileOutputStream(myFile), 128));
dos.writeBytes("Was geht?");
dos.flush();
dos.close();
g.drawString("Successfully wrote to the file named " + myFile
+ " -- go take a look at it!", 10, 10);
} catch (SecurityException e) {
g.drawString("writeFile: caught security exception: " + e, 10, 10);
} catch (IOException ioe) {
g.drawString("writeFile: caught i/o exception", 10, 10);
}
}
}
HTML Datei:
Code:
<html>
<head><title>Test</title>
</head>
<body
<applet archive="Include.jar" code="Test.class" name="JInclude" width="500" height="500">
</applet>
</body>
</html>
So geht das, aber warum nur? Ich bin echt am verzweifeln bitte helft mir. Vielen dank im voraus!