applet signée: problème de permission
Bonjour,
Dans le cadre de mon stage, je dois trouver une solution pour pouvoir acceder aux ressources locales du poste client à partir d'une application web. Je me suis donc lancé dans un test des applet signée or j'ai toujours le même message d'erreur:
Code:
1 2 3 4 5
| Java Plug-in 1.6.0_12
Utilisation de la version JRE 1.6.0_12 Java HotSpot(TM) Client VM
Répertoire d'accueil de l'utilisateur = /home/lginoux
----------------------------------------------------
java.security.AccessControlException: access denied (java.io.FilePermission /usr/bin/ooffice execute) |
Donc voila par étape ce que j'ai fait:
- création des fichiers testExecution.html:
Code:
1 2 3 4 5 6 7 8 9 10 11 12
| <html>
<head>
<title>Mon applet Java</title>
</head>
<body>
<applet codebase="http://127.0.0.1/GearsSamplesAndTools/test/applet/" archive="STestExecution.jar" code="testExecution.class" width="300" height="300">
<param name="archive" value="StestExecution.jar">
<param name="language" value="FR">
<b>Your browser isn't Java compatible.<br>Votre navigateur n'est pas compatible Java.</b>
</applet>
</body>
</html> |
- création du fichier testExecution.java (applet avec un simple bouton qui va ouvrir open office):
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89
| import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
import java.io.Serializable;
public class testExecution extends JApplet {
public void init() {
System.out.println("init");
designScreen();
}
public void start(){
System.out.println("start");
return;}
public void stop(){
System.out.println("stop");
return;}
public void destroy(){
System.out.println("destroy");
return;}
final void designScreen(){
System.out.println("designScreen");
Button b = new Button("open application");
b.addActionListener(new MyActionListener());
Label listLabel = new Label("application");
Panel listPanel = new Panel();
listPanel.setLayout(new BorderLayout());
listLabel.setAlignment(Label.CENTER);
listPanel.setBackground(Color.lightGray);
setBackground(Color.white);
listPanel.add("North",listLabel);
listPanel.add("South",b);
add(listPanel);
return;}
class MyActionListener implements ActionListener
{
public void actionPerformed(ActionEvent e)
{
System.out.println("Hello There");
try
{
Runtime.getRuntime().exec(new String[] { "/usr/bin/ooffice" });
}
catch (Exception ex)
{
ex.printStackTrace();
}
}
}
} |
- ensuite j'ai généré ma clé avec:
keytool -genkey -alias TestApplet
- j'ai compilé mon fichier java
- j'ai créé un jar testExecution.jar contenant le fichier testExecution.class
- j'ai signé mon archive avec:
jarsigner -storepass <monMotDePasse> -signedjar STestExecution.jar testExecution.jar TestApplet
- j'ai testé dans appletviewer et dans Firefox 3.0.7 et toujours ce même message d'acces refusé comme si il ne voyait pas la signature!?!?
quelqu'un aurait-il une solution, je crois pourtant avoir regardé pas mal de forum depuis 2 jours mais rien n'y fait.
merci d'avance