Example usage for org.apache.commons.fileupload.disk DiskFileItem get

List of usage examples for org.apache.commons.fileupload.disk DiskFileItem get

Introduction

In this page you can find the example usage for org.apache.commons.fileupload.disk DiskFileItem get.

Prototype

public byte[] get() 

Source Link

Document

Returns the contents of the file as an array of bytes.

Usage

From source file:fr.ippon.wip.http.request.MultipartRequestBuilder.java

public HttpRequestBase buildHttpRequest() throws URISyntaxException {
    MultipartEntity multipartEntity = new MultipartEntity(HttpMultipartMode.BROWSER_COMPATIBLE);
    try {/*from   w w  w  .  j  a  va2s  .  c  o m*/
        for (DiskFileItem fileItem : files) {
            if (fileItem.isFormField())
                multipartEntity.addPart(fileItem.getFieldName(), new StringBody(new String(fileItem.get())));
            else {
                //               FileBody fileBody = new FileBody(fileItem.getStoreLocation(), fileItem.getName(), fileItem.getContentType(), fileItem.getCharSet());
                InputStreamBody fileBody = new InputStreamKnownSizeBody(fileItem.getInputStream(),
                        fileItem.get().length, fileItem.getContentType(), fileItem.getName());
                multipartEntity.addPart(fileItem.getFieldName(), fileBody);
            }
        }

        // some request may have additional parameters in a query string
        if (parameterMap != null)
            for (Entry<String, String> entry : parameterMap.entries())
                multipartEntity.addPart(entry.getKey(), new StringBody(entry.getValue()));

    } catch (Exception e) {
        e.printStackTrace();
    }

    HttpPost postRequest = new HttpPost(requestedURL);
    postRequest.setEntity(multipartEntity);
    return postRequest;
}

From source file:cServ.AltaDoc.java

/**
 * Processes requests for both HTTP <code>GET</code> and <code>POST</code>
 * methods.//w w  w.  ja  v  a2s.  c  o m
 *
 * @param request servlet request
 * @param response servlet response
 * @throws ServletException if a servlet-specific error occurs
 * @throws IOException if an I/O error occurs
 */
protected void processRequest(HttpServletRequest request, HttpServletResponse response)
        throws ServletException, IOException {
    response.setContentType("text/html;charset=UTF-8");
    try (PrintWriter out = response.getWriter()) {
        System.out.println("hit altadoc");

        //begin database operation
        String nomArch = "";
        String nombre = "";
        String contra = "";
        int id = 0;
        System.out.println(request.getParameter("idprofe"));
        String displayString = "Contrasea incorrecta";
        String divColor = "danger";
        String rdrUrl = "<meta http-equiv=\"refresh\" content=\"2;url=pages/profesor/adminDocs.jsp\" >";

        //start file up
        FileItemFactory factory = new DiskFileItemFactory();

        // Create a new file upload handler
        ServletFileUpload upload = new ServletFileUpload(factory);

        // Parse the request
        List items = null;
        try {
            items = upload.parseRequest(request);
        } catch (Exception e) {
            e.printStackTrace();
        }

        for (Iterator it = items.iterator(); it.hasNext();) {
            DiskFileItem diskFileItem = (DiskFileItem) it.next();
            if (diskFileItem.isFormField()) {
                String fieldname = diskFileItem.getFieldName();
                String fieldvalue = diskFileItem.getString();
                System.out.println("fn: " + fieldname + " fv " + fieldvalue);
                if (fieldname.equals("nombre")) {
                    nombre = fieldvalue;
                } else if (fieldname.equals("contra")) {
                    contra = fieldvalue;
                } else if (fieldname.equals("idprofe")) {
                    id = Integer.parseInt(fieldvalue);
                }

            } else {

                //start getpath
                String relativeWebPath = "/../../web/pages/profesor/adminDocsPanels/docDump/";
                System.out.println("relative thing " + getServletContext().getRealPath(relativeWebPath));
                System.out.println(relativeWebPath);
                String absoluteDiskPath = getServletContext().getRealPath(relativeWebPath);
                System.out.println("complete path " + absoluteDiskPath + "\\" + nomArch);
                absoluteDiskPath += "\\" + nomArch;
                //end getpath

                byte[] fileBytes = diskFileItem.get();
                nomArch = diskFileItem.getName();
                File file = new File(absoluteDiskPath + diskFileItem.getName());
                FileOutputStream fileOutputStream = new FileOutputStream(file);
                fileOutputStream.write(fileBytes);
                fileOutputStream.flush();
            }
        }

        //end file up
        //start db insertion
        Validator valid = new Validator();
        valid.ValidatePDF(nomArch);
        if (valid.isValid() == true) {
            String adString = altaDoc(id, nomArch);
            if (adString.equals("operacion realizada")) {
                displayString = "Documento dado de alta";
                divColor = "success";
                rdrUrl = "<meta http-equiv=\"refresh\" content=\"2;url=pages/profesor/adminDocs.jsp\" >";
            }
        } else {
            displayString = "Archivo no vlido";
            divColor = "danger";
            rdrUrl = "<meta http-equiv=\"refresh\" content=\"2;url=pages/profesor/adminDocs.jsp\" >";
        }
        //end db insertion

        out.println("<!DOCTYPE html>");
        out.println("<html>");
        out.println("<head>");
        out.println("<link rel=\"stylesheet\" href=\"css/style.css\">");
        out.println("<title>Servlet AltaGrupo</title>");
        out.println("</head>");
        out.println("<body>");
        out.println("<div class=\"container\">\n" + "            <div class=\"row\">\n"
                + "                <br><br>\n" + "                <div class=\"panel panel-" + divColor
                + "\">\n" + "                    <div class=\"panel-heading\">\n"
                + "                        <h3 class=\"panel-title\">Espera</h3>\n"
                + "                    </div>\n" + "                    <div class=\"panel-body\">\n"
                + "                        " + displayString + " \n" + "                    </div>\n"
                + "                </div>\n" + "            </div>\n" + "        </div>");
        out.println(rdrUrl);
        out.println("</body>");
        out.println("</html>");
        //end database operation
    } catch (Exception ex) {
        ex.printStackTrace();
    }
}

From source file:org.apache.axis2.builder.MultipartFormDataBuilder.java

private String getTextParameter(DiskFileItem diskFileItem, String characterEncoding) throws Exception {

    String encoding = diskFileItem.getCharSet();

    if (encoding == null) {
        encoding = characterEncoding;//from   w ww  .ja  v  a2  s.c  om
    }

    String textValue;
    if (encoding == null) {
        textValue = new String(diskFileItem.get());
    } else {
        textValue = new String(diskFileItem.get(), encoding);
    }

    return textValue;
}

From source file:org.wso2.carbon.idp.mgt.ui.util.IdPManagementUIUtil.java

/**
 * @param request//from   ww  w.jav a 2 s . c o  m
 * @return
 * @throws Exception
 */
public static IdentityProvider buildeFederatedIdentityProvider(HttpServletRequest request) throws Exception {

    IdentityProvider fedIdp = new IdentityProvider();

    if (ServletFileUpload.isMultipartContent(request)) {
        ServletRequestContext servletContext = new ServletRequestContext(request);
        FileItemFactory factory = new DiskFileItemFactory();
        ServletFileUpload upload = new ServletFileUpload(factory);
        List items = upload.parseRequest(servletContext);
        Map<String, String> paramMap = new HashMap<String, String>();
        List<String> idpClaims = new ArrayList<String>();
        List<String> idpRoles = new ArrayList<String>();
        List<String> customAuthenticatorNames = new ArrayList<String>();
        List<String> proConnectorNames = new ArrayList<String>();

        Map<String, List<Property>> customAuthenticatorProperties = new HashMap<String, List<Property>>();
        Map<String, List<Property>> customProProperties = new HashMap<String, List<Property>>();

        IdentityProvider oldIdentityProvider = (IdentityProvider) request.getSession()
                .getAttribute("identityProvider");

        if (ServletFileUpload.isMultipartContent(request)) {

            for (Object item : items) {
                DiskFileItem diskFileItem = (DiskFileItem) item;
                if (diskFileItem != null) {
                    byte[] value = diskFileItem.get();
                    String key = diskFileItem.getFieldName();
                    if ("certFile".equals(key)) {
                        paramMap.put(key, Base64.encode(value));
                    } else if ("google_prov_private_key".equals(key)) {
                        paramMap.put(key, Base64.encode(value));
                    } else if (key.startsWith("claimrowname_")) {
                        idpClaims.add(new String(value));
                        paramMap.put(key, new String(value));
                    } else if (key.startsWith("rolerowname_")) {
                        idpRoles.add(new String(value));
                        paramMap.put(key, new String(value));
                    } else if (key.startsWith("custom_auth_name")) {
                        customAuthenticatorNames.add(new String(value));
                    } else if (key.startsWith("custom_pro_name")) {
                        proConnectorNames.add(new String(value));
                    } else if (key.startsWith("cust_auth_prop_")) {
                        int length = "cust_auth_prop_".length();
                        String authPropString = new String(key).substring(length);
                        if (authPropString.indexOf("#") > 0) {
                            String authName = authPropString.substring(0, authPropString.indexOf("#"));
                            String propName = authPropString.substring(authPropString.indexOf("#") + 1);
                            String propVal = new String(value);
                            Property prop = new Property();
                            prop.setName(propName);
                            prop.setValue(propVal);

                            List<Property> propList = null;

                            if (customAuthenticatorProperties.get(authName) == null) {
                                customAuthenticatorProperties.put(authName, new ArrayList<Property>());
                            }

                            propList = customAuthenticatorProperties.get(authName);
                            propList.add(prop);
                            customAuthenticatorProperties.put(authName, propList);
                        }
                    } else if (key.startsWith("cust_pro_prop_")) {
                        int length = "cust_pro_prop_".length();
                        String provPropString = new String(key).substring(length);
                        if (provPropString.indexOf("#") > 0) {
                            String proConName = provPropString.substring(0, provPropString.indexOf("#"));
                            String propName = provPropString.substring(provPropString.indexOf("#") + 1);
                            String propVal = new String(value);
                            Property prop = new Property();
                            prop.setName(propName);
                            prop.setValue(propVal);

                            List<Property> propList = null;

                            if (customProProperties.get(proConName) == null) {
                                customProProperties.put(proConName, new ArrayList<Property>());
                            }

                            propList = customProProperties.get(proConName);
                            propList.add(prop);
                            customProProperties.put(proConName, propList);
                        }
                    } else {
                        paramMap.put(key, new String(value));
                    }

                    String updatedValue = paramMap.get(key);

                    if (updatedValue != null && updatedValue.trim().length() == 0) {
                        paramMap.put(key, null);
                    }
                }
            }
        }

        if (oldIdentityProvider != null && oldIdentityProvider.getCertificate() != null) {
            paramMap.put("oldCertFile", oldIdentityProvider.getCertificate());
        }

        if (oldIdentityProvider != null && oldIdentityProvider.getProvisioningConnectorConfigs() != null) {

            ProvisioningConnectorConfig[] provisioningConnectorConfig = oldIdentityProvider
                    .getProvisioningConnectorConfigs();
            for (ProvisioningConnectorConfig provisioningConnector : provisioningConnectorConfig) {
                if (("googleapps").equals(provisioningConnector.getName())) {
                    Property[] googleProperties = provisioningConnector.getProvisioningProperties();
                    for (Property property : googleProperties) {
                        if (property.getName().equals("google_prov_private_key")) {
                            paramMap.put("old_google_prov_private_key", property.getValue());
                        }
                    }

                }
            }

        }

        // build identity provider basic information.
        buildBasicInformation(fedIdp, paramMap);

        // build out-bound authentication configuration.
        buildOutboundAuthenticationConfiguration(fedIdp, paramMap);

        // build custom authenticator configuration.
        buildCustomAuthenticationConfiguration(fedIdp, customAuthenticatorNames, customAuthenticatorProperties,
                paramMap);

        // build claim configuration.
        if (oldIdentityProvider != null && oldIdentityProvider.getClaimConfig().getClaimMappings() != null) {
            buildClaimConfiguration(fedIdp, paramMap, idpClaims,
                    oldIdentityProvider.getClaimConfig().getClaimMappings());
        } else {
            buildClaimConfiguration(fedIdp, paramMap, idpClaims, null);
        }

        // build role configuration.
        if (oldIdentityProvider != null && oldIdentityProvider.getPermissionAndRoleConfig() != null
                && oldIdentityProvider.getPermissionAndRoleConfig().getRoleMappings() != null) {
            buildRoleConfiguration(fedIdp, paramMap, idpRoles,
                    oldIdentityProvider.getPermissionAndRoleConfig().getRoleMappings());
        } else {
            buildRoleConfiguration(fedIdp, paramMap, idpRoles, null);
        }

        // build in-bound provisioning configuration.
        buildInboundProvisioningConfiguration(fedIdp, paramMap);

        // build out-bound provisioning configuration.
        buildOutboundProvisioningConfiguration(fedIdp, paramMap);

        // build custom provisioning connectors.
        buildCustomProvisioningConfiguration(fedIdp, proConnectorNames, customProProperties, paramMap);

    } else {
        throw new Exception("Invalid Content Type: Not multipart/form-data");
    }

    return fedIdp;
}

From source file:org.wso2.carbon.security.ui.jsp.SecurityUIUtil.java

public static String getTextParameter(DiskFileItem diskFileItem, String characterEncoding) throws Exception {
    String encoding = diskFileItem.getCharSet();
    if (encoding == null) {
        encoding = characterEncoding;//from  w  ww . j a  v a 2  s. com
    }
    String textValue;
    if (encoding == null) {
        textValue = new String(diskFileItem.get());
    } else {
        textValue = new String(diskFileItem.get(), encoding);
    }
    return textValue;
}

From source file:v7db.files.buckets.BucketsServlet.java

private void doFormPost(HttpServletRequest request, HttpServletResponse response, BSONObject bucket)
        throws IOException {
    ObjectId uploadId = new ObjectId();

    BSONObject parameters = new BasicBSONObject();
    List<FileItem> files = new ArrayList<FileItem>();

    if (ServletFileUpload.isMultipartContent(request)) {
        FileItemFactory factory = new DiskFileItemFactory();
        ServletFileUpload upload = new ServletFileUpload(factory);
        try {/* w ww  .  j  a va 2s . c  om*/
            for (Object _file : upload.parseRequest(request)) {
                FileItem file = (FileItem) _file;
                if (file.isFormField()) {
                    String v = file.getString();
                    parameters.put(file.getFieldName(), v);
                } else {
                    files.add(file);
                }
            }
        } catch (FileUploadException e) {
            throw new IOException(e);
        }

    } else {
        for (Entry<String, String[]> param : request.getParameterMap().entrySet()) {
            String[] v = param.getValue();
            if (v.length == 1)
                parameters.put(param.getKey(), v[0]);
            else
                parameters.put(param.getKey(), v);

        }
    }

    BSONObject result = new BasicBSONObject("_id", uploadId);
    BSONObject uploads = new BasicBSONObject();
    for (FileItem file : files) {
        DiskFileItem f = (DiskFileItem) file;
        // inline until 10KB
        if (f.isInMemory()) {
            uploads.put(f.getFieldName(), storage.inlineOrInsertContentsAndBackRefs(10240, f.get(), uploadId,
                    f.getName(), f.getContentType()));
        } else {
            uploads.put(f.getFieldName(), storage.inlineOrInsertContentsAndBackRefs(10240, f.getStoreLocation(),
                    uploadId, f.getName(), f.getContentType()));
        }
        file.delete();
    }
    result.put("files", uploads);
    result.put("parameters", parameters);

    bucketCollection.update(new BasicDBObject("_id", bucket.get("_id")),
            new BasicDBObject("$push", new BasicDBObject("FormPost.data", result)));

    String redirect = BSONUtils.getString(bucket, "FormPost.redirect");
    // redirect mode
    if (StringUtils.isNotBlank(redirect)) {
        response.sendRedirect(redirect + "?v7_formpost_id=" + uploadId);
        return;
    }
    // echo mode

    // JSON does not work, see https://jira.mongodb.org/browse/JAVA-332
    // response.setContentType("application/json");
    // response.getWriter().write(JSON.serialize(result));
    byte[] bson = BSON.encode(result);
    response.getOutputStream().write(bson);
}