подписанный апплет, загружающий файл с сервера и помещающий его в файловую систему - PullRequest
0 голосов
/ 05 октября 2011

Я подписал апплет, я хочу скачать любой файл с сервера и поместить его в файловую систему с помощью апплета.

Пожалуйста, дайте некоторый указатель.

Заранее спасибо.

Ответы [ 2 ]

0 голосов
/ 17 октября 2011

Апплет должен быть подписан для доступа к файловой системе.

 public String downloadFile(final String filename) {
    return (String)AccessController.doPrivileged(new PrivilegedAction(){
        public Object run() {       
          try {
                // downloadURL is the server URL say http://localhost/downloads
                // filename is a file want to download from the server 
                // localpath is the path you want to download in the file system
                URL finalURL = new URL(downloadURL + filename);
                ReadableByteChannel rbc = Channels.newChannel(finalURL.openStream());
                FileOutputStream fos = new FileOutputStream("/"+localpath.replace("\\","/") +  filename);
                fos.getChannel().transferFrom(rbc, 0, 1 << 24);
                fos.close();
            return "true";
          }catch (ConnectException ce) {
              e.printStackTrace();
              return "false";
          } 
          catch (Exception e) {
            e.printStackTrace();
            return "false";
          }
        }
      });
}
0 голосов
/ 10 октября 2011

Для этого вам придется написать сервлет. Потому что сервлеты могут получить доступ к локальной файловой системе сервера и получить нужные вам файлы для вашего апплета :) Сделайте переплет как

applet <-servlet <-server </p>

Удачи

...