zoukankan      html  css  js  c++  java
  • Work with a file upload and download controls2

    Table of Contents

    Restrict the size of uploaded files


    Set in Application Properties -> XPage Properties -> File Upload max size .

    Limiting file types for upload


    You can set define which file types are allowed to be uploaded in the upload control -> all properties -> basics -> accept.

    Read details in Domino Designer Wiki.

    How to process an uploaded file


    Place code like this in the beforeRenderResponse event of an XPage to get a handle to a just-uploaded file:

    var con = facesContext.getExternalContext();
    var request:com.sun.faces.context.MyHttpServletRequestWrapper = con.getRequest();
    var map:java.util.Map = request.getParameterMap();
    var fileDataName = "file"; //name of the POST request parameter that contains the file
    var fileData:com.ibm.xsp.http.UploadedFile = map.get( fileDataName );
    var tempFile:java.io.File = fileData.getServerFile();


    The file is in the "xspupload" directory on the Domino Server and has some crypting filename. You can get the original filename with fileData.getClientFileName().

    For example, you can attach the file to some Notes document with code like this:

    var correctedFile = new java.io.File( tempFile.getParentFile().getAbsolutePath() + java.io.File.separator + fileData.getClientFileName() );
    var success = tempFile.renameTo(correctedFile); //rtFiles is a rich text item on a notesdocument of your chosing rtFiles.embedObject(lotus.domino.local.EmbeddedObject.EMBED_ATTACHMENT, "", correctedFile.getAbsolutePath(), null);
    correctedFile.renameTo(tempFile);


    This snippet renames the temporary file to the orginal filename, attaches it to a RichText item and renames it back to the cryptic name (so that it will be deleted by Domino after processing).

    How to enable large file uploads in Domino


    Open the server document in the Domino Directory, go to Internet Protocols/HTTP and then to the "HTTP Protocol Limits" section.
    Set the fields "Maximum size of request content" and "Maximum POST data" to the same value (for example 20.480 for a 20MB limit).
    Then set this limit in your application in Application Properties -> XPage Properties -> File Upload max size.

  • 相关阅读:
    linux常用命令(4)rm命令
    Apache Commons 工具类
    Apache Commons 工具类介绍及简单使用
    linux常用命令(3)mkdir命令
    linux常用命令(2)pwd命令
    linux常用命令(1)cd命令
    小程序调用方法
    php用json_encode中文问题
    基于thinkphp的RBAC权限控制
    thinkphp获取ip地址及位置信息
  • 原文地址:https://www.cnblogs.com/hannover/p/1971243.html
Copyright © 2011-2022 走看看