Example usage for javax.mail.internet MimePartDataSource MimePartDataSource

List of usage examples for javax.mail.internet MimePartDataSource MimePartDataSource

Introduction

In this page you can find the example usage for javax.mail.internet MimePartDataSource MimePartDataSource.

Prototype

public MimePartDataSource(MimePart part) 

Source Link

Document

Constructor, that constructs a DataSource from a MimePart.

Usage

From source file:es.pode.modificador.presentacion.importar.ImportarModificacionControllerImpl.java

/**
 * @see es.pode.modificador.presentacion.importar.ImportarModificacionController#importar(org.apache.struts.action.ActionMapping, es.pode.modificador.presentacion.importar.ImportarForm, javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse)
 *//*from  w  ww.  jav  a2 s  . c  o m*/
public final void importar(ActionMapping mapping, es.pode.modificador.presentacion.importar.ImportarForm form,
        HttpServletRequest request, HttpServletResponse response) throws Exception {
    FormFile xml = form.getFichero();
    if (xml == null || xml.getFileSize() == 0) {
        throw new ValidatorException("{importarModificacion.error}");
    }
    //       convierto el FormFile en un DataHandler
    InternetHeaders ih = new InternetHeaders();
    MimeBodyPart mbp = null;
    DataSource source = null;
    DataHandler dFichero = null;
    mbp = new MimeBodyPart(ih, xml.getFileData());
    source = new MimePartDataSource(mbp);
    dFichero = new DataHandler(source);

    // Llamo al servicio para parsear el fichero XML
    ConfiguracionTarea configuracion;
    try {
        configuracion = this.getSrvHerramientaModificacion().importarModificacion(dFichero);
    } catch (Exception e) {
        throw new ValidatorException("{importarModificacion.error}");
    }

    // Creo el objeto de sesion para editar la tarea
    this.getConfigurarModificacionSession(request).setConfiguracion(configuracion);
}

From source file:es.pode.empaquetador.presentacion.archivos.creararchivo.CrearArchivoControllerImpl.java

private void operacionesFicheros(FormFile ficheroN, String tipo, GestorArchivosSession sesArch,
        EmpaquetadorSession sesEmpaq, ResourceBundle i18n) throws Exception {
    InternetHeaders ih = new InternetHeaders();
    MimeBodyPart mbp = null;/*from   ww  w.  j  av a 2s  .c  o m*/
    DataSource source = null;
    DataHandler dFichero = null;

    if (ficheroN.getFileName() != null && !ficheroN.getFileName().equals("")) {
        FicheroVO fichero = new FicheroVO();
        fichero.setNombre(ficheroN.getFileName());
        mbp = new MimeBodyPart(ih, ficheroN.getFileData());
        source = new MimePartDataSource(mbp);
        dFichero = new DataHandler(source);
        fichero.setDatos(dFichero);
        fichero.setTipoMime(ficheroN.getContentType());

        //obtengo el identificador del ode
        String identificador = sesEmpaq.getIdLocalizador();

        List<ArchivoVO> path = sesArch.getPath();
        ArchivoVO ultimoPath = path.get(path.size() - 1);
        //obtengo la carpetaDestino
        String carpetaPadre = null;
        if (path.size() > 1 && ultimoPath.getCarpetaPadre() == null) {
            carpetaPadre = ultimoPath.getNombre();
        } else if (path.size() > 1 && ultimoPath.getCarpetaPadre() != null) {
            carpetaPadre = ultimoPath.getCarpetaPadre().concat("/").concat(ultimoPath.getNombre());
        }

        if (tipo.equals("FICHERO")) {
            try {
                this.getSrvGestorArchivosService().crearArchivo(identificador, carpetaPadre, fichero);
            } catch (Exception e) {
                logger.error(e.getMessage(), e);
                throw new ValidatorException("{presentacion.archivos.creararchivo.error.sobreescritura}");
            }

        } else if (tipo.equals("ZIP"))

        {
            try {
                this.getSrvGestorArchivosService().descomprimirArchivo(identificador, carpetaPadre, fichero);
            } catch (Exception noEsArchivo) {
                Logger.getLogger(this.getClass())
                        .error("Lanzando excepcion de validacion. Fichero no es un Archivo");
                throw new ValidatorException(ficheroN.getFileName() + DOSPUNTOS
                        + i18n.getString("portalempaquetado.archivos.error.importar.noeszip"));
            }

        }
    } else {
        Logger.getLogger(this.getClass()).error("Lanzando excepcion de validacion.");
        throw new ValidatorException("{portal_empaquetado.exception.crearArchivo}");
    }

}

From source file:es.pode.gestorFlujo.presentacion.objetosPersonales.importar.ImportarControllerImpl.java

private ResultadoOperacionVO importarUnODE(FormFile fichero, String nombreFichero, String idioma)
        throws Exception {
    if (logger.isDebugEnabled())
        logger.debug("Importando un ode");
    ResultadoOperacionVO resultado = new ResultadoOperacionVO();
    SrvPublicacionService publi = this.getSrvPublicacionService();

    // preparamos el formfile que hemos recibido y lo metemos con nuestra astuta tcnica  de formfiles

    InternetHeaders ih = new InternetHeaders();
    MimeBodyPart mbp = new MimeBodyPart(ih, fichero.getFileData());

    DataSource dsource = new MimePartDataSource(mbp);
    DataHandler dFichero = new DataHandler(dsource);

    try {//from w  w  w .  j ava 2  s.  co m
        resultado = publi.crearPifConCuota(dFichero, LdapUserDetailsUtils.getUsuario(), fichero.getFileName(),
                nombreFichero, idioma);
        logger.info("resultado de la importacion de un ode:" + resultado);
    } catch (Exception ex) {
        // Si ha habido alguna excepcin no controlada lo indicamos
        resultado.setIdResultado("11.1");
        resultado.setDescripcion("Excepcin al importar");
        logger.error("Excepcion al importar el ode: " + fichero.getFileName(), ex);
    }

    return resultado;
}

From source file:es.pode.empaquetador.presentacion.avanzado.recursos.importar.ImportarRecursosControllerImpl.java

public final void importarZIP(ActionMapping mapping,
        es.pode.empaquetador.presentacion.avanzado.recursos.importar.ImportarZIPForm form,
        HttpServletRequest request, HttpServletResponse response) throws Exception {

    java.util.Locale locale = (Locale) request.getSession().getAttribute(ConstantesAgrega.DEFAULT_LOCALE);
    ResourceBundle i18n = ResourceBundle.getBundle("application-resources", locale);
    String opcion = form.getAction();

    if (opcion.equals(i18n.getString("portalempaquetado.avanzado.recursos.aceptar"))) {

        FormFile fichero = form.getFichero();
        if (fichero.getFileName() == null || fichero.getFileName().equals("") || fichero.getFileSize() == 0) {
            throw new ValidatorException("{portalempaquetado.avanzado.recursos.importar.exception}");
            //tratar exception
        }/* www .j a  v  a  2 s.c o m*/
        try {

            InternetHeaders ih = new InternetHeaders();
            MimeBodyPart mbp = null;
            DataSource source = null;
            DataHandler dFichero = null;

            mbp = new MimeBodyPart(ih, fichero.getFileData());
            source = new MimePartDataSource(mbp);
            dFichero = new DataHandler(source);

            EmpaquetadorSession sesEmpaq = this.getEmpaquetadorSession(request);

            List listSubmPath = sesEmpaq.getSubmanifestPath();

            //cojo el primer elemento que dedberia ser el padre
            String identificador = sesEmpaq.getIdLocalizador();
            if (listSubmPath.size() == 1) {
                this.getSrvGestorManifestService().importarRecursos(identificador, dFichero, null);
            } else if (listSubmPath.size() > 1) {
                OdeVO odeultim = (OdeVO) listSubmPath.get(listSubmPath.size() - 1);
                String submanifestId = odeultim.getIdentifier();
                this.getSrvGestorManifestService().importarRecursos(identificador, dFichero, submanifestId);
            }
        } catch (Exception e) {
            throw new ValidatorException("{portalempaquetado.avanzado.recursos.importar.exception.validar}");

        }
    }

}

From source file:es.pode.empaquetador.presentacion.agregar.local.AgregarLocalControllerImpl.java

/**
 * @see es.pode.empaquetador.presentacion.agregar.local.AgregarLocalController#agregar(org.apache.struts.action.ActionMapping, es.pode.empaquetador.presentacion.agregar.local.AgregarForm, javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse)
 *///from   w  w w  .  j a  va2 s  . c  o m
public final void agregar(ActionMapping mapping,
        es.pode.empaquetador.presentacion.agregar.local.AgregarForm form, HttpServletRequest request,
        HttpServletResponse response) throws Exception {
    FormFile archivos = form.getArchivo();

    //convierto el FormFile en un DataHandler
    InternetHeaders ih = new InternetHeaders();
    MimeBodyPart mbp = null;
    DataSource source = null;
    DataHandler dFichero = null;
    mbp = new MimeBodyPart(ih, archivos.getFileData());
    source = new MimePartDataSource(mbp);
    dFichero = new DataHandler(source);
    FicheroVO fichero = new FicheroVO();
    fichero.setDatos(dFichero);
    fichero.setNombre(archivos.getFileName());
    fichero.setTipoMime(archivos.getContentType());

    ///////////////////////////

    EmpaquetadorSession sesEmpaq = this.getEmpaquetadorSession(request);
    List subman = sesEmpaq.getSubmanifestPath();

    String identificador = sesEmpaq.getIdLocalizador();

    List idCollection = sesEmpaq.getIdCollection();
    String identificadorUltimo = "";

    if (idCollection != null && idCollection.size() > 0) {
        Object ultimoIdCollection = idCollection.get(idCollection.size() - 1);

        if (idCollection.size() == 1) {

            OrganizacionVO organizacion = (OrganizacionVO) ultimoIdCollection;
            identificadorUltimo = organizacion.getIdentifier();
        } else if (idCollection.size() > 1) {
            GrupoVO grupo = (GrupoVO) ultimoIdCollection;
            identificadorUltimo = grupo.getIdentifier();
        }
    }
    String tipoEmpaquetador = sesEmpaq.getTipoEmpaquetador();
    try {
        if (tipoEmpaquetador.equals("Avanzado")) {
            if (subman.size() == 1) {
                this.getSrvGestorManifestService().agregarManifiestoZIP(identificador, dFichero, null);
            } else if (subman.size() > 1) {
                OdeVO ultimo = (OdeVO) subman.get(subman.size() - 1);
                String submanifestId = ultimo.getIdentifier();
                this.getSrvGestorManifestService().agregarManifiestoZIP(identificador, dFichero, submanifestId);
            }
        }

        else if (tipoEmpaquetador.equals("Basico")) {
            if (logger.isDebugEnabled())
                logger.debug("Estamos en el bsico");
            this.getSrvEmpaquetadorBasicoService().agregarLocal(identificador, fichero, identificadorUltimo);
        }
    } catch (Exception ex) {
        if (logger.isDebugEnabled())
            logger.error("Ocurrio un error al validar ODE " + identificador, ex);
        throw new ValidatorException("{portalempaquetado.avanzado.submanifiesto.error.agregarLocal}");
    }
}

From source file:es.pode.administracion.presentacion.estructuraseducativas.tesauros.alta.AltaTesaurosControllerImpl.java

/**
 * @see es.pode.administracion.presentacion.estructuraseducativas.tesauros.alta.AltaTesaurosController#nuevoTesauro(org.apache.struts.action.ActionMapping, es.pode.administracion.presentacion.estructuraseducativas.tesauros.alta.NuevoTesauroForm, javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse)
 *///  ww w  .ja v a  2  s .c om
public final void nuevoTesauro(ActionMapping mapping, NuevoTesauroForm form, HttpServletRequest request,
        HttpServletResponse response) throws Exception {
    VdexVO[] resultado = null;
    List ficheros = this.getEstructurasSession(request).getVdexSubir();

    List arrayParam = new ArrayList();
    InternetHeaders ih = new InternetHeaders();
    MimeBodyPart mbp = null;
    DataSource source = null;
    DataHandler dh = null;
    for (int i = 0; i < ficheros.size(); i++) {
        try {
            FormFile ff = (FormFile) ficheros.get(i);
            mbp = new MimeBodyPart(ih, ff.getFileData());
            source = new MimePartDataSource(mbp);
            dh = new DataHandler(source);
            arrayParam.add(new ParamVdexVO(dh, ff.getFileName()));

        } catch (Exception e) {
            if (logger.isDebugEnabled()) {
                logger.debug("error al cargar la lista de paramVDEXVO");
            }
        }
    }
    try {
        SrvEstructurasEducativasService servicio = this.getSrvEstructurasEducativasService();
        resultado = servicio.subirTesauros((ParamVdexVO[]) arrayParam.toArray(new ParamVdexVO[0]));
        for (int i = 0; i < resultado.length; i++) {
            String[] nombreVdex = new String[1];
            nombreVdex[0] = ((FormFile) ficheros.get(i)).getFileName();
            if (resultado[i].getCodigoError() != null && !resultado[i].getCodigoError().equals("")) {
                logger.debug("hubo un error al crear la nueva taxonomia, se muestra el error en la jsp");
                this.saveErrorMessage(request, "estructuras.error.alta." + resultado[i].getCodigoError(),
                        nombreVdex);
            } else {
                this.saveSuccessMessage(request, "estructuras.tesauros.alta.exito", nombreVdex);

            }
        }

    } catch (Exception e) {
        if (logger.isDebugEnabled()) {
            logger.debug("error al dar de alta lista de tesauros");
        }
        this.saveErrorMessage(request, "estructuras.error.alta.0");
    }

}

From source file:es.pode.administracion.presentacion.estructuraseducativas.taxonomias.alta.AltaTaxonomiasControllerImpl.java

public final void nuevaTaxonomia(ActionMapping mapping, NuevaTaxonomiaForm form, HttpServletRequest request,
        HttpServletResponse response) throws Exception {
    VdexVO[] resultado = null;/*from w w w . j av a2  s . c o  m*/

    List ficheros = new ArrayList();
    if (form.getFichero1() != null && form.getFichero1().getFileName() != null
            && !form.getFichero1().getFileName().equals("")) //&& form.getFichero1().getFileSize()>0 
        ficheros.add(form.getFichero1());
    if (form.getFichero2() != null && form.getFichero2().getFileName() != null
            && !form.getFichero2().getFileName().equals(""))
        ficheros.add(form.getFichero2());
    if (form.getFichero3() != null && form.getFichero3().getFileName() != null
            && !form.getFichero3().getFileName().equals(""))
        ficheros.add(form.getFichero3());
    if (form.getFichero4() != null && form.getFichero4().getFileName() != null
            && !form.getFichero4().getFileName().equals(""))
        ficheros.add(form.getFichero4());
    if (form.getFichero5() != null && form.getFichero5().getFileName() != null
            && !form.getFichero5().getFileName().equals(""))
        ficheros.add(form.getFichero5());

    if (ficheros.size() == 0) {
        throw new ValidatorException("{estructuras.taxonomias.error.fichero.vacio}");
    }

    List arrayParam = new ArrayList();
    InternetHeaders ih = new InternetHeaders();
    MimeBodyPart mbp = null;
    DataSource source = null;
    DataHandler dh = null;
    for (int i = 0; i < ficheros.size(); i++) {
        try {
            FormFile ff = (FormFile) ficheros.get(i);
            mbp = new MimeBodyPart(ih, ff.getFileData());
            source = new MimePartDataSource(mbp);
            dh = new DataHandler(source);
            arrayParam.add(new ParamVdexVO(dh, ff.getFileName()));

        } catch (Exception e) {
            if (logger.isDebugEnabled()) {
                logger.debug("error al cargar la lista de paramVDEXVO");
            }
        }
    }
    try {
        SrvEstructurasEducativasService servicio = this.getSrvEstructurasEducativasService();
        resultado = servicio.subirBackups((ParamVdexVO[]) arrayParam.toArray(new ParamVdexVO[0]));
        for (int i = 0; i < resultado.length; i++) {
            String[] nombreVdex = new String[1];
            nombreVdex[0] = ((FormFile) ficheros.get(i)).getFileName();
            if (resultado[i].getCodigoError() != null && !resultado[i].getCodigoError().equals("")) {
                logger.debug("hubo un error al crear la nueva taxonomia, se muestra el error en la jsp");
                this.saveErrorMessage(request, "estructuras.error.alta." + resultado[i].getCodigoError(),
                        nombreVdex);
            } else {
                this.saveSuccessMessage(request, "estructuras.taxonomias.alta.exito", nombreVdex);
            }
        }

    } catch (Exception e) {
        if (logger.isDebugEnabled()) {
            logger.debug("error al dar de alta lista de taxonomias");
        }
        this.saveErrorMessage(request, "estructuras.error.alta.0");
    }

}

From source file:es.pode.administracion.presentacion.estructuraseducativas.arboles.alta.AltaArbolesControllerImpl.java

public final void nuevoArbol(ActionMapping mapping, NuevoArbolForm form, HttpServletRequest request,
        HttpServletResponse response) throws Exception {
    VdexVO[] resultado = null;//from ww w  . j a  v  a 2s . co m

    List ficheros = new ArrayList();
    if (form.getFichero1() != null && form.getFichero1().getFileName() != null
            && !form.getFichero1().getFileName().equals(""))//&& form.getFichero1().getFileSize()>0 
        ficheros.add(form.getFichero1());
    if (form.getFichero2() != null && form.getFichero2().getFileName() != null
            && !form.getFichero2().getFileName().equals(""))
        ficheros.add(form.getFichero2());
    if (form.getFichero3() != null && form.getFichero3().getFileName() != null
            && !form.getFichero3().getFileName().equals(""))
        ficheros.add(form.getFichero3());
    if (form.getFichero4() != null && form.getFichero4().getFileName() != null
            && !form.getFichero4().getFileName().equals(""))
        ficheros.add(form.getFichero4());
    if (form.getFichero5() != null && form.getFichero5().getFileName() != null
            && !form.getFichero5().getFileName().equals(""))
        ficheros.add(form.getFichero5());

    if (ficheros.size() == 0) {
        throw new ValidatorException("{estructuras.arboles.error.fichero.vacio}");
    }

    List arrayParam = new ArrayList();
    InternetHeaders ih = new InternetHeaders();
    MimeBodyPart mbp = null;
    DataSource source = null;
    DataHandler dh = null;
    for (int i = 0; i < ficheros.size(); i++) {
        try {
            FormFile ff = (FormFile) ficheros.get(i);
            mbp = new MimeBodyPart(ih, ff.getFileData());
            source = new MimePartDataSource(mbp);
            dh = new DataHandler(source);
            arrayParam.add(new ParamVdexVO(dh, ff.getFileName()));

        } catch (Exception e) {
            if (logger.isDebugEnabled()) {
                logger.debug("error al cargar la lista de paramVDEXVO");
            }
        }
    }
    try {
        SrvEstructurasEducativasService servicio = this.getSrvEstructurasEducativasService();
        resultado = servicio.subirArbolesCurriculares((ParamVdexVO[]) arrayParam.toArray(new ParamVdexVO[0]));

        for (int i = 0; i < resultado.length; i++) {
            String[] nombreVdex = new String[1];
            nombreVdex[0] = ((FormFile) ficheros.get(i)).getFileName();
            if (resultado[i].getCodigoError() != null && !resultado[i].getCodigoError().equals("")) {
                logger.debug("hubo un error al crear el nuevo arbol, se muestra el error en la jsp");
                this.saveErrorMessage(request, "estructuras.error.alta." + resultado[i].getCodigoError(),
                        nombreVdex);
            } else {
                this.saveSuccessMessage(request, "estructuras.arboles.alta.exito", nombreVdex);
            }
        }

    } catch (Exception e) {
        if (logger.isDebugEnabled()) {
            logger.debug("error al dar de alta lista de arboles");
        }
        this.saveErrorMessage(request, "estructuras.error.alta.0");
    }

}

From source file:es.pode.catalogadorWeb.presentacion.importar.ImportarControllerImpl.java

public String submit(ActionMapping mapping, SubmitForm form, HttpServletRequest request,
        HttpServletResponse response) throws Exception {

    String resultado = "";
    String action = form.getAccion();

    //String idiomaLocale=((Locale)request.getSession().getAttribute(ConstantesAgrega.DEFAULT_LOCALE)).getLanguage();
    ResourceBundle i18n = I18n.getInstance().getResource("application-resources",
            (Locale) request.getSession().getAttribute(ConstantesAgrega.DEFAULT_LOCALE));

    if (action != null) {
        if (action.equals(i18n.getString("catalogadorAvanzado.importar.aceptar"))) {
            resultado = "Aceptar";
            if (form.getFichero() == null || form.getFichero().getFileName().equals("")
                    || form.getFichero().getFileSize() == 0)
                throw new ValidatorException("{catalogadorAvanzado.importar.error.ficherovacio}");

            //crear el datahandler
            InternetHeaders ih = new InternetHeaders();
            MimeBodyPart mbp = null;// w  w w . j av a  2 s.c  o m
            DataSource source = null;
            DataHandler dh = null;
            try {
                FormFile ff = (FormFile) form.getFichero();
                mbp = new MimeBodyPart(ih, ff.getFileData());
                source = new MimePartDataSource(mbp);
                dh = new DataHandler(source);
            } catch (Exception e) {
                if (logger.isDebugEnabled()) {
                    logger.debug("error al crear el datahandler");
                }
                throw new ValidatorException("{catalogadorAvanzado.importar.error}");
            }

            //validar el fichero
            Boolean valido = new Boolean(false);
            try {
                valido = this.getSrvValidadorService().obtenerValidacionLomes(dh);
            } catch (Exception e) {
                if (logger.isDebugEnabled()) {
                    logger.debug("error al llamar al servicio de validacin");
                }
                throw new ValidatorException("{catalogadorAvanzado.importar.error.novalido}");
            }

            if (!valido.booleanValue())
                throw new ValidatorException("{catalogadorAvanzado.importar.error.novalido}");

            //agregar el datahandler a sesion
            this.getCatalogadorAvSession(request).setLomesImportado(dh);

        } else if (action.equals(i18n.getString("catalogadorAvanzado.importar.cancelar")))
            resultado = "Cancelar";
    }
    return resultado;
}

From source file:MSMessage.java

protected void parse(InputStream is) throws MessagingException {
    // Create a buffered input stream for efficiency
    if (!(is instanceof ByteArrayInputStream) && !(is instanceof BufferedInputStream))
        is = new BufferedInputStream(is);

    // Load headerstore
    headers.load(is);/*from  w  ww.j  a va2s  . c  o m*/

    /*
     * Load the content into a byte[].
     * This byte[] is shared among the bodyparts.
     */
    try {
        ByteArrayOutputStream bos = new ByteArrayOutputStream();
        int b;
        // XXX - room for performance improvement
        while ((b = is.read()) != -1)
            bos.write(b);
        content = bos.toByteArray();
    } catch (IOException ioex) {
        throw new MessagingException("IOException", ioex);
    }

    /*
     * Check whether this is multipart.
     */
    boolean isMulti = false;
    // check for presence of X-MS-Attachment header
    String[] att = getHeader("X-MS-Attachment");
    if (att != null && att.length > 0)
        isMulti = true;
    else {
        /*
         * Fall back to scanning the content.
         * We scan the content until we find a sequence that looks
         * like the start of a uuencoded block, i.e., "<newline>begin".
         * If found, we claim that this is a multipart message.
         */
        for (int i = 0; i < content.length; i++) {
            int b = content[i] & 0xff; // mask higher byte
            if (b == '\r' || b == '\n') {
                // start of a new line
                if ((i + 5) < content.length) {
                    // can there be a "begin" now?
                    String s = toString(content, i + 1, i + 6);
                    if (s.equalsIgnoreCase("begin")) {
                        isMulti = true;
                        break;
                    }
                }
            }
        }
    }

    if (isMulti) {
        type = "multipart/mixed";
        dh = new DataHandler(new MSMultipartDataSource(this, content));
    } else {
        type = "text/plain"; // charset = ?
        dh = new DataHandler(new MimePartDataSource(this));
    }

    modified = false;
}