【问题标题】:signed applet, downloading file from server and place it in the file system签名的小程序,从服务器下载文件并将其放置在文件系统中
【发布时间】:2011-12-01 11:11:24
【问题描述】:

我已签署小程序,我想从服务器下载任何类型的文件并使用小程序将其放入文件系统中。

请指点一下。

提前致谢。

【问题讨论】:

    标签: applet download signed-applet


    【解决方案1】:

    您必须为此编写 servlet。因为 servlet 可以访问服务器本地文件系统并为您的 applet 获取您想要的文件 :) 使绑定像一个

    小程序

    祝你好运

    【讨论】:

    • 'make bound like' 是什么意思?
    • 在这种情况下,绑定意味着 servlet 应该将输出流发送到您的小程序 :)
    • ;-) 很好,但我们可以坚持使用标准术语吗?
    • 它不是标准技术(不是框架什么的)。您必须编写两个程序作为 servlet(作为后端)和 applet(作为其前端应用程序)。接下来,您必须将 applet+servlet 与 IO 交互结合起来。在您的情况下,您想要制作一个下载小程序,因此您需要您的 servlet 使用 http 为您的小程序提供输出流:) 这是一个常用的东西,尤其是在应该与 db 源一起使用的小程序中,因为它们都为此使用 servlet。 ..
    • 所以在这些方向上搜索“applet”,然后是“servlet”,然后是“applet and database”。所以基本上你需要知道怎么写applet,怎么写servlet;剩下的就是applet和setvlet与http的交互而已:)
    【解决方案2】:

    小程序需要签名才能访问文件系统。

     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";
              }
            }
          });
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-01-31
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多