Example usage for org.springframework.web.multipart MultipartException MultipartException

List of usage examples for org.springframework.web.multipart MultipartException MultipartException

Introduction

In this page you can find the example usage for org.springframework.web.multipart MultipartException MultipartException.

Prototype

public MultipartException(String msg, @Nullable Throwable cause) 

Source Link

Document

Constructor for MultipartException.

Usage

From source file:org.hdiv.web.multipart.HdivStandardServletMultipartResolver.java

@Override
public boolean isMultipart(HttpServletRequest request) {

    HdivMultipartException multipartException = (HdivMultipartException) request
            .getAttribute(IMultipartConfig.FILEUPLOAD_EXCEPTION);
    if (multipartException != null) {
        Exception orig = multipartException.getOriginal();
        if (orig instanceof MultipartException) {
            throw (MultipartException) orig;
        } else {//  w  ww  .  j a v  a2 s.  co m
            throw new MultipartException("Could not parse multipart servlet request", orig);
        }
    }

    return super.isMultipart(request);
}

From source file:org.tangram.spring.StreamingMultipartFile.java

@Override
public long getSize() {
    if (size > 0) {
        try {//from   w  ww.j a  va2 s.  c o  m
            return getBytes().length;
        } catch (IOException e) {
            throw new MultipartException("Something went wrong here", e);
        } // try/catch
    } // if
    return size;
}

From source file:org.hdiv.web.multipart.HdivCommonsMultipartResolver.java

@Override
public MultipartHttpServletRequest resolveMultipart(HttpServletRequest request) throws MultipartException {

    HdivMultipartException multipartException = (HdivMultipartException) request
            .getAttribute(IMultipartConfig.FILEUPLOAD_EXCEPTION);
    if (multipartException != null) {
        Exception orig = multipartException.getOriginal();
        if (orig instanceof MultipartException) {
            throw (MultipartException) orig;
        } else {/*w  w  w .  ja  v a 2s.co m*/
            throw new MultipartException("Could not parse multipart servlet request", orig);
        }
    }

    // If MultipartHttpServletRequest instance is present in request wrappers path, don't call to MultipartResolver
    MultipartHttpServletRequest original = WebUtils.getNativeRequest(request,
            MultipartHttpServletRequest.class);
    if (original != null) {

        // Use MultipartHttpServletRequestWrapper to maintain MultipartHttpServletRequest in first place
        // and obtains parameter values from RequestWrapper, with real values with confidentiality activated
        RequestWrapper requestWrapper = WebUtils.getNativeRequest(request, RequestWrapper.class);
        return new MultipartHttpServletRequestWrapper(request, requestWrapper, original);
    }

    // If MultipartHttpServletRequest instance is not present, parse multipart request
    return super.resolveMultipart(request);
}

From source file:uk.ac.bbsrc.tgac.browser.web.AjaxMultipartResolver.java

@Override
public MultipartHttpServletRequest resolveMultipart(HttpServletRequest request) throws MultipartException {
    logger.info("resolveMultipart");
    String encoding = determineEncoding(request);
    FileUpload fileUpload = prepareFileUpload(encoding);
    if (fileUploadListener != null) {
        fileUpload.setProgressListener(fileUploadListener);
        request.getSession(false).setAttribute("upload_listener", fileUploadListener);
    }/*from w  ww  .j a  v a 2 s.  co m*/
    try {
        List fileItems = ((ServletFileUpload) fileUpload).parseRequest(request);
        MultipartParsingResult parsingResult = parseFileItems(fileItems, encoding);
        return new DefaultMultipartHttpServletRequest(request, parsingResult.getMultipartFiles(),
                parsingResult.getMultipartParameters());
    } catch (FileUploadBase.SizeLimitExceededException ex) {
        throw new MaxUploadSizeExceededException(fileUpload.getSizeMax(), ex);
    } catch (FileUploadException ex) {
        throw new MultipartException("Could not parse multipart servlet request", ex);
    }
}

From source file:com.hillert.upload.web.ajax.AjaxFileUploadMultipartResolver.java

public MultipartHttpServletRequest resolveMultipart(HttpServletRequest request) throws MultipartException {
    String encoding = determineEncoding(request);
    FileUpload fileUpload1 = prepareFileUpload(encoding); //renamed fileUpload to fileUpload1

    // Beginn of added code
    UploadListener listener = new UploadListener(request, 30);
    FileItemFactory factory = new MonitoredDiskFileItemFactory(listener);
    ServletFileUpload fileUpload = new ServletFileUpload(factory);
    fileUpload.setSizeMax(fileUpload1.getSizeMax());
    fileUpload.setHeaderEncoding(fileUpload1.getHeaderEncoding());
    //end of added code

    try {// w  w  w  .  j av  a  2  s .  co  m
        List fileItems = ((ServletFileUpload) fileUpload).parseRequest(request);
        MultipartParsingResult parsingResult = parseFileItems(fileItems, encoding);
        return new DefaultMultipartHttpServletRequest(request, parsingResult.getMultipartFiles(),
                parsingResult.getMultipartParameters());
    } catch (FileUploadBase.SizeLimitExceededException ex) {
        throw new MaxUploadSizeExceededException(fileUpload.getSizeMax(), ex);
    } catch (FileUploadException ex) {
        throw new MultipartException("Could not parse multipart servlet request", ex);
    }
}

From source file:org.toobsframework.pres.spring.multipart.MultipartController.java

public MultipartHttpServletRequest resolveMultipart(HttpServletRequest request) throws MultipartException {

    //MultipartHttpServletRequest multiPartReq = super.resolveMultipart(request);

    String encoding = determineEncoding(request);
    FileUpload fileUpload = prepareFileUpload(encoding);
    try {//from   w  w w .j  a v a2  s .co  m
        List fileItems = ((ServletFileUpload) fileUpload).parseRequest(request);
        MultipartParsingResult parsingResult = parseFileItems(fileItems, encoding, 0);

        Map params = ParameterUtil.buildParameterMap(request);
        // Set expectResponse to true so a multipartResolver can return params if needed
        requestManager.set(null, request, null, params, true);

        MultipartHttpServletRequest multiPartReq = new DefaultMultipartHttpServletRequest(request,
                parsingResult.getMultipartFiles(), parsingResult.getMultipartParameters());
        multipartResolver.resolveMultipart(request, multiPartReq);

        return multiPartReq;
    } catch (FileUploadBase.SizeLimitExceededException ex) {
        throw new MaxUploadSizeExceededException(fileUpload.getSizeMax(), ex);
    } catch (FileUploadException ex) {
        throw new MultipartException("Could not parse multipart servlet request", ex);
    } finally {
        requestManager.unset();
    }

}

From source file:org.myjerry.web.multipart.StreamingMultipartResolver.java

public MultipartHttpServletRequest resolveMultipart(HttpServletRequest request) throws MultipartException {

    // Create a new file upload handler
    ServletFileUpload upload = new ServletFileUpload();
    upload.setFileSizeMax(maxUploadSize);

    String encoding = determineEncoding(request);

    Map<String, MultipartFile> multipartFiles = new HashMap<String, MultipartFile>();
    Map<String, String[]> multipartParameters = new HashMap<String, String[]>();

    // MultiValueMap multipartFiles = new MultiValueMap();

    // Parse the request
    try {//from  w ww  .j a  v a 2  s. c om
        FileItemIterator iter = upload.getItemIterator(request);
        while (iter.hasNext()) {
            FileItemStream item = iter.next();

            String name = item.getFieldName();
            InputStream stream = item.openStream();
            if (item.isFormField()) {

                String value = Streams.asString(stream, encoding);

                String[] curParam = (String[]) multipartParameters.get(name);
                if (curParam == null) {
                    // simple form field
                    multipartParameters.put(name, new String[] { value });
                } else {
                    // array of simple form fields
                    String[] newParam = StringUtils.addStringToArray(curParam, value);
                    multipartParameters.put(name, newParam);
                }

            } else {

                // Process the input stream
                MultipartFile file = new StreamingMultipartFile(item);
                multipartFiles.put(name, file);
            }
        }
    } catch (IOException e) {
        throw new MultipartException("something went wrong here", e);
    } catch (FileUploadException e) {
        throw new MultipartException("something went wrong here", e);
    }

    return new DefaultMultipartHttpServletRequest(request, multipartFiles, multipartParameters);
}

From source file:ee.jaaaar.dreamestate.core.StreamingMultipartResolver.java

@Override
public MultipartHttpServletRequest resolveMultipart(HttpServletRequest request) throws MultipartException {

    // Create a new file upload handler
    ServletFileUpload upload = new ServletFileUpload();
    upload.setFileSizeMax(maxUploadSize);

    String encoding = determineEncoding(request);

    Map<String, String[]> multipartParameters = new HashMap<String, String[]>();

    MultiValueMap<String, MultipartFile> multipartFiles = new LinkedMultiValueMap<String, MultipartFile>();

    // Parse the request
    try {//  w w  w.  jav a  2  s  .com
        FileItemIterator iter = upload.getItemIterator(request);
        while (iter.hasNext()) {
            FileItemStream item = iter.next();

            String name = item.getFieldName();
            InputStream stream = item.openStream();
            if (item.isFormField()) {

                String value = Streams.asString(stream, encoding);

                String[] curParam = (String[]) multipartParameters.get(name);
                if (curParam == null) {
                    // simple form field
                    multipartParameters.put(name, new String[] { value });
                } else {
                    // array of simple form fields
                    String[] newParam = StringUtils.addStringToArray(curParam, value);
                    multipartParameters.put(name, newParam);
                }
            } else {
                // Process the input stream
                MultipartFile file = new StreamingMultipartFile(item);
                multipartFiles.add(name, file);
            }
        }
    } catch (IOException e) {
        throw new MultipartException("something went wrong here", e);
    } catch (FileUploadException e) {
        throw new MultipartException("something went wrong here", e);
    }

    return new DefaultMultipartHttpServletRequest(request, multipartFiles, multipartParameters);
}

From source file:org.hdiv.web.multipart.HDIVMultipartResolver.java

@Override
public MultipartHttpServletRequest resolveMultipart(HttpServletRequest request) throws MultipartException {

    Assert.notNull(request, "Request must not be null");
    if (request instanceof RequestWrapper) {

        final RequestWrapper requestWrapper = (RequestWrapper) request;

        Exception multipartException = (Exception) request.getAttribute(IMultipartConfig.FILEUPLOAD_EXCEPTION);
        if (multipartException != null) {

            if (multipartException instanceof MaxUploadSizeExceededException) {
                throw (MaxUploadSizeExceededException) multipartException;
            } else {
                throw new MultipartException("Could not parse multipart servlet request", multipartException);
            }/*from   ww w  .jav a2 s.c  om*/
        }

        if (this.resolveLazily) {

            return new DefaultMultipartHttpServletRequest(requestWrapper) {
                @Override
                protected void initializeMultipart() {
                    setMultipartFiles(getMultipartFileElements(requestWrapper.getFileElements()));
                    setMultipartParameters(getMultipartTextElements(requestWrapper.getTextElements()));
                }
            };
        } else {
            return new DefaultMultipartHttpServletRequest(request,
                    getMultipartFileElements(requestWrapper.getFileElements()),
                    getMultipartTextElements(requestWrapper.getTextElements()));
        }
    } else {
        //The normal behaviour
        return super.resolveMultipart(request);
    }
}

From source file:ru.arch_timeline.spring.multipart.StreamingMultipartResolver.java

public MultipartHttpServletRequest resolveMultipart(HttpServletRequest request) throws MultipartException {

    // Create a new file upload handler
    ServletFileUpload upload = new ServletFileUpload();
    upload.setFileSizeMax(maxUploadSize);

    String encoding = determineEncoding(request);

    //Map<String, MultipartFile> multipartFiles = new HashMap<String, MultipartFile>();
    Map<String, String[]> multipartParameters = new HashMap<String, String[]>();
    Map<String, String> multipartContentTypes = new HashMap<String, String>();

    MultiValueMap<String, MultipartFile> multipartFiles = new LinkedMultiValueMap<String, MultipartFile>();

    // Parse the request
    try {/*from w w w.  ja  v  a2  s .  c  o m*/
        FileItemIterator iter = upload.getItemIterator(request);
        while (iter.hasNext()) {
            FileItemStream item = iter.next();

            String name = item.getFieldName();
            InputStream stream = item.openStream();
            if (item.isFormField()) {

                String value = Streams.asString(stream, encoding);

                String[] curParam = (String[]) multipartParameters.get(name);
                if (curParam == null) {
                    // simple form field
                    multipartParameters.put(name, new String[] { value });
                } else {
                    // array of simple form fields
                    String[] newParam = StringUtils.addStringToArray(curParam, value);
                    multipartParameters.put(name, newParam);
                }

            } else {

                // Process the input stream
                MultipartFile file = new StreamingMultipartFile(item);
                multipartFiles.add(name, file);
                multipartContentTypes.put(name, file.getContentType());
            }
        }
    } catch (IOException e) {
        throw new MultipartException("something went wrong here", e);
    } catch (FileUploadException e) {
        throw new MultipartException("something went wrong here", e);
    }

    return new DefaultMultipartHttpServletRequest(request, multipartFiles, multipartParameters,
            multipartContentTypes);
}