Example usage for org.springframework.web.multipart MultipartFile transferTo

List of usage examples for org.springframework.web.multipart MultipartFile transferTo

Introduction

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

Prototype

default void transferTo(Path dest) throws IOException, IllegalStateException 

Source Link

Document

Transfer the received file to the given destination file.

Usage

From source file:egovframework.example.sample.web.EgovSampleController.java

@RequestMapping("/fileUploadX2.do")
public void fileUploadX2(HttpServletRequest request, HttpServletResponse response, SessionStatus status)
        throws Exception {
    //System.out.println(" ? uuid--"+request.getParameter("uuid"));
    String chkType = request.getHeader("Content-Type");

    if (chkType == null) {
        return;//from w  w w  . j a  v a  2 s. co m
    }

    request.setCharacterEncoding("utf-8");
    String contextRealPath = request.getSession().getServletContext().getRealPath("/");
    String PATH = request.getParameter("PATH");
    String savePath = contextRealPath + PATH;
    //   System.out.println("savePath------@@-----"+savePath);
    //   int maxSize = 500 * 1024 * 1024; //   ? ? 500MB() 

    PlatformData resData = new PlatformData();
    VariableList resVarList = resData.getVariableList();
    String sMsg = " A ";
    try {
        MultipartHttpServletRequest msReq = (MultipartHttpServletRequest) request;
        Iterator<String> filesd = msReq.getFileNames();

        String dir = request.getRealPath("images/egovframework/board_img");
        while (filesd.hasNext()) {
            sMsg += "D ";
            //String name = (String)files.nextElement();
            String name = filesd.next();
            //   System.out.println("? ^^-----"+name);
            MultipartFile mfile = msReq.getFile(name);

            //?
            String genId = UUID.randomUUID().toString();

            //?
            String originalFileName = mfile.getOriginalFilename();
            //?
            String saveFileName = genId;

            //         System.out.println("???="+ originalFileName);
            System.out.println("??=" + saveFileName);

            String savePathh = dir + "/" + saveFileName;

            mfile.transferTo(new File(savePathh));

            System.out.println(name + "??");
            System.out.println("? ?-" + genId);
            //??
            SampleVO vo = new SampleVO();
            vo.setiOriName(originalFileName);
            vo.setiFileName(saveFileName);
            vo.setiSize((int) mfile.getSize());
            vo.setiUrl(savePathh);
            vo.setiUuid("thumbnail");
            sampleService.uploadImg(vo);

            //? ?  
            //updateThumbnail
            Product pVO = new Product();
            pVO.setP_uuid(request.getParameter("uuid"));
            System.out.println(" uuid-" + request.getParameter("uuid"));

            String thumbnail = "http://localhost:8778/sample/images/egovframework/board_img/" + saveFileName;
            pVO.setP_thumbnail(thumbnail);
            sampleService.updateThumbnail(pVO);
            status.setComplete();

        }

        resVarList.add("ErrorCode", 200);
        resVarList.add("ErrorMsg", "SUCC");
    } catch (Exception e) {
        resVarList.add("ErrorCode", 500);
        resVarList.add("ErrorMsg", sMsg + " " + e);

    }

    HttpPlatformResponse res = new HttpPlatformResponse(response);
    res.setData(resData);
    res.sendData();

}

From source file:com.smart.smartrestfulw.controller.FileDepotController.java

/**
 * ??/*from   ww  w.  j ava  2s . co  m*/
 *
 * @param formFileData
 * @param strJson
 * @param isModify ???
 * @return
 */
private String SaveUpLoadFile(List<MultipartFile> uploadFiles, FileDepotParamModel paramModel, boolean isModify)
        throws Exception {

    String strSvcFileLocalName = null, strUpFileName = null, strTempFilePath = null;
    StringBuffer sbTemp = new StringBuffer();
    StringBuffer sbFilePathTemp = new StringBuffer();
    boolean bSvcFileExist = false;
    Set<String> setStrSqls = new HashSet<String>();
    ExecuteResultParam resultParam = null;
    DepotFileDetailModel tempFileDetailModel = null;
    int saveFlag = 1;
    if (paramModel == null) {
        return responseFormat.formationResultToString(ResponseResultCode.ErrorParam, "paramError");
    }

    SignInformationModel signModel = SignCommon.verifySign(paramModel.getToken(), false);
    if (signModel == null) {
        return responseFormat.formationResultToString(ResponseResultCode.ErrorSignToken, "no authorize");
    }

    try {

        for (MultipartFile tempFile : uploadFiles) {
            strUpFileName = tempFile.getOriginalFilename();
            //  root/rsid/date(yymmddhh)/Type
            //
            sbFilePathTemp.append(paramModel.rsid);
            sbTemp.append(DeployInfo.GetDeployFilePath()).append(File.separator).append(paramModel.rsid);
            FileHelper.CheckFileExist(sbTemp.toString());
            //
            sbFilePathTemp.append(File.separator).append(UtileSmart.getCurrentDate());
            sbTemp.append(File.separator).append(UtileSmart.getCurrentDate());
            FileHelper.CheckFileExist(sbTemp.toString());
            tempFileDetailModel = paramModel.getFileDetailModel(strUpFileName);
            if (tempFileDetailModel == null) {
                return responseFormat.formationResultToString(ResponseResultCode.ErrorParam, "param error."); // return formationResult.formationResult(ResponseResultCode.Error, new ExecuteResultParam(String.format("? %s?", strUpFileName), paramModel.toStringInformation()));
            }
            //? (File.separator) 
            if (tempFileDetailModel.fileOwnType.indexOf(File.separator) > 0) {
                return responseFormat.formationResultToString(ResponseResultCode.ErrorFileType,
                        "file type error"); // return formationResult.formationResult(ResponseResultCode.Error, new ExecuteResultParam(String.format("? %s?", strUpFileName), paramModel.toStringInformation()));
                //return formationResult.formationResult(ResponseResultCode.Error, new ExecuteResultParam(String.format("??", strUpFileName), paramModel.toStringInformation()));
            }
            sbFilePathTemp.append(File.separator).append(tempFileDetailModel.fileOwnType);
            sbTemp.append(File.separator).append(tempFileDetailModel.fileOwnType);
            FileHelper.CheckFileExist(sbTemp.toString());
            //?
            sbFilePathTemp.append(File.separator).append(strUpFileName).toString();
            strSvcFileLocalName = sbTemp.append(File.separator).append(strUpFileName).toString();
            bSvcFileExist = FileHelper.CheckFileExist(strSvcFileLocalName, false);
            if (bSvcFileExist && isModify == false) {
                return responseFormat.formationResultToString(ResponseResultCode.ErrorFileExist, "file exist");
                //return formationResult.formationResult(ResponseResultCode.Error, new ExecuteResultParam(String.format("????%s", strUpFileName), paramModel.toStringInformation()));
            }
            //?? ownid  fpath???????
            resultParam = DBHelper.ExecuteSqlOnceSelect(DeployInfo.MasterRSID,
                    String.format(
                            "SELECT COUNT(*) AS ROWSCOUNT FROM FILEDEPOT WHERE OWNID<>'%s' AND FPATH='%s'",
                            paramModel.ownid, sbFilePathTemp.toString()));
            if (resultParam.ResultCode != 0) {

                return responseFormat.formationResultToString(ResponseResultCode.ErrorDB, resultParam.errMsg);
                //return formationResult.formationResult(ResponseResultCode.Error, new ExecuteResultParam(String.format("????%s : Msg : %s", strUpFileName, resultParam.errMsg), paramModel.toStringInformation()));
            }
            //ROWSCOUNT ?0?? ROWSCOUNT ?0???????
            if (resultParam.ResultJsonObject != null) {
                if (Integer.parseInt(resultParam.ResultJsonObject.getJSONObject(DeployInfo.ResultDataTag)
                        .getString("ROWSCOUNT")) > 0) {
                    return responseFormat.formationResultToString(ResponseResultCode.ErrorFileRepeat,
                            "file binded ");
                    //return formationResult.formationResult(ResponseResultCode.Error, new ExecuteResultParam(String.format("%s,?????????????", strUpFileName), paramModel.toStringInformation()));
                }
            }
            tempFile.transferTo(new File(strSvcFileLocalName));

            //??????
            tempFileDetailModel.fileLocalPath = strSvcFileLocalName;
            //?sql????
            if (isModify) {
                //todo   ?sql??
                // 1,??
                // 2? uuid ????
                //3? uuid ?
                setStrSqls.add(String.format(
                        "INSERT INTO FILEDEPOT (FID,FNAME,FPATH,FSUMMARY,OWNID,OWNFILETYPE) VALUES ('%s','%s','%s','%s','%s','%s')",
                        UUID.randomUUID().toString(), strUpFileName, sbFilePathTemp.toString(), "md5",
                        paramModel.ownid, tempFileDetailModel.fileOwnType));
            } else {
                setStrSqls.add(String.format(
                        "INSERT INTO FILEDEPOT (FID,FNAME,FPATH,FSUMMARY,OWNID,OWNFILETYPE) VALUES ('%s','%s','%s','%s','%s','%s')",
                        UUID.randomUUID().toString(), strUpFileName, sbFilePathTemp.toString(), "md5",
                        paramModel.ownid, tempFileDetailModel.fileOwnType));
            }

            sbTemp.delete(0, sbTemp.length());
            sbFilePathTemp.delete(0, sbFilePathTemp.length());
        }
        //???
        resultParam = DBHelper.ExecuteSql(DeployInfo.MasterRSID, setStrSqls);
        if (resultParam.ResultCode >= 0) {
            saveFlag = 0;
            //????
            resultParam = SelectDepotFileByOwn(new FileDepotParamModel(paramModel.ownid));
            //return formationResult.formationResult(ResponseResultCode.Success, new ExecuteResultParam(resultParam.ResultJsonObject));
            return responseFormat.formationSuccessResultToString(resultParam.ResultJsonObject);

        } else {
            return responseFormat.formationResultToString(ResponseResultCode.ErrorDB, resultParam.errMsg);
            //return formationResult.formationResult(ResponseResultCode.Error, new ExecuteResultParam(String.format("??%s", resultParam.errMsg), paramModel.toStringInformation()));
        }
    } catch (Exception e) {
        return responseFormat.formationResultToString(ResponseResultCode.ErrorDB, e);
        // return formationResult.formationResult(ResponseResultCode.Error, new ExecuteResultParam(e.getLocalizedMessage(), paramModel.toStringInformation(), e));
    } finally {
        if (saveFlag == 1) {
            DeleteFile(paramModel.fileDetaile);
        }
        UtileSmart.FreeObjects(strSvcFileLocalName, strUpFileName, strTempFilePath, sbTemp, sbFilePathTemp,
                setStrSqls, resultParam, paramModel, tempFileDetailModel);
    }

}

From source file:de.uhh.l2g.controller.ProducerVideoDataInputEditController.java

/**
 * Do upload./*from  www  .ja va  2 s  .  com*/
 *
 * @param request the request
 * @param response the response
 * @param model the model
 * @throws NullPointerException the null pointer exception
 */
private void doUpload(ActionRequest request, ActionResponse response, ProducerVideoDataInputEditModel model)
        throws NullPointerException {
    File destination = null;
    String fileDestPhad = "";

    // upload this file to the user home desitation
    try {
        Producer producer = model.getProducer();
        Video video = model.getVideo();
        Host host = model.getHost();

        // pick the multipart file content data
        MultipartFile file = model.getContactFile();
        // get the producers home directory
        String producerHomeDir = producer.getHomeDir();

        // Current Path for the current User
        String tmpath = L2goPropsUtil.get("lecture2go.media.repository") + "/" + host.getServerRoot() + "/"
                + producer.getHomeDir() + "/";

        // get the original file name
        String originalFileName = file.getOriginalFilename();
        originalFileName = replaceBadCharacters(originalFileName);

        // upload ############ if mp4 upload or tar
        // the upload-file has to end on 'mp4' or 'mp3' or 'm4v' or 'm4a' or
        // pdf
        String[] p = originalFileName.split("\\.");
        int l = p.length;
        l--;
        String fileFormat = p[l].toLowerCase();

        /**rename start**/
        String[] parameter = originalFileName.split("\\_");
        // the parameter array length has to be 4, 
        // if not -> this is not l2go upload
        // so, have to rename

        SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd_HH-mm");
        String newDate = format.format(getUploadDate()).toString();

        if (parameter.length != 4)
            originalFileName = model.getLectureseries().getNumber() + "_" + model.getMetadata().getCreator()
                    + "_" + newDate + "." + fileFormat;
        originalFileName = replaceBadCharacters(originalFileName);
        //now reset the parameter array from above
        parameter = originalFileName.split("\\_");
        /**rename end**/

        if ((fileFormat.equalsIgnoreCase("mp4") || fileFormat.equalsIgnoreCase("tar")
                || fileFormat.equalsIgnoreCase("mp3")) && (video.getFilename() == null)) {
            // build the filename without file format
            String[] ofn = originalFileName.split("\\_");
            String filename = ofn[0] + "_" + ofn[1] + "_" + ofn[2] + "_" + ofn[3].split("\\.")[0];
            // extract time and date from the originalFileName
            // the upload-file has to end on 'mp4' or 'mp3' or 'm4v' or flv
            String parameter4 = parameter[3];
            // check parameter 3 - this is the date
            String l2gDate = parameter[2];
            // and parameter 4 - this is the time
            String l2gTime = parameter4.split("\\.")[0];
            String generationDate = l2gDate + "_" + l2gTime;
            // does filename exists in the DB?
            if (((VideoDao) getDaoBeanFactory().getBean("videoDao")).filenameExists(filename)
                    && !fileFormat.equalsIgnoreCase("tar")) // check
                // only for mp4 and mp3
                filename = ofn[0] + "_" + ofn[1] + "-" + video.getId() + "_" + ofn[2] + "_"
                        + ofn[3].split("\\.")[0];

            // update video-database, only if mp4 or tar or mp3 - this is the first upload
            if (fileFormat.equalsIgnoreCase("mp4") || fileFormat.equalsIgnoreCase("tar")
                    || fileFormat.equalsIgnoreCase("mp3")) {
                // update the data row for this file-> set the new original
                // filename in the url field from the database table
                if (fileFormat.equalsIgnoreCase("mp3"))
                    video.setFilename(filename + ".mp3");
                else
                    video.setFilename(filename + ".mp4");
                // and save the extracted date and time in the database
                video.setGenerationDate(generationDate);

                String secfilename = Security.createSecureFileName();
                if (fileFormat.equalsIgnoreCase("mp4"))
                    secfilename = secfilename + ".mp4";
                if (fileFormat.equalsIgnoreCase("mp3"))
                    secfilename = secfilename + ".mp3";
                if (fileFormat.equalsIgnoreCase("tar"))
                    secfilename = secfilename + ".mp4";

                ((VideoDao) getDaoBeanFactory().getBean("videoDao")).updateById(video.getTitle(),
                        video.getTags(), video.getLectureseriesId(), video.getEigentuemerId(),
                        video.getProducerId(), video.getContainerFormat(), video.getFilename(),
                        video.getResolution(), video.getDuration(), producer.getHostId(), 0, // textId
                        video.getFileSize(), // filesize
                        video.getGenerationDate(), false, // openAccess
                        false, // downloadLink
                        video.getMetadataId(), // metadataId
                        secfilename, video.getHits(), video.isPermittedToSegment(), video.getFacilityId(),
                        video.getCitation2go(), video.getId());
                ((VideoDao) getDaoBeanFactory().getBean("videoDao")).updateUploadDate(getUploadDate(),
                        video.getId());

                Video v = ((VideoDao) getDaoBeanFactory().getBean("videoDao")).getById(video.getId()).iterator()
                        .next();
                // is mp4 or tar and not openaccess
                if (!v.isOpenaccess()) {
                    destination = new File(L2goPropsUtil.get("lecture2go.media.repository") + "/"
                            + host.getName() + "/" + producerHomeDir + "/" + v.getSecureFilename());
                    fileDestPhad = L2goPropsUtil.get("lecture2go.media.repository") + "/" + host.getName() + "/"
                            + producerHomeDir + "/" + v.getSPreffix();

                    model.setOpenAccess(false);
                    model.setSecureUrl(v.getSecureUrl());
                } else {
                    destination = new File(L2goPropsUtil.get("lecture2go.media.repository") + "/"
                            + host.getName() + "/" + producerHomeDir + "/" + v.getFilename());
                    fileDestPhad = L2goPropsUtil.get("lecture2go.media.repository") + "/" + host.getName() + "/"
                            + producerHomeDir + "/" + v.getSPreffix();

                    model.setOpenAccess(true);
                    model.setSecureUrl(null);
                }
            }
        } else {
            // update model
            // if mp4, mp3, m4v, pdf file upload
            // get the video name -> 11.123_sturm_2009-09-11_10-00
            Integer vidId = new Integer(request.getParameter("videoId"));
            Video v = ((VideoDao) getDaoBeanFactory().getBean("videoDao")).getById(vidId).iterator().next();

            if (v.isOpenaccess())
                fileDestPhad = L2goPropsUtil.get("lecture2go.media.repository") + "/" + host.getName() + "/"
                        + producerHomeDir + "/" + v.getPreffix();
            else
                fileDestPhad = L2goPropsUtil.get("lecture2go.media.repository") + "/" + host.getName() + "/"
                        + producerHomeDir + "/" + v.getSPreffix();

            // if mp4
            if (fileFormat.equalsIgnoreCase("mp4")) {
                ((VideoDao) getDaoBeanFactory().getBean("videoDao")).updateUploadDate(getUploadDate(),
                        video.getId());
                destination = new File(fileDestPhad + ".mp4");
            }

            // if mp3
            if (fileFormat.equalsIgnoreCase("mp3")) {
                destination = new File(fileDestPhad + ".mp3");
                model.setMp3File(fileDestPhad + ".mp3");
            }
            // if m4v
            if (fileFormat.equalsIgnoreCase("m4v")) {
                destination = new File(fileDestPhad + ".m4v");
                model.setM4vFile(fileDestPhad + ".m4v");
            }
            // if pdf
            if (fileFormat.equalsIgnoreCase("pdf")) {
                destination = new File(fileDestPhad + ".pdf");
                model.setPdfFile(fileDestPhad + ".pdf");
            }
            // if m4a
            if (fileFormat.equalsIgnoreCase("m4a")) {
                destination = new File(fileDestPhad + ".m4a");
                model.setM4aFile(fileDestPhad + ".m4a");
            }
            // if xml
            if (fileFormat.equalsIgnoreCase("xml"))
                destination = new File(fileDestPhad + ".xml");
        }
        //before mp4-upload is completed, delete all thumbnails from file
        if (fileFormat.equalsIgnoreCase("mp4"))
            ((ProzessManager) getUtilityBeanFactory().getBean("prozessManager")).deleteThumbnails(video);

        // UPLOAD this file to the user home destination
        file.transferTo(destination);

        // change upload status after update prozess
        Upload upload = ((UploadDao) getDaoBeanFactory().getBean("uploadDao")).getByUserIdDesc(producer.getId())
                .iterator().next();
        ((UploadDao) getDaoBeanFactory().getBean("uploadDao")).updateById(upload.getId(), upload.getUserId(),
                upload.getContentLength(), upload.getTimestamp(), 1, video.getId());

        // get updated video from DB
        Video uploadetVideo = ((VideoDao) getDaoBeanFactory().getBean("videoDao")).getById(video.getId())
                .iterator().next();
        //set container format for video
        uploadetVideo.setContainerFormat(fileFormat);

        // TAR -- unpack the tar file in the home directory and rename all files
        if (fileFormat.equalsIgnoreCase("tar")) {
            // unpack all files and rename
            try {
                String videopre = uploadetVideo.getPreffix();
                String videoSpre = uploadetVideo.getSPreffix();
                String tarFileName = tmpath + uploadetVideo.getSecureFilename();
                File dest = new File(L2goPropsUtil.get("lecture2go.media.repository") + "/"
                        + host.getServerRoot() + "/" + producer.getHomeDir());

                // extract all files from archive
                TarExtraktor.untarFiles(tarFileName, dest);

                // get extracted files
                File mp4 = new File(tmpath + videopre + ".mp4");
                File mp3 = new File(tmpath + videopre + ".mp3");
                File m4v = new File(tmpath + videopre + ".m4v");
                File m4a = new File(tmpath + videopre + ".m4a");

                // rename them
                File smp4 = new File(tmpath + videoSpre + ".mp4");
                File smp3 = new File(tmpath + videoSpre + ".mp3");
                File sm4v = new File(tmpath + videoSpre + ".m4v");
                File sm4a = new File(tmpath + videoSpre + ".m4a");

                // do
                mp4.renameTo(smp4);
                mp3.renameTo(smp3);
                m4v.renameTo(sm4v);
                m4a.renameTo(sm4a);

                // delete the tar file
                File tar = new File(tmpath + videoSpre + ".tar");
                tar.delete();

                // update model
                model.setM4aFile(tmpath + videoSpre + ".m4a");
                model.setMp3File(tmpath + videoSpre + ".mp3");
                model.setM4vFile(tmpath + videoSpre + ".m4v");
                //set container format for video
                uploadetVideo.setContainerFormat("mp4");
            } catch (IOException e) {
            }
        }

        // update RSS
        try {
            ((ProzessManager) getUtilityBeanFactory().getBean("prozessManager")).RSS(uploadetVideo, "mp4",
                    model);
            ((ProzessManager) getUtilityBeanFactory().getBean("prozessManager")).RSS(uploadetVideo, "mp3",
                    model);
            ((ProzessManager) getUtilityBeanFactory().getBean("prozessManager")).RSS(uploadetVideo, "m4v",
                    model);
            ((ProzessManager) getUtilityBeanFactory().getBean("prozessManager")).RSS(uploadetVideo, "m4a",
                    model);
        } catch (Exception e) {
        }

        // write the htaccess
        String url = L2goPropsUtil.get("lecture2go.media.repository") + "/" + host.getName() + "/"
                + producer.getHomeDir() + "/";
        String remoteUserId = request.getRemoteUser();
        int remoteUId = new Integer(remoteUserId);

        ((Htaccess) getUtilityBeanFactory().getBean("htaccess")).makeHtaccess(url,
                ((VideoDao) getDaoBeanFactory().getBean("videoDao")).getLockedByProducerId(remoteUId));

        // and update metadata if not xml
        if (!fileFormat.equalsIgnoreCase("xml"))
            updateFfmpegMetadata(uploadetVideo, model);

        // and check for xml-file
        try {
            String[] arg = new String[1];
            // destination
            if (video.isOpenaccess())
                arg[0] = L2goPropsUtil.get("lecture2go.media.repository") + "/" + host.getServerRoot() + "/"
                        + producer.getHomeDir() + "/" + video.getFilenamePreffix() + ".xml";
            else
                arg[0] = L2goPropsUtil.get("lecture2go.media.repository") + "/" + host.getServerRoot() + "/"
                        + producer.getHomeDir() + "/" + video.getSecureFilename().split("\\.")[0] + ".xml";

            // if XML file exists, import it to database
            File xml = new File(arg[0]);
            if (xml.isFile()) {
                if (this.importXmlToDatabase(arg, video)) {
                    xml.delete();
                }
            }
        } catch (NullPointerException npe) {
        }
        model.setContactFile(null);

    } catch (IllegalStateException e) {
        e.printStackTrace();
    } catch (IOException e) {
        e.printStackTrace();
    }

    // set current site for browsing!
    int currentSeite = 1;
    try {
        currentSeite = new Integer(request.getParameter("currentSeite"));
    } catch (Exception e) {
    }

    model.setCurrentSeite(currentSeite);
}

From source file:org.apache.rave.portal.service.impl.DefaultOmdlService.java

@Override
public Page importOmdl(MultipartFile multipartFile, String pageName) throws DuplicateItemException {
    Page page = null;/*from  w w  w  .j av  a2  s  .co m*/
    OmdlInputAdapter omdlInputAdapter = new OmdlInputAdapter();
    File temp = null;
    String xml = null;
    try {
        if (multipartFile != null) {
            if (multipartFile.getSize() > 0) {
                String tempUploadFolder = System.getProperty("java.io.tmpdir");
                temp = new File(tempUploadFolder, multipartFile.getOriginalFilename());
                multipartFile.transferTo(temp);
                xml = FileUtils.readFileToString(temp);
            }
        }
    } catch (IllegalStateException e) {
        logger.error(e.getMessage());
        throw new RuntimeException(e);
    } catch (IOException e) {
        logger.error(e.getMessage());
        throw new RuntimeException(e);
    }

    Document root = initializeBuilder(xml);
    if (root != null) {
        try {
            parseOmdlFile(root, omdlInputAdapter);
        } catch (BadOmdlXmlFormatException e) {
            logger.error(e.getMessage());
            throw new RuntimeException(e);
        }
    }
    page = pageService.addNewUserPage(pageName, omdlInputAdapter.getLayoutCode());
    switch (page.getRegions().size()) {
    case 1:
        populateRegionWidgets(page, omdlInputAdapter.getAllUrls(), page.getRegions().get(0).getId());
        break;
    case 2:
        populateRegionWidgets(page, omdlInputAdapter.getAllLeftUrls(), page.getRegions().get(0).getId());
        populateRegionWidgets(page, omdlInputAdapter.getAllRightUrls(), page.getRegions().get(1).getId());
        break;
    case 3:
        populateRegionWidgets(page, omdlInputAdapter.getAllLeftUrls(), page.getRegions().get(0).getId());
        populateRegionWidgets(page, omdlInputAdapter.getAllCenterUrls(), page.getRegions().get(1).getId());
        populateRegionWidgets(page, omdlInputAdapter.getAllRightUrls(), page.getRegions().get(2).getId());
        break;
    case 4:
        populateRegionWidgets(page, omdlInputAdapter.getAllLeftUrls(), page.getRegions().get(0).getId());
        populateRegionWidgets(page, omdlInputAdapter.getAllCenterUrls(), page.getRegions().get(1).getId());
        populateRegionWidgets(page, omdlInputAdapter.getAllRightUrls(), page.getRegions().get(2).getId());
        populateRegionWidgets(page, omdlInputAdapter.getAllUnknownUrls(), page.getRegions().get(3).getId());
        break;
    default:
        // there are no layouts with more than 4 regions at present
    }
    return page;
}

From source file:org.auscope.portal.server.web.controllers.GridSubmitController.java

/**
 * Processes a file upload request returning a JSON object which indicates
 * whether the upload was successful and contains the filename and file
 * size.//from  www . j a  v  a2s  .c o m
 *
 * @param request The servlet request
 * @param response The servlet response containing the JSON data
 *
 * @return null
 */
@RequestMapping("/uploadFile.do")
public ModelAndView uploadFile(HttpServletRequest request, HttpServletResponse response) {
    logger.debug("Entering upload.do ");
    String jobInputDir = (String) request.getSession().getAttribute("localJobInputDir");

    MultipartHttpServletRequest mfReq = (MultipartHttpServletRequest) request;
    String jobType = (String) mfReq.getParameter("jobType");
    String subJobId = (String) mfReq.getParameter("subJobId");

    boolean success = true;
    String error = null;
    FileInformation fileInfo = null;
    String destinationPath = null;

    MultipartFile f = mfReq.getFile("file");

    if (f != null) {
        String fileType = checkFileType(f.getOriginalFilename());
        //check if multiJob or not
        if (jobType.equals("single") || subJobId.equals(GridSubmitController.FOR_ALL)) {
            logger.debug("uploading file for single job ");
            subJobId = GridSubmitController.FOR_ALL;
            if (fileType.equals(GridSubmitController.TABLE_DIR)) {
                destinationPath = jobInputDir + GridSubmitController.TABLE_DIR + File.separator;
            } else {
                destinationPath = jobInputDir + GridSubmitController.RINEX_DIR + File.separator;
            }
        } else {
            logger.debug("uploading file for multi job ");

            String subJobInputDir = jobInputDir + subJobId.trim() + File.separator;
            if (createLocalSubJobDir(request, subJobInputDir, fileType, subJobId.trim())) {
                if (fileType.equals(GridSubmitController.TABLE_DIR)) {
                    destinationPath = subJobInputDir + GridSubmitController.TABLE_DIR + File.separator;
                } else {
                    destinationPath = subJobInputDir + GridSubmitController.RINEX_DIR + File.separator;
                }
            } else {

                logger.error("Could not create local subJob Directories.");
                success = false;
                error = new String("Could not create local subJob Directories.");
            }
        }
        if (jobInputDir != null && success) {

            logger.info("Saving uploaded file " + f.getOriginalFilename());
            //TO-DO allow to upload on tables directory as well. GUI functions to be added.
            File destination = new File(destinationPath + f.getOriginalFilename());
            if (destination.exists()) {
                logger.debug("Will overwrite existing file.");
            }
            try {
                f.transferTo(destination);
            } catch (IOException e) {
                logger.error("Could not move file: " + e.getMessage());
                success = false;
                error = new String("Could not process file.");
            }
            fileInfo = new FileInformation(f.getOriginalFilename(), f.getSize());

        } else {
            logger.error("Input directory not found or couldn't be created in current session!");
            success = false;
            error = new String("Internal error. Please reload the page.");
        }
    } else {
        logger.error("No file parameter provided.");
        success = false;
        error = new String("Invalid request.");
    }

    // We cannot use jsonView here since this is a file upload request and
    // ExtJS uses a hidden iframe which receives the response.
    response.setContentType("text/html");
    response.setStatus(HttpServletResponse.SC_OK);
    try {
        PrintWriter pw = response.getWriter();
        pw.print("{success:'" + success + "'");
        if (error != null) {
            pw.print(",error:'" + error + "'");
        }
        if (fileInfo != null) {
            pw.print(",name:'" + fileInfo.getName() + "',size:" + fileInfo.getSize() + ",subJob:'" + subJobId
                    + "'");
        }
        pw.print("}");
        pw.flush();
    } catch (IOException e) {
        logger.error(e.getMessage());
    }
    return null;
}

From source file:org.bigbluebuttonproject.fileupload.document.impl.FileSystemSlideManager.java

/**
 * This method saves the MultipartFile given as parameter( temporary stored file format)
 * And it also return instance of file which is saved in saveDir.
 * //from  www . j  a  va  2s .  c  o  m
 * @param multipartFile temporary storage of uploaded file
 * @param room conference room ID
 * 
 * @return file pointing to the new file stored
 * 
 * @throws IOException Signals that an I/O exception has occurred.
 * 
 * @see MultipartFile API
 */
public File saveUploadedFile(MultipartFile multipartFile, Integer room) throws IOException {
    String filename = multipartFile.getOriginalFilename().replace(' ', '_');

    File saveDir = new File(baseDirectory + File.separator + room);

    if (!saveDir.exists()) {
        saveDir.mkdirs();
    }

    File file = new File(saveDir.getAbsolutePath() + File.separator + filename);
    // store multipartFile in permanent storage
    multipartFile.transferTo(file);

    return file;
}

From source file:org.cloud.mblog.utils.FileUtil.java

/**
 * Ckeditor?//from   w  w  w  .  java  2  s  .com
 *
 * @param request
 * @return
 */
public static String processUploadPostForCkeditor(HttpServletRequest request) {
    LocalDateTime now = LocalDateTime.now();
    String realFolder = LOCALROOT + getImageRelativePathByDate(now);
    String urlPath = getImageUrlPathByDate(now);

    DiskFileItemFactory diskFileItemFactory = new DiskFileItemFactory();
    diskFileItemFactory.setRepository(new File(realFolder));
    ServletFileUpload servletFileUpload = new ServletFileUpload(diskFileItemFactory);
    servletFileUpload.setFileSizeMax(MAX_FILE_SIZE);

    MultipartHttpServletRequest multipartRequest = (MultipartHttpServletRequest) request;
    Iterator<String> fileNameIter = multipartRequest.getFileNames();
    try {
        while (fileNameIter.hasNext()) {
            MultipartFile mr = multipartRequest.getFile(fileNameIter.next());
            String sourceFileName = mr.getOriginalFilename();
            if (StringUtils.isNotBlank(sourceFileName)) {
                String fileType = sourceFileName.substring(sourceFileName.lastIndexOf(".") + 1);
                if (ALLOWEXT.contains(fileType)) {
                    String filename = getDateTypeFileName(now, fileType);
                    File targetFile = new File(realFolder + File.separator + filename);
                    logger.info("Upload file path: " + targetFile.getAbsolutePath());
                    mr.transferTo(targetFile);
                    return urlPath + "/" + filename;
                } else {
                    logger.error("?: " + fileType);
                    return "";
                }
            }
        }
    } catch (IOException e) {
        logger.error("error", e);
    }
    return "";
}

From source file:org.cloud.mblog.utils.FileUtil.java

/**
 * ?//from   www.  jav  a 2  s  . c o  m
 *
 * @param file
 * @return
 */
public static ImageData uploadSingleFile(MultipartFile file, HttpServletRequest request, Boolean haveThumb) {
    if (!file.isEmpty()) {
        LocalDateTime now = LocalDateTime.now();
        String imageRelativeFolder = getImageRelativePathByDate(now);
        String thumbRelativeFolder = getThumbRelativePathByDate(now);

        String sourceFileName = file.getOriginalFilename();
        String fileType = sourceFileName.substring(sourceFileName.lastIndexOf(".") + 1);
        String fileName = getWidFileName(fileType);
        File targetFile = new File(LOCALROOT + imageRelativeFolder + File.separator + fileName);
        try {
            file.transferTo(targetFile);
            logger.info("Upload file path: " + targetFile.getAbsolutePath());
            if (haveThumb) {
                File thumbFile = new File(LOCALROOT + thumbRelativeFolder + File.separator + fileName);
                ImageUtil.zoomImage(targetFile, thumbFile, 300);
            }
            return new ImageData(fileName, file.getSize(), imageRelativeFolder, thumbRelativeFolder);
        } catch (Exception e) {
            logger.error("error", e);
        }
    }
    return null;
}

From source file:org.cloud.mblog.utils.FileUtil.java

/**
 * //  w w w  .  j  a v  a2s .c o  m
 * 
 * @param file ??
 * @param request http
 * @return
 */
public static String uploadCommonFile(MultipartFile file, HttpServletRequest request) {
    if (!file.isEmpty()) {
        String commonRelativeFolder = getTempRelativePath();
        String sourceFileName = file.getOriginalFilename();
        String fileType = sourceFileName.substring(sourceFileName.lastIndexOf(".") + 1);
        String fileName = getWidFileName(fileType);
        File targetFile = new File(LOCALROOT + commonRelativeFolder + File.separator + fileName);
        try {
            file.transferTo(targetFile);
            logger.info("Upload file path: " + targetFile.getAbsolutePath());
            return targetFile.getAbsolutePath();
        } catch (Exception e) {
            logger.error("error", e);
        }
    }
    return null;
}