2011-01-17 3 views
0

я следующий код апплета, который в основном записывает некоторые данные в файл передается в качестве параметра метода WriteFile()Подписание баночку вызывает вопрос

public class appletToWrite extends Applet{ 
public int writeFile(String asPath, String asData, int aiOverwrite) 
{ 
    int j = JOptionPane.showConfirmDialog(null,asPath+ "testing gng on", "data mil gaya!!!", 0); 
    try { 
     File localFile = new File(asPath); 
     if (localFile.exists()) { 
      if(aiOverwrite==1){ 
       localFile.delete(); 
       j =JOptionPane.showConfirmDialog(null,"overwrite = 1", "data mil gaya!!!", 0); 
      } 
      else{ 
       j = JOptionPane.showConfirmDialog(null, "overwrite = 0", "data mil gaya!!!", 0); 
       return 0; 
      } 
     } 
     j = JOptionPane.showConfirmDialog(null, "niche aa gaye", "data mil gaya!!!", 0); 
     localFile.createNewFile(); 
     BufferedWriter localBufferedWriter = new BufferedWriter(new FileWriter(localFile, true)); 
     String str1; 
     localBufferedWriter.write(asData); 
     localBufferedWriter.close(); 
     return 1; 
    } 
    catch (Exception localException) { 
     j = JOptionPane.showConfirmDialog(null, "catch mein aa gaya "+localException.getMessage(), "data nahi gaya!!!", 0); 
     localException.printStackTrace(); 
     return 0; 
    } 
} 
} 

я имею самозаверенный флягу, используя следующие команды

javac appletToWrite.java 
jar cvf AppletClass.jar *.class 
keytool -genkey -validity 3650 -keystore pKeyStore -alias formBuilder 
keytool -selfcert -keystore pKeyStore -alias formBuilder -validity 3650 
jarsigner -keystore pKeyStore AppletClass.jar formBuilder 

но все еще не получил все разрешения на запись файла на локальном компьютере. Получение разрешения на файл лишено какой-либо идеи, почему?

+0

вы можете опубликовать трассировку стека вашего исключения – lweller

+0

это делается на локальной машине и без какого-либо сервера, поэтому трассировка стека просто не разрешена для файла. – Varun

ответ

0

благодарит за ответы получил ответ myslef на самом деле предмет разрешений разрешен в апплете только вызов из внешнего мира не позволяет мне получить разрешения. Я звонил из javascript и надеялся получить разрешения, а также

0

Проблема может быть подписана. Апплет НЕ разрешен для доступа ко всему. Зависит от настройки JRE вашего браузера. Значение по умолчанию определено в JRE (поиск файла свойств в вашей папке JRE - один из них определяет его). Но браузеры могут переопределить это.

Попробуйте создать файл в домашней папке пользователей.

+0

Я сделал то же самое, прежде чем подписывать апплет и получать доступ к локальным ресурсам для чтения/записи, но как-то на этот раз его создание беспорядок .. не мог получить, где я ошибаюсь – Varun

0

Если все верно: я бы предложил совершенно другой подход.

  • File Service (sandboxed) demo работает для вашего прецедента.
  • Ожидается, что будет запущен пользователь Java 1.6.0_10 + (плагин нового поколения).

Связанная демоверсия. (написанный мной) помечен в песок, и только когда пользователь идет открывать файл, JRE спрашивает их, хотят ли они дать ему разрешение.

Нет необходимости для цифровой подписи в виде песка.

С новым плагином нового поколения, JNLP API, используемым в демонстрации. могут быть доступны апплетами, которые встроены в веб-страницу. Пример этого можно увидеть в GIFanim applet.

+0

песочный пример отлично работает в моей системе .. можете ли вы скажите, пожалуйста, как подписать мой аплет сейчас? – Varun

Смежные вопросы