Example usage for org.apache.commons.fileupload.servlet ServletFileUpload parseRequest

List of usage examples for org.apache.commons.fileupload.servlet ServletFileUpload parseRequest

Introduction

In this page you can find the example usage for org.apache.commons.fileupload.servlet ServletFileUpload parseRequest.

Prototype

public List  parseRequest(HttpServletRequest request) throws FileUploadException 

Source Link

Document

Processes an <a href="http://www.ietf.org/rfc/rfc1867.txt">RFC 1867</a> compliant <code>multipart/form-data</code> stream.

Usage

From source file:com.openkm.servlet.admin.OmrServlet.java

@SuppressWarnings("unchecked")
public void doPost(HttpServletRequest request, HttpServletResponse response)
        throws IOException, ServletException {
    log.debug("doPost({}, {})", request, response);
    request.setCharacterEncoding("UTF-8");
    String action = "";
    String userId = request.getRemoteUser();
    updateSessionManager(request);/*w  ww. ja v  a 2s.co m*/

    try {
        if (ServletFileUpload.isMultipartContent(request)) {
            String fileName = null;
            InputStream is = null;
            FileItemFactory factory = new DiskFileItemFactory();
            ServletFileUpload upload = new ServletFileUpload(factory);
            List<FileItem> items = upload.parseRequest(request);
            Set<String> properties = new HashSet<String>();
            Omr om = new Omr();

            for (Iterator<FileItem> it = items.iterator(); it.hasNext();) {
                FileItem item = it.next();

                if (item.isFormField()) {
                    if (item.getFieldName().equals("action")) {
                        action = item.getString("UTF-8");
                    } else if (item.getFieldName().equals("om_id")) {
                        om.setId(Integer.parseInt(item.getString("UTF-8")));
                    } else if (item.getFieldName().equals("om_name")) {
                        om.setName(item.getString("UTF-8"));
                    } else if (item.getFieldName().equals("om_properties")) {
                        properties.add(item.getString("UTF-8"));
                    } else if (item.getFieldName().equals("om_active")) {
                        om.setActive(true);
                    }
                } else {
                    is = item.getInputStream();
                    fileName = item.getName();
                }
            }

            om.setProperties(properties);

            if (action.equals("create") || action.equals("edit")) {
                // Store locally template file to be used later
                if (is != null && is.available() > 0) { // Case update only name
                    byte[] data = IOUtils.toByteArray(is);
                    File tmp = FileUtils.createTempFile();
                    FileOutputStream fos = new FileOutputStream(tmp);
                    IOUtils.write(data, fos);
                    IOUtils.closeQuietly(fos);

                    // Store template file
                    om.setTemplateFileName(FilenameUtils.getName(fileName));
                    om.setTemplateFileMime(MimeTypeConfig.mimeTypes.getContentType(fileName));
                    om.setTemplateFilContent(data);
                    IOUtils.closeQuietly(is);

                    // Create training files
                    Map<String, File> trainingMap = OMRHelper.trainingTemplate(tmp);
                    File ascFile = trainingMap.get(OMRHelper.ASC_FILE);
                    File configFile = trainingMap.get(OMRHelper.CONFIG_FILE);

                    // Store asc file
                    om.setAscFileName(om.getTemplateFileName() + ".asc");
                    om.setAscFileMime(MimeTypeConfig.MIME_TEXT);
                    is = new FileInputStream(ascFile);
                    om.setAscFileContent(IOUtils.toByteArray(is));
                    IOUtils.closeQuietly(is);

                    // Store config file
                    om.setConfigFileName(om.getTemplateFileName() + ".config");
                    om.setConfigFileMime(MimeTypeConfig.MIME_TEXT);
                    is = new FileInputStream(configFile);
                    om.setConfigFileContent(IOUtils.toByteArray(is));
                    IOUtils.closeQuietly(is);

                    // Delete temporal files
                    FileUtils.deleteQuietly(tmp);
                    FileUtils.deleteQuietly(ascFile);
                    FileUtils.deleteQuietly(configFile);
                }

                if (action.equals("create")) {
                    long id = OmrDAO.getInstance().create(om);

                    // Activity log
                    UserActivity.log(userId, "ADMIN_OMR_CREATE", Long.toString(id), null, om.toString());
                } else if (action.equals("edit")) {
                    OmrDAO.getInstance().updateTemplate(om);
                    om = OmrDAO.getInstance().findByPk(om.getId());

                    // Activity log
                    UserActivity.log(userId, "ADMIN_OMR_EDIT", Long.toString(om.getId()), null, om.toString());
                }

                list(userId, request, response);
            } else if (action.equals("delete")) {
                OmrDAO.getInstance().delete(om.getId());

                // Activity log
                UserActivity.log(userId, "ADMIN_OMR_DELETE", Long.toString(om.getId()), null, null);
                list(userId, request, response);
            } else if (action.equals("editAsc")) {
                Omr omr = OmrDAO.getInstance().findByPk(om.getId());
                omr.setAscFileContent(IOUtils.toByteArray(is));
                omr.setAscFileMime(MimeTypeConfig.MIME_TEXT);
                omr.setAscFileName(omr.getTemplateFileName() + ".asc");
                OmrDAO.getInstance().update(omr);
                omr = OmrDAO.getInstance().findByPk(om.getId());
                IOUtils.closeQuietly(is);

                // Activity log
                UserActivity.log(userId, "ADMIN_OMR_EDIT_ASC", Long.toString(om.getId()), null, null);
                list(userId, request, response);
            } else if (action.equals("editFields")) {
                Omr omr = OmrDAO.getInstance().findByPk(om.getId());
                omr.setFieldsFileContent(IOUtils.toByteArray(is));
                omr.setFieldsFileMime(MimeTypeConfig.MIME_TEXT);
                omr.setFieldsFileName(omr.getTemplateFileName() + ".fields");
                OmrDAO.getInstance().update(omr);
                omr = OmrDAO.getInstance().findByPk(om.getId());
                IOUtils.closeQuietly(is);

                // Activity log
                UserActivity.log(userId, "ADMIN_OMR_EDIT_FIELDS", Long.toString(om.getId()), null, null);
                list(userId, request, response);
            } else if (action.equals("check")) {
                File form = FileUtils.createTempFile();
                OutputStream formFile = new FileOutputStream(form);
                formFile.write(IOUtils.toByteArray(is));
                IOUtils.closeQuietly(formFile);
                formFile.close();
                Map<String, String> results = OMRHelper.process(form, om.getId());
                FileUtils.deleteQuietly(form);
                IOUtils.closeQuietly(is);
                UserActivity.log(userId, "ADMIN_OMR_CHECK_TEMPLATE", Long.toString(om.getId()), null, null);
                results(userId, request, response, action, results, om.getId());
            }
        }
    } catch (Exception e) {
        log.error(e.getMessage(), e);
        sendErrorRedirect(request, response, e);
    }
}

From source file:com.intranet.intr.inbox.SupControllerInbox.java

@RequestMapping(value = "enviarMailA.htm", method = RequestMethod.POST)
public String enviarMailA_post(@ModelAttribute("correo") correoNoLeidos c, BindingResult result,
        HttpServletRequest request) {//w  w w  .  j  a v  a 2  s  . c  o  m
    String mensaje = "";

    try {
        //MultipartFile multipart = c.getArchivo();
        System.out.println("olaEnviarMAILS");
        String ubicacionArchivo = "C:\\DecorakiaReportesIntranet\\archivosMail\\";
        //File file=new File(ubicacionArchivo,multipart.getOriginalFilename());
        //String ubicacionArchivo="C:\\";

        DiskFileItemFactory factory = new DiskFileItemFactory();
        factory.setSizeThreshold(1024);
        ServletFileUpload upload = new ServletFileUpload(factory);

        List<FileItem> partes = upload.parseRequest(request);

        for (FileItem item : partes) {
            System.out.println("NOMBRE FOTO: " + item.getName());
            File file = new File(ubicacionArchivo, item.getName());
            item.write(file);
            arc.add(item.getName());
            System.out.println("img" + item.getName());
        }
        //c.setImagenes(arc);

    } catch (Exception ex) {

    }
    return "redirect:enviarMail.htm";

}

From source file:com.ckfinder.connector.handlers.command.FileUploadCommand.java

/**
 *
 * @param request http request/*ww w.jav a2  s.  co m*/
 * @return true if uploaded correctly
 */
@SuppressWarnings("unchecked")
private boolean fileUpload(final HttpServletRequest request) {
    try {
        DiskFileItemFactory fileItemFactory = new DiskFileItemFactory();
        ServletFileUpload uploadHandler = new ServletFileUpload(fileItemFactory);

        List<FileItem> items = uploadHandler.parseRequest(request);
        for (FileItem item : items) {
            if (!item.isFormField()) {
                String path = configuration.getTypes().get(this.type).getPath() + this.currentFolder;
                this.fileName = getFileItemName(item);

                try {
                    if (validateUploadItem(item, path)) {
                        return saveTemporaryFile(path, item);
                    }
                } finally {
                    item.delete();
                }
            }
        }
        return false;
    } catch (InvalidContentTypeException e) {
        if (configuration.isDebugMode()) {
            this.exception = e;
        }
        this.errorCode = Constants.Errors.CKFINDER_CONNECTOR_ERROR_UPLOADED_CORRUPT;
        return false;
    } catch (IOFileUploadException e) {
        if (configuration.isDebugMode()) {
            this.exception = e;
        }
        this.errorCode = Constants.Errors.CKFINDER_CONNECTOR_ERROR_ACCESS_DENIED;
        return false;
    } catch (SizeLimitExceededException e) {
        this.errorCode = Constants.Errors.CKFINDER_CONNECTOR_ERROR_UPLOADED_TOO_BIG;
        return false;
    } catch (FileSizeLimitExceededException e) {
        this.errorCode = Constants.Errors.CKFINDER_CONNECTOR_ERROR_UPLOADED_TOO_BIG;
        return false;
    } catch (ConnectorException e) {
        this.errorCode = e.getErrorCode();
        return false;
    } catch (Exception e) {
        if (configuration.isDebugMode()) {
            this.exception = e;
        }
        this.errorCode = Constants.Errors.CKFINDER_CONNECTOR_ERROR_ACCESS_DENIED;
        return false;
    }

}

From source file:jp.co.opentone.bsol.linkbinder.view.filter.UploadFileFilter.java

@Override
public void doFilter(ServletRequest req, ServletResponse res, FilterChain chain)
        throws IOException, ServletException {

    // ????//from   w w  w. j  av a 2  s. c o  m
    if (!(req instanceof HttpServletRequest)) {
        chain.doFilter(req, res);
        return;
    }

    HttpServletRequest httpReq = (HttpServletRequest) req;
    // ??????????
    if (!ServletFileUpload.isMultipartContent(httpReq)) {
        chain.doFilter(req, res);
        return;
    }

    DiskFileItemFactory factory = new DiskFileItemFactory();
    ServletFileUpload sfu = new ServletFileUpload(factory);

    factory.setSizeThreshold(thresholdSize);
    sfu.setSizeMax(maxSize); //
    sfu.setHeaderEncoding(req.getCharacterEncoding());

    try {
        @SuppressWarnings("unchecked")
        Iterator<FileItem> ite = sfu.parseRequest(httpReq).iterator();
        List<String> keys = new ArrayList<String>();
        List<String> names = new ArrayList<String>();
        List<String> fieldNames = new ArrayList<String>();
        List<Long> fileSize = new ArrayList<Long>();

        while (ite.hasNext()) {
            String name = null;
            FileItem item = ite.next();

            // ????
            if (!(item.isFormField())) {
                name = item.getName();
                name = name.substring(name.lastIndexOf('\\') + 1);
                if (StringUtils.isEmpty(name)) {
                    continue;
                }
                File f = null;
                // CHECKSTYLE:OFF
                // ??????????.
                while ((f = new File(createTempFilePath())).exists()) {
                }
                // CHECKSTYLE:ON
                if (!validateByteLength(name, maxFilenameLength, minFilenameLength)) {
                    // ????
                    names.add(name);
                    keys.add(UploadedFile.KEY_FILENAME_OVER);
                    fieldNames.add(item.getFieldName());
                    fileSize.add(item.getSize());
                } else if (item.getSize() == 0) {
                    // 0
                    names.add(name);
                    keys.add(UploadedFile.KEY_SIZE_ZERO);
                    fieldNames.add(item.getFieldName());
                    fileSize.add(item.getSize());
                } else if (maxFileSize > 0 && item.getSize() > maxFileSize) {
                    // ?
                    // ?0??????Validation
                    names.add(name);
                    keys.add(UploadedFile.KEY_SIZE_OVER);
                    fieldNames.add(item.getFieldName());
                    fileSize.add(item.getSize());
                } else {
                    item.write(f);
                    names.add(name);
                    keys.add(f.getName());
                    fieldNames.add(item.getFieldName());
                    fileSize.add(item.getSize());
                }
                f.deleteOnExit();
            }
        }

        // 
        UploadFileFilterResult result = new UploadFileFilterResult();
        result.setResult(UploadFileFilterResult.RESULT_OK);
        result.setNames(names.toArray(new String[names.size()]));
        result.setKeys(keys.toArray(new String[keys.size()]));
        result.setFieldNames(fieldNames.toArray(new String[fieldNames.size()]));
        result.setFileSize(fileSize.toArray(new Long[fileSize.size()]));
        writeResponse(req, res, result);
    } catch (Exception e) {
        e.printStackTrace();
        // 
        UploadFileFilterResult result = new UploadFileFilterResult();
        result.setResult(UploadFileFilterResult.RESULT_NG);
        writeResponse(req, res, result);
    }
}

From source file:com.intranet.intr.clientes.CliControllerFicha.java

@RequestMapping(value = "CProyectoGaleria.htm", method = RequestMethod.POST)
public String ProyectoGaleria_post(@ModelAttribute("fotogaleria") proyecto_certificaciones_galeria galer,
        BindingResult result, HttpServletRequest request) {
    String mensaje = "";
    //C:\\glassfish-4.1.1-web\\glassfish4\\glassfish\\domains\\domain1\\applications\\Intranet\\resources\\
    String ubicacionArchivo = "C:\\glassfish-4.1.1-web\\glassfish4\\glassfish\\domains\\domain1\\applications\\Intranet\\resources\\fotosCertificaciones";
    DiskFileItemFactory factory = new DiskFileItemFactory();
    factory.setSizeThreshold(1024);/* w ww.ja v  a  2s .co  m*/

    ServletFileUpload upload = new ServletFileUpload(factory);
    String ruta = "redirect:CProyectoGaleria.htm?nifC=" + nifC + "&id=" + idP;
    try {
        List<FileItem> partes = upload.parseRequest(request);
        for (FileItem item : partes) {
            if (idP != 0) {
                galer.setIdPropuesta(idP);
                if (proyectoCertificacionesGaleriaService.existe(item.getName()) == false) {

                    File file = new File(ubicacionArchivo, item.getName());
                    item.write(file);
                    galer.setNombreimg(item.getName());
                    proyectoCertificacionesGaleriaService.insertar2(galer);
                }
            } else
                ruta = "redirect:CfichaCliente.htm";
        }
        System.out.println("Archi subido correctamente");
    } catch (Exception ex) {
        System.out.println("Error al subir archivo" + ex.getMessage());
    }

    //return "redirect:uploadFile.htm";

    return ruta;

}

From source file:Controlador.Contr_Seleccion.java

/**
 * Processes requests for both HTTP <code>GET</code> and <code>POST</code>
 * methods./*from  w  w w  . j av  a 2 s.com*/
 *
 * @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 {
    /*Se detalla el contenido que tendra el servlet*/
    response.setContentType("text/html;charset=UTF-8");
    request.setCharacterEncoding("UTF-8");
    /*Se crea una variable para la sesion*/
    HttpSession session = request.getSession(true);

    boolean b;
    try {
        /*Se declaran las variables necesarias*/
        Cls_Seleccion sel = new Cls_Seleccion();
        String Codigo = "", Mensaje = "", Nombre = "", Tipo = "", Imagen = "", url, Peti;
        String urlsalidaimg;
        urlsalidaimg = "/media/santiago/Santiago/IMGTE/";
        //urlsalidaimg = "D:\\IMGTE\\";
        String urlimgservidor = this.getServletContext().getRealPath("/Libs/Customs/images/Seleccion");
        /*FileItemFactory es una interfaz para crear FileItem*/
        FileItemFactory file_factory = new DiskFileItemFactory();

        /*ServletFileUpload esta clase convierte los input file a FileItem*/
        ServletFileUpload servlet_up = new ServletFileUpload(file_factory);
        /*sacando los FileItem del ServletFileUpload en una lista */
        servlet_up.setHeaderEncoding("UTF-8");
        List items = servlet_up.parseRequest(request);
        Iterator it = items.iterator();

        /*Se evalua cada una de las posibles peticiones y los posibles campos que envien*/
        while (it.hasNext()) {
            FileItem item = (FileItem) it.next();
            if (item.isFormField()) {
                //Plain request parameters will come here. 

                String name = item.getFieldName();
                if (name.equals("Codigo")) {
                    /*Se guarda el campo en la clase*/
                    sel.setCodigo(item.getString());
                } else if (name.equals("Nombre")) {
                    /**
                     * Se guarda el campo en la clase
                     */
                    sel.setNombre(item.getString());
                } else if (name.equals("Tipo")) {
                    /**
                     * Se guarda el campo en la clase
                     */
                    sel.setTipo(item.getString());
                } else if (name.equals("Estado")) {
                    /**
                     * Se guarda el campo en la clase
                     */
                    sel.setEstado(item.getString());
                } else if (name.equals("RegistrarSeleccion")) {
                    /*Se evalua si se mando una iamgen, cuando se va a registrar un evento*/
                    if (!sel.getImagen().equals("")) {
                        /*Si se envia una imagen obtiene la imagen para guardarla en el server luego*/
                        File img = new File(sel.getImagen());
                        /*Se ejecuta el metodo de registrar usuario que se encuentra, en la clase modelo
                         con los datos que se encuentran en la clase*/

                        b = sel.setRegistrarSeleccion(sel.getNombre(), sel.getTipo(), sel.getTypeImg());
                        if (b) {
                            /*Se guarda un mensaje mediante las sesiones
                             y se redirecciona*/
                            File imagedb = new File(urlimgservidor + "/" + sel.getCodigo() + sel.getTypeImg());
                            img.renameTo(imagedb);
                            session.setAttribute("Mensaje",
                                    "El gusto o ambiente ha sido registrado correctamente.");
                            session.setAttribute("TipoMensaje", "Dio");
                            url = "View/ConsultaSeleccion.jsp";
                            response.sendRedirect(url);
                        } else {
                            img.delete();
                            /*Se guarda un mensaje de error mediante las sesiones
                             y se redirecciona*/
                            session.setAttribute("Mensaje", sel.getMensaje());
                            session.setAttribute("TipoMensaje", "NODio");
                            url = "View/ConsultaSeleccion.jsp";
                            response.sendRedirect(url);
                        }
                    } else {
                        /*Se guarda un mensaje de error mediante las sesiones
                         y se redirecciona*/
                        session.setAttribute("Mensaje",
                                "Seleccione una imagen, para registrar el ambiente o gusto.");
                        session.setAttribute("TipoMensaje", "NODio");
                    }
                } else if (name.equals("ModificarSeleccion")) {
                    if (sel.getImagen().equals("")) {
                        /*Se ejecuta el metodo de actualizar los datos de la seleccion usuario que se encuentra, en la clase modelo
                         con los datos que se encuentran en la clase*/
                        b = sel.actualizardatosSeleccion(sel.getCodigo(), sel.getNombre(), sel.getTipo(),
                                sel.getEstado());
                        if (b) {
                            /*Se guarda un mensaje mediante las sesiones
                             y se redirecciona*/
                            session.setAttribute("Mensaje",
                                    "El gusto o ambiente ha sido registrada correctamente.");
                            session.setAttribute("TipoMensaje", "Dio");
                            url = "View/ConsultaSeleccion.jsp";
                            response.sendRedirect(url);
                        } else {
                            /*Se guarda un mensaje mediante las sesiones
                             y se redirecciona*/
                            session.setAttribute("Mensaje", sel.getMensaje());
                            session.setAttribute("TipoMensaje", "NODio");
                            url = "View/ConsultaSeleccion.jsp";
                            response.sendRedirect(url);
                        }
                    } else {
                        /*Se ejecuta el metodo de actualizar los datos de la seleccion usuario que se encuentra, en la clase modelo
                         con los datos que se encuentran en la clase*/
                        File img = new File(sel.getImagen());
                        b = sel.actualizardatosSeleccion(sel.getCodigo(), sel.getNombre(), sel.getTipo(),
                                sel.getTypeImg(), sel.getEstado());
                        if (b) {
                            File imagedb = new File(urlimgservidor + "/" + sel.getCodigo() + sel.getTypeImg());
                            img.renameTo(imagedb);
                            /*Se guarda un mensaje mediante las sesiones
                             y se redirecciona*/
                            session.setAttribute("Mensaje",
                                    "El gusto o ambiente ha sido modificado correctamente.");
                            session.setAttribute("TipoMensaje", "Dio");
                            url = "View/ConsultaSeleccion.jsp";
                            response.sendRedirect(url);
                        } else {
                            img.delete();
                            /*Se guarda un mensaje mediante las sesiones
                             y se redirecciona*/
                            session.setAttribute("Mensaje", sel.getMensaje());
                            session.setAttribute("TipoMensaje", "NODio");
                            url = "View/ConsultaSeleccion.jsp";
                            response.sendRedirect(url);
                        }
                    }
                }

            } else {
                if (!item.getName().equals("")) {
                    //uploaded files will come here.
                    FileItem file = item;
                    String fieldName = item.getFieldName();
                    String fileName = item.getName();
                    String contentType = item.getContentType();
                    boolean isInMemory = item.isInMemory();
                    long sizeInBytes = item.getSize();

                    if (sizeInBytes > 1000000) {
                        /*Se muestra un mensaje en caso de pesar mas de 3 MB*/
                        session.setAttribute("Mensaje", "El tamao lmite de la imagen es: 1 MB");
                        session.setAttribute("TipoMensaje", "NODio");
                        /*Se redirecciona*/
                        response.sendRedirect("View/ConsultaSeleccion.jsp");
                    } else {
                        if (contentType.indexOf("jpeg") > 0 || contentType.indexOf("png") > 0) {
                            if (contentType.indexOf("jpeg") > 0) {
                                contentType = ".jpg";
                            } else {
                                contentType = ".png";
                            }
                            /*Se crea la imagne*/
                            File archivo_server = new File(urlimgservidor + "/" + item.getName());
                            /*Se guardael nombre y tipo de imagen en la clase*/
                            sel.setImagen(urlimgservidor + "/" + item.getName());
                            sel.setTypeImg(contentType);
                            /*Se guarda la imagen*/
                            item.write(archivo_server);
                        } else {
                            session.setAttribute("Mensaje", "Solo se pueden registrar imagenes JPG o PNG");
                            session.setAttribute("TipoMensaje", "NODio");
                        }
                    }
                } else {
                    /*Se guarda el url de la imagen en la clase*/
                    sel.setImagen("");
                }
            }
        }

        /*Se redirecciona sino se recive ninguna peticion*/
        response.sendRedirect("View/index.jsp");
    } catch (FileUploadException ex) {
        /*Se muestra un mensaje en caso de error*/
        System.out.print(ex.getMessage().toString());
    } catch (Exception ex) {
        /*Se muestra un mensaje en caso de error*/
        Logger.getLogger(Contr_Seleccion.class.getName()).log(Level.SEVERE, null, ex);
    }
}

From source file:com.ekitap.controller.AdminUrunController.java

/**
 * Processes requests for both HTTP <code>GET</code> and <code>POST</code>
 * methods.//  w  w  w  .j  av  a2 s  . co 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");
    response.setCharacterEncoding("ISO-8859-9");
    String adminPath = request.getServletPath();
    String url = null;
    String adi = request.getParameter("adi");
    ArrayList<KategoriBean> liste = null;
    ArrayList<YazarBean> yazarListe = null;
    ArrayList<YayinEviBean> yayinEviListe = null;
    ArrayList<UrunlerBean> urunListe = null;
    ArrayList<UrunlerBean> urunGuncelListe = null;
    ArrayList<UrunResimBean> liste_resim = null;
    ArrayList liste_fiyat = null;
    ArrayList<OzellikBean> liste_ozellik;
    ArrayList<UrunOzellikBean> liste_urun_ozellik;
    ArrayList<StokBean> liste_stok;
    int sayfa = 1;
    int sayfaSayisi = (int) UrunlerDAO.sayfaSayisi(UrunlerDAO.getUrunAdet(), sayfaBasinaUrun);
    if (adminPath.equals("/urungoster")) {
        System.out.println(request.getParameter("id"));
        try {
            sayfa = Integer.parseInt(request.getParameter("id"));
            if (sayfa <= 0 || sayfa > sayfaSayisi) {
                sayfa = 1;
            }
        } catch (Exception e) {
            sayfa = 1;
        }

        int baslangicSayisi = (sayfa - 1) * sayfaBasinaUrun;
        urunListe = UrunlerDAO.getUrunListele(baslangicSayisi, sayfaBasinaUrun);
        if (urunListe != null) {
            request.setAttribute("urunliste", urunListe);
            request.setAttribute("sayfasayisi", sayfaSayisi);
        }

        url = "/WEB-INF/view/adminpanel" + adminPath + ".jsp";
        request.getRequestDispatcher(url).forward(request, response);
    } else if (adminPath.equals("/urunekle")) {
        if (adi == null || adi.trim().isEmpty()) {
            liste = KategoriDAO.getKategoriListele();
            yazarListe = YazarDAO.getYazarListele();
            yayinEviListe = YayinEviDAO.getYayinEviListele();
            if (liste != null) {
                request.setAttribute("katliste", liste);
            }
            if (yazarListe != null) {
                request.setAttribute("yazarliste", yazarListe);
            }
            if (yayinEviListe != null) {
                request.setAttribute("yayinliste", yayinEviListe);
            }

            url = "/WEB-INF/view/adminpanel" + adminPath + ".jsp";
            request.getRequestDispatcher(url).forward(request, response);
        }
        // rn ekle
        else {
            int urunid;
            try {
                //   System.out.println(request.getParameter("urunID"));
                urunid = Integer.parseInt(request.getParameter("urunID"));
                // System.out.println(urunid);
            } catch (Exception e) {
                urunid = 0;
            }

            //                int yayin = Integer.parseInt(request.getParameter("yayin"));
            //                int yazar = Integer.parseInt(request.getParameter("yazar"));
            int katidd = Integer.parseInt(request.getParameter("katidd"));
            UrunlerBean urunler = new UrunlerBean(0, request.getParameter("adi"), 0, 0, katidd,
                    request.getParameter("aciklama"));
            int urunID = UrunlerDAO.setUrunEkle(urunler, urunid);

            adminPath = "/urunguncelle";
            response.sendRedirect("/urunguncelle?urunID=" + urunID);
            //                url = "/WEB-INF/view/adminpanel" + adminPath + ".jsp";
            //            request.getRequestDispatcher(url).forward(request, response);
        }

    } else if (adminPath.equals("/urunguncelle")) {
        liste = KategoriDAO.getKategoriListele();
        yazarListe = YazarDAO.getYazarListele();
        yayinEviListe = YayinEviDAO.getYayinEviListele();
        String urunid = request.getParameter("urunID");
        liste_resim = UrunlerDAO.getResimListele(Integer.parseInt(urunid));
        liste_fiyat = UrunlerDAO.getUrunFiyat(Integer.parseInt(urunid));
        liste_ozellik = UrunlerDAO.getOzellik();
        liste_urun_ozellik = UrunlerDAO.getUrunOzellik(Integer.parseInt(urunid));
        liste_stok = UrunlerDAO.getUrunStok(Integer.parseInt(urunid));
        if (urunid == null || urunid.trim().isEmpty()) {
            return;
        }
        urunGuncelListe = UrunlerDAO.getUrunGuncelBilgi(urunid);
        if (liste != null) {
            request.setAttribute("katliste", liste);
        }
        if (yazarListe != null) {
            request.setAttribute("yazarliste", yazarListe);
        }
        if (yayinEviListe != null) {
            request.setAttribute("yayinliste", yayinEviListe);
        }
        if (urunGuncelListe != null) {
            request.setAttribute("guncelurun", urunGuncelListe);
        }
        if (liste_resim != null) {
            request.setAttribute("resimliste", liste_resim);
        }
        if (liste_fiyat != null) {
            request.setAttribute("fiyatliste", liste_fiyat);
        }
        if (liste_ozellik != null) {
            request.setAttribute("ozellikliste", liste_ozellik);
        }
        if (liste_urun_ozellik != null) {
            request.setAttribute("urunozellikliste", liste_urun_ozellik);
        }
        if (liste_stok != null) {
            request.setAttribute("stokliste", liste_stok);
        }
        url = "/WEB-INF/view/adminpanel" + adminPath + ".jsp";
        request.getRequestDispatcher(url).forward(request, response);
    } else if (adminPath.equals("/yazarekle")) {
        System.out.println(request.getParameter("yazaradi"));
        //burdan cek
        YazarBean yazar = new YazarBean(0, request.getParameter("yazarad"), request.getParameter("yazarsoyad"),
                request.getParameter("yazarmail"));
        //  System.out.println(request.getParameter("yazarad")+request.getParameter("yazarsoyad")+request.getParameter("yazarmail"));
        YazarDAO.setYazarEkle(yazar);
    } else if (adminPath.equals("/yayineviekle")) {
        YayinEviBean yayinEvi = new YayinEviBean(0, request.getParameter("yayinad"),
                request.getParameter("yayinadres"), request.getParameter("yayinmail"));
        YayinEviDAO.setYayinEviEkle(yayinEvi);

    } else if (adminPath.equals("/resimekle")) {
        int urunID = Integer.parseInt(request.getParameter("urunID"));

        System.out.println(urunID);
        boolean isMultipart = ServletFileUpload.isMultipartContent(request);
        String name = null;
        // process only if it is multipart content
        if (isMultipart) {
            // Create a factory for disk-based file items
            FileItemFactory factory = new DiskFileItemFactory();

            // Create a new file upload handler
            ServletFileUpload upload = new ServletFileUpload(factory);
            try {
                // Parse the request
                List<FileItem> multiparts = upload.parseRequest(request);

                for (FileItem item : multiparts) {
                    if (!item.isFormField()) {
                        name = new File(item.getName()).getName();
                        item.write(new File(UPLOAD_DIRECTORY + File.separator + name));
                    }
                }
            } catch (Exception e) {
                e.printStackTrace();
            }
        }
        liste_resim = UrunlerDAO.resimKaydet(urunID, name);
        request.setAttribute("resimliste", liste_resim);
        url = "/WEB-INF/view/adminpanel" + adminPath + ".jsp";
        request.getRequestDispatcher(url).forward(request, response);
    } else if (adminPath.equals("/fiyatekle")) {
        float vergiOnce = Float.parseFloat(request.getParameter("vergionce"));
        float vergiSonra = Float.parseFloat(request.getParameter("vergisonra"));
        int urunID = Integer.parseInt(request.getParameter("urunID"));

        UrunlerDAO.setUrunFiyat(urunID, vergiOnce, vergiSonra);
    } else if (adminPath.equals("/ozellikekle")) {
        String urunid = request.getParameter("urunID");
        if (urunid == null || urunid.trim().isEmpty()) {
            return;
        }
        int i = 1;
        ArrayList<UrunOzellikBean> a = new ArrayList();
        UrunOzellikBean urunOzellik;
        while (request.getParameter("field" + Integer.toString(i)) != null) {
            urunOzellik = new UrunOzellikBean(Integer.parseInt(urunid),
                    Integer.parseInt(request.getParameter("ofield" + Integer.toString(i))),
                    request.getParameter("field" + Integer.toString(i)));
            a.add(urunOzellik);

            i++;
        }
        UrunlerDAO.setUrunOzellik(a);
        //            for (UrunOzellikBean object : a) {
        //                System.out.println(object.getDeger()+object.getOzellikID());
        //            }

    } else if (adminPath.equals("/stokekle")) {
        String urunid = request.getParameter("urunID");
        if (urunid == null || urunid.trim().isEmpty()) {
            return;
        }
        try {
            int stok = Integer.parseInt(request.getParameter("stok"));

            UrunlerDAO.setUrunStok(new StokBean(0, Integer.parseInt(urunid), stok));
        } catch (Exception e) {
        }
    }
}

From source file:gov.nist.appvet.tool.AsynchronousService.java

protected void doPost(HttpServletRequest request, HttpServletResponse response)
        throws ServletException, IOException {
    FileItemFactory factory = new DiskFileItemFactory();
    ServletFileUpload upload = new ServletFileUpload(factory);
    List items = null;/*  www . ja va  2  s  . com*/
    FileItem fileItem = null;
    String appId = null;

    try {
        items = upload.parseRequest(request);
    } catch (FileUploadException e) {
        e.printStackTrace();
    }

    // Get form fields
    Iterator iter = items.iterator();
    FileItem item = null;
    while (iter.hasNext()) {
        item = (FileItem) iter.next();
        if (item.isFormField()) {
            String incomingParameter = item.getFieldName();
            String incomingValue = item.getString();
            if (incomingParameter.equals("appid")) {
                appId = incomingValue;
            }
            log.debug("Received: " + incomingParameter + " = " + incomingValue);
        } else {
            // item should now hold the received file
            if (item != null) {
                fileItem = item;
            }
        }
    }

    // If app ID and file were received, send back HTTP 202 now
    if (appId != null && fileItem != null) {
        sendHttp202(response, "Received app " + appId + " for processing.");
    } else {
        sendHttp400(response, "Did not receive proper request.");
        return;
    }

    String appFilePath = null;
    String reportPath = null;
    String fileName = null;

    if (item != null) {
        fileName = getFileName(fileItem.getName());
        if (!fileName.endsWith(".apk")) {
            sendHttp400(response, "Invalid app file: " + fileItem.getName());
            return;
        }

        appFilePath = Properties.TEMP_DIR + "/" + appId + fileName;
        reportPath = Properties.TEMP_DIR + "/" + appId + "_report.txt";
        log.debug("appFilePath: " + appFilePath);

        if (!saveFileUpload(fileItem, appFilePath)) {
            sendHttp500(response, "Could not save uploaded file");
            return;
        }
    } else {
        log.error("File item was null.");
        return;
    }

    // Test app
    AndroidVulnerabilityScanner vulnerabilityScanner = new AndroidVulnerabilityScanner(appFilePath);

    boolean masterKeyFound = vulnerabilityScanner.hasMasterKey();

    boolean extraFieldFound = vulnerabilityScanner.hasExtraField();
    vulnerabilityScanner.close();

    // Generate report
    String htmlReport = null;
    ToolStatus reportStatus = null;
    if (masterKeyFound) {
        reportStatus = ToolStatus.FAIL;
        htmlReport = generateReport(fileName, reportStatus, "Master Key vulnerability detected.");
    }
    if (extraFieldFound) {
        reportStatus = ToolStatus.FAIL;
        htmlReport = generateReport(fileName, reportStatus, "Extra Field vulnerability detected.");
    }

    if (!masterKeyFound && !extraFieldFound) {
        reportStatus = ToolStatus.PASS;
        htmlReport = generateReport(fileName, reportStatus,
                "No Master Key or Extra Field vulnerablity detected.");
    }

    // Write report file
    PrintWriter out = new PrintWriter(reportPath);
    out.write(htmlReport);
    out.close();

    // Now send report
    sendReport(appId, reportStatus.name(), reportPath);

    boolean deleted = deleteFile(appFilePath);
    if (deleted) {
        log.debug("Deleted app " + appFilePath);
    } else {
        log.error("Could not delete app file " + appFilePath);
    }

    deleted = deleteFile(reportPath);
    if (deleted) {
        log.debug("Deleted report " + reportPath);
    } else {
        log.error("Could not delete report file " + reportPath);
    }

    // Clean up
    System.gc();
}

From source file:com.socialization.util.ConnectorServlet.java

/**
 * Manage the <code>POST</code> requests (<code>FileUpload</code>).<br />
 * /*from  www.  j ava 2 s .  co  m*/
 * The servlet accepts commands sent in the following format:<br />
 * <code>connector?Command=&lt;FileUpload&gt;&Type=&lt;ResourceType&gt;&CurrentFolder=&lt;FolderPath&gt;</code>
 * with the file in the <code>POST</code> body.<br />
 * <br>
 * It stores an uploaded file (renames a file if another exists with the same name) and then
 * returns the JavaScript callback.
 */
@SuppressWarnings("unchecked")
public void doPost(HttpServletRequest request, HttpServletResponse response)
        throws ServletException, IOException {
    logger.debug("Entering Connector#doPost");

    response.setCharacterEncoding("UTF-8");
    response.setContentType("text/html; charset=UTF-8");
    response.setHeader("Cache-Control", "no-cache");
    PrintWriter out = response.getWriter();

    String commandStr = request.getParameter("Command");
    String typeStr = request.getParameter("Type");
    String currentFolderStr = request.getParameter("CurrentFolder");

    logger.debug("Parameter Command: {}", commandStr);
    logger.debug("Parameter Type: {}", typeStr);
    logger.debug("Parameter CurrentFolder: {}", currentFolderStr);

    UploadResponse ur;

    // if this is a QuickUpload request, 'commandStr' and 'currentFolderStr'
    // are empty
    if (Utils.isEmpty(commandStr) && Utils.isEmpty(currentFolderStr)) {
        commandStr = "QuickUpload";
        currentFolderStr = "/";
    }

    if (!RequestCycleHandler.isEnabledForFileUpload(request))
        ur = new UploadResponse(UploadResponse.SC_SECURITY_ERROR, null, null,
                Messages.NOT_AUTHORIZED_FOR_UPLOAD);
    else if (!CommandHandler.isValidForPost(commandStr))
        ur = new UploadResponse(UploadResponse.SC_ERROR, null, null, Messages.INVALID_COMMAND);
    else if (typeStr != null && !ResourceTypeHandler.isValid(typeStr))
        ur = new UploadResponse(UploadResponse.SC_ERROR, null, null, Messages.INVALID_TYPE);
    else if (!UtilsFile.isValidPath(currentFolderStr))
        ur = UploadResponse.UR_INVALID_CURRENT_FOLDER;
    else {
        ResourceTypeHandler resourceType = ResourceTypeHandler.getDefaultResourceType(typeStr);

        String typeDirPath = null;
        if ("File".equals(typeStr)) {
            //  ${application.path}/WEB-INF/userfiles/
            typeDirPath = getServletContext().getRealPath("WEB-INF/userfiles/");
        } else {
            String typePath = UtilsFile.constructServerSidePath(request, resourceType);
            typeDirPath = getServletContext().getRealPath(typePath);
        }

        File typeDir = new File(typeDirPath);
        UtilsFile.checkDirAndCreate(typeDir);

        File currentDir = new File(typeDir, currentFolderStr);

        if (!currentDir.exists())
            ur = UploadResponse.UR_INVALID_CURRENT_FOLDER;
        else {

            String newFilename = null;
            FileItemFactory factory = new DiskFileItemFactory();
            ServletFileUpload upload = new ServletFileUpload(factory);

            upload.setHeaderEncoding("UTF-8");

            try {

                List<FileItem> items = upload.parseRequest(request);

                // We upload only one file at the same time
                FileItem uplFile = items.get(0);
                String rawName = UtilsFile.sanitizeFileName(uplFile.getName());
                String filename = FilenameUtils.getName(rawName);
                String baseName = FilenameUtils.removeExtension(filename);
                String extension = FilenameUtils.getExtension(filename);

                // ????
                if (!ExtensionsHandler.isAllowed(resourceType, extension)) {
                    ur = new UploadResponse(UploadResponse.SC_INVALID_EXTENSION);
                }

                // ??
                else if (uplFile.getSize() > 1024 * 1024 * 3) {
                    // ?
                    ur = new UploadResponse(204);
                }

                // ?,  ?
                else {

                    // construct an unique file name

                    //  UUID ???, ?
                    filename = UUID.randomUUID().toString() + "." + extension;
                    filename = makeFileName(currentDir.getPath(), filename);
                    File pathToSave = new File(currentDir, filename);

                    int counter = 1;
                    while (pathToSave.exists()) {
                        newFilename = baseName.concat("(").concat(String.valueOf(counter)).concat(")")
                                .concat(".").concat(extension);
                        pathToSave = new File(currentDir, newFilename);
                        counter++;
                    }

                    if (Utils.isEmpty(newFilename))
                        ur = new UploadResponse(UploadResponse.SC_OK,
                                UtilsResponse.constructResponseUrl(request, resourceType, currentFolderStr,
                                        true, ConnectorHandler.isFullUrl()).concat(filename));
                    else
                        ur = new UploadResponse(UploadResponse.SC_RENAMED,
                                UtilsResponse.constructResponseUrl(request, resourceType, currentFolderStr,
                                        true, ConnectorHandler.isFullUrl()).concat(newFilename),
                                newFilename);

                    // secure image check
                    if (resourceType.equals(ResourceTypeHandler.IMAGE)
                            && ConnectorHandler.isSecureImageUploads()) {
                        if (UtilsFile.isImage(uplFile.getInputStream()))
                            uplFile.write(pathToSave);
                        else {
                            uplFile.delete();
                            ur = new UploadResponse(UploadResponse.SC_INVALID_EXTENSION);
                        }
                    } else
                        uplFile.write(pathToSave);

                }
            } catch (Exception e) {
                ur = new UploadResponse(UploadResponse.SC_SECURITY_ERROR);
            }
        }

    }

    out.print(ur);
    out.flush();
    out.close();

    logger.debug("Exiting Connector#doPost");
}

From source file:common.ckplugins.handlers.command.FileUploadCommand.java

/**
 *
 * @param request http request/*from   ww w . j  av a  2  s.c  om*/
 * @return true if uploaded correctly
 */
@SuppressWarnings("unchecked")
private boolean fileUpload(final HttpServletRequest request) {
    try {
        DiskFileItemFactory fileItemFactory = new DiskFileItemFactory();
        ServletFileUpload uploadHandler = new ServletFileUpload(fileItemFactory);

        List<FileItem> items = uploadHandler.parseRequest(request);
        for (FileItem item : items) {
            if (!item.isFormField()) {
                String path = configuration.getTypes().get(this.type).getPath() + this.currentFolder;
                this.fileName = getFileItemName(item);

                try {
                    if (validateUploadItem(item, path)) {
                        return saveTemporaryFile(path, item);
                    }
                } finally {
                    item.delete();
                }
            }
        }
        return false;
    } catch (InvalidContentTypeException e) {
        if (configuration.isDebugMode()) {
            this.exception = e;
        }
        this.errorCode = Constants.Errors.CKFINDER_CONNECTOR_ERROR_UPLOADED_CORRUPT;
        return false;
    } catch (IOFileUploadException e) {
        if (configuration.isDebugMode()) {
            this.exception = e;
        }
        this.errorCode = Constants.Errors.CKFINDER_CONNECTOR_ERROR_ACCESS_DENIED;
        return false;
    } catch (SizeLimitExceededException e) {
        this.errorCode = Constants.Errors.CKFINDER_CONNECTOR_ERROR_UPLOADED_TOO_BIG;
        return false;
    } catch (FileSizeLimitExceededException e) {
        this.errorCode = Constants.Errors.CKFINDER_CONNECTOR_ERROR_UPLOADED_TOO_BIG;
        return false;
    } catch (ConnectorException e) {
        this.errorCode = e.getErrorCode();
        if (this.errorCode == Constants.Errors.CKFINDER_CONNECTOR_ERROR_CUSTOM_ERROR)
            this.customErrorMsg = e.getErrorMsg();
        return false;
    } catch (Exception e) {
        if (configuration.isDebugMode()) {
            this.exception = e;
        }
        this.errorCode = Constants.Errors.CKFINDER_CONNECTOR_ERROR_ACCESS_DENIED;
        return false;
    }

}