List of usage examples for javax.activation FileDataSource FileDataSource
public FileDataSource(String name)
From source file:es.pode.planificador.negocio.trabajos.CargaODEs.java
/** * Mtodo de ejecucin de la tarea./*from w ww . ja v a 2s. c o m*/ * Publicacin de los ODEs en la plataforma de manera automtica. */ public void execute(JobExecutionContext context) throws JobExecutionException { Long idTarea = null; String usuario = (String) context.getJobDetail().getJobDataMap().get(CtesPlanificador.USUARIO); boolean ejecucionIncorrecta = false; /* Aadimos la seguridad al proceso */ log("Usuario que lanza la tarea: " + usuario); boolean contextoCargado = Autenticar.cargarContextoSeguridad(usuario); if (!contextoCargado) { log.error("ERROR: No han cargado los datos en el contexto de seguridad"); return; } /* * Parmetros propios del trabajo: * pathODEs, pathODEsCargados, pathODEsNoCargados * msgPublicado, msgNoPublicado y msgDescTrabajo * */ ArrayList parametros = (ArrayList) context.getJobDetail().getJobDataMap().get(CtesPlanificador.PARAMETROS); String pathODEs = (String) parametros.get(0); String pathODEsCargados = (String) parametros.get(1); String pathODEsNoCargados = (String) parametros.get(2); String msgPublicado = (String) parametros.get(3); String msgNoPublicado = (String) parametros.get(4); String msgDescTrabajo = (String) parametros.get(5); String sobrescribir = (String) parametros.get(6); log("CargaODEs: " + context.getJobDetail().getFullName() + " ejecutandose a las " + new Date()); /* Comprobamos si existen los directorios de trabajo de la carga de ODEs */ File fPathODEs = new File(pathODEs); if (!fPathODEs.exists()) { log.error("Error: El directorio donde se deben encontrar los ODEs no existe o no se puede acceder a l " + fPathODEs.getAbsolutePath()); JobExecutionException excepcion = new JobExecutionException( "Error: No se ha podido registrar. El directorio de los ODEs no existe: " + fPathODEs.getAbsolutePath()); throw excepcion; } File fpathODEsCargados = new File(pathODEsCargados); if (!fpathODEsCargados.exists()) { log.error( "Error: El directorio donde se deben mover los ODEs cargados no existe o no se puede acceder a l " + fPathODEs.getAbsolutePath()); JobExecutionException excepcion = new JobExecutionException( "Error: No se ha podido registrar. No exste el directorio donde se deben moven los ODEs publicados: " + fpathODEsCargados.getAbsolutePath()); throw excepcion; } File fpathODEsNoCargados = new File(pathODEsNoCargados); if (!fpathODEsNoCargados.exists()) { log.error( "Error: El directorio donde se deben mover los ODEs no cargados no existe o no se puede acceder a l " + fpathODEsNoCargados.getAbsolutePath()); JobExecutionException excepcion = new JobExecutionException( "Error: El directorio donde se deben mover los ODEs no cargados no existe o no se puede acceder a l " + fpathODEsNoCargados.getAbsolutePath()); throw excepcion; } /* Registramos el inicio del trabajo */ idTarea = Planificador.registrarInicioTarea(context.getJobDetail().getName(), context.getJobDetail().getGroup(), msgDescTrabajo, usuario); log("Identificador de la tarea: " + idTarea); /* Recorremos el directorio donde estan los ficheros(ODEs) a publicar */ /* Antiguamente:: Se recogian los odes de una direccion en concreto File ODEs = new File(pathODEs); File[] arrayList = ODEs.listFiles(); */ File fileOde = null; String[] odes = UtilesFicheros.obtenerOdesDePath(pathODEs, true, true); //recorremos todos los odes for (int i = 0; i < odes.length; i++) { try { log("Carga del ODE: " + odes[i]); /* Se comprueba si la tarea ha sido interrumpida */ if (interrupcion) { log("Se para la tarea por peticin del cliente"); break; } /* Antes se ignoraba los directorios, ahora obtenermos una lista de los path de los odes * que esten dentro de una carpeta o de subcarpetas. no hace falta ignorar los directorios * Los directorios no se cargan en el nodo if (arrayList[i].isDirectory()) { log("Directorio: " + arrayList[i].getAbsolutePath()); continue; } //Nos aseguramos que siga existiendo el fichero a cargar if (!arrayList[i].exists()) { log("El fichero " + arrayList[i].getAbsolutePath() + " ha sido borrado o movido"); continue; } */ //recogemos el ode correspondiente en un FILE para tratarlo fileOde = new File(odes[i]); //comprobamos que el ode existe todavia if (!fileOde.exists()) { log("El fichero " + odes[i] + " ha sido borrado o movido"); continue; } FileDataSource fileDS = new FileDataSource(odes[i]); log("FileDataSource: " + fileDS.toString()); /* Llamada al servicio de publicacin con el ODE */ DataHandler pif = new DataHandler(fileDS); log("DataHandler: " + pif.toString()); String codPublicacion = ServiceLocator.instance().getSrvPlanificadorService().publicarPIF(pif, usuario.toString(), msgDescTrabajo + " " + fileOde.getName(), sobrescribir, fileOde.getName()); //Tratamos el codigo para que solo contenga el primero si tuviera mas de uno String codigoCapado = null; if (codPublicacion == null || codPublicacion.equals("")) codigoCapado = "20.1"; else { int posicion = codPublicacion.indexOf(";"); if (posicion == -1) codigoCapado = codPublicacion; else codigoCapado = codPublicacion.substring(0, posicion); } log("PublicarPIF: " + codigoCapado); /* Preparacin del registro del resultado de la publicacin */ TareaEjecutadaVO tarea = new TareaEjecutadaVO(); tarea.setId(idTarea); RegistroTareaEjecutadaVO registro = new RegistroTareaEjecutadaVO(); registro.setTarea_ejecutada(tarea); registro.setFecha(new GregorianCalendar()); registro.setCodigo(codigoCapado); /* Publicacin correcta */ if (codigoCapado.equals(PUBLICACION_CORRECTA)) { log.debug("Registramos que la publicacin ha sido correcta. ODE: " + fileOde.getName()); registro.setEstado(ConstantesAgrega.TRABAJO_CORRECTO); registro.setDescripcion(msgPublicado + ". " + fileOde.getName()); /* Se mueve el ODE publicado al directorio correspondiente */ try { log.debug("Fichero: " + pathODEsCargados + File.separator + fileOde.getName()); File ficheroCargado = new File(pathODEsCargados + File.separator + fileOde.getName()); if (ficheroCargado.exists()) { log.warn("Ya existe un fichero con ese nombre: " + ficheroCargado.getAbsolutePath() + " en la carpeta de cargados. Se elimina para mover el nuevo fichero"); ficheroCargado.delete(); } boolean mov = fileOde.renameTo(ficheroCargado); if (!mov) log.error("El fichero no se ha podido mover: " + fileOde.getAbsolutePath()); } catch (Exception e2) { RegistrarTrabajoException excepcion = new RegistrarTrabajoException( "Error: No se ha podido mover el ODE cargado al directorio de ODEs publicados " + fileOde.getAbsolutePath(), e2); log.error(excepcion); } } else { // Publicacin incorrecta. El ODE no pasa la validacin log.info("El ODE: " + fileOde.getName() + " no es vlido. Cdigo de error: " + codPublicacion); registro.setEstado(ConstantesAgrega.TRABAJO_ERRONEO); // vamos a recoger el error de publicacion if (codPublicacion.indexOf(";") != -1) msgNoPublicado = codPublicacion.substring(codPublicacion.indexOf(";") + 1); registro.setDescripcion(msgNoPublicado + ". " + fileOde.getName()); registro.setCodigo(codigoCapado); ejecucionIncorrecta = true; /* Se mueve el ODE no publicado al directorio correspondiente */ try { log.debug( "Fichero no publicado: " + pathODEsNoCargados + File.separator + fileOde.getName()); File ficheroNoCargado = new File(pathODEsNoCargados + File.separator + fileOde.getName()); if (ficheroNoCargado.exists()) { log.warn("Ya existe un fichero con ese nombre: " + ficheroNoCargado.getAbsolutePath() + " en la carpeta de no cargados. Se elimina para mover el nuevo fichero"); ficheroNoCargado.delete(); } boolean mov = fileOde.renameTo(ficheroNoCargado); if (!mov) log.error("El fichero no se ha podido mover: " + fileOde.getAbsolutePath()); } catch (Exception e2) { RegistrarTrabajoException excepcion = new RegistrarTrabajoException( "Error: No se ha podido mover el ODE no publicado " + fileOde.getAbsolutePath(), e2); log.error(excepcion); } } // Se registra en la tabla derivada como ha ido la carga de ese ODE try { ServiceLocator.instance().getSrvRegistroPlanificadorService().registrarTrabajoHijo(registro); } catch (Exception e1) { RegistrarTrabajoException excepcion = new RegistrarTrabajoException( "Error: No se ha podido registrar la tarea derivada " + e1.getMessage(), e1); log.error(excepcion); } } catch (Exception e) { // Deberan ser excepciones enviadas del servicio de publicacin de ODEs String path = ""; if (fileOde != null || fileOde.getAbsolutePath() != null) path = fileOde.getAbsolutePath(); log.error("Error publicando ODE: " + path + " " + e); ejecucionIncorrecta = true; TareaEjecutadaVO tarea = new TareaEjecutadaVO(); tarea.setId(idTarea); RegistroTareaEjecutadaVO registro = new RegistroTareaEjecutadaVO(); registro.setTarea_ejecutada(tarea); registro.setDescripcion(msgNoPublicado + ". " + fileOde.getName() + " " + e.getMessage()); registro.setEstado(ConstantesAgrega.TRABAJO_ERRONEO); registro.setCodigo(EXCEPCION_NO_CONTROLADA); registro.setFecha(new GregorianCalendar()); /* Registramos la no publicacin del ODE */ try { ServiceLocator.instance().getSrvRegistroPlanificadorService().registrarTrabajoHijo(registro); } catch (Exception e1) { RegistrarTrabajoException excepcion = new RegistrarTrabajoException( "Error: No se ha podido registrar", e1); log.error(excepcion); } /* Se mueve el ODE no publicado al directorio correspondiente */ try { log("Fichero no publicado: " + pathODEsNoCargados + File.separator + fileOde.getName()); File ficheroNoCargado = new File(pathODEsNoCargados + File.separator + fileOde.getName()); if (ficheroNoCargado.exists()) { log.warn("Ya existe un fichero con ese nombre: " + ficheroNoCargado.getAbsolutePath() + " en la carpeta de no cargados. Se elimina para mover el nuevo fichero"); ficheroNoCargado.delete(); } boolean mov = fileOde.renameTo(ficheroNoCargado); if (!mov) log.error("El fichero no se ha podido mover: " + fileOde.getAbsolutePath()); } catch (Exception e2) { RegistrarTrabajoException excepcion = new RegistrarTrabajoException( "Error: No se ha podido mover el ODE no publicado " + fileOde.getAbsolutePath(), e2); log.error(excepcion); } } } //TODO: De este registro se deber encargar la tarea ejecutada /* Registramos la hora de finalizacin de la tarea y si ha sido correcta/incorrecta la publicacin */ try { TareaEjecutadaVO trabajoEjecutado = new TareaEjecutadaVO(); trabajoEjecutado.setId(idTarea); trabajoEjecutado.setFechaFin(new GregorianCalendar()); if (interrupcion) trabajoEjecutado.setEstado(ConstantesAgrega.TRABAJO_INTERRUMPIDO); else if (ejecucionIncorrecta) trabajoEjecutado.setEstado(ConstantesAgrega.TRABAJO_ERRONEO); else trabajoEjecutado.setEstado(ConstantesAgrega.TRABAJO_CORRECTO); ServiceLocator.instance().getSrvRegistroPlanificadorService() .registrarTrabajoFechaFin(trabajoEjecutado); } catch (Exception e1) { RegistrarTrabajoException excepcion = new RegistrarTrabajoException( "Error: No se ha podido registrar el fin del trabajo", e1); log.error(excepcion); } }
From source file:org.onesec.raven.ivr.vmail.impl.VMailManagerNodeTest.java
@Test public void cleanupOldMessagesTest() throws Exception { VMailBoxNode vbox = createVBox(manager, "vbox1", true); createVBoxNumber(vbox, "111", true); vbox.setNewMessagesLifeTime(1);//from w ww . jav a 2 s . c o m vbox.setSavedMessagesLifeTime(2); assertTrue(manager.start()); File testFile = createTestFile(); ds.pushData(new NewVMailMessageImpl("111", "222", new Date(), new FileDataSource(testFile))); vbox.getNewMessages().get(0).save(); ds.pushData(new NewVMailMessageImpl("111", "333", minusDays(new Date(), 3), new FileDataSource(testFile))); vbox.getNewMessages().get(0).save(); ds.pushData(new NewVMailMessageImpl("111", "333", new Date(), new FileDataSource(testFile))); ds.pushData(new NewVMailMessageImpl("111", "444", minusDays(new Date(), 2), new FileDataSource(testFile))); assertEquals(2, vbox.getNewMessagesCount()); assertEquals(2, vbox.getSavedMessagesCount()); manager.executeScheduledJob(null); assertEquals(1, vbox.getNewMessagesCount()); assertEquals(1, vbox.getSavedMessagesCount()); assertEquals("222", vbox.getSavedMessages().get(0).getSenderPhoneNumber()); assertEquals("333", vbox.getNewMessages().get(0).getSenderPhoneNumber()); }
From source file:rescustomerservices.GmailQuickstart.java
/** * Create a MimeMessage using the parameters provided. * * @param to Email address of the receiver. * @param from Email address of the sender, the mailbox account. * @param subject Subject of the email./* w w w . j a va 2 s .co m*/ * @param bodyText Body text of the email. * @param fileDir Path to the directory containing attachment. * @param filename Name of file to be attached. * @return MimeMessage to be used to send email. * @throws MessagingException */ public MimeMessage createEmailWithAttachment(String to, String from, String subject, String bodyText, String fileDir, String filename) throws MessagingException, IOException { Properties props = new Properties(); Session session = Session.getDefaultInstance(props, null); MimeMessage email = new MimeMessage(session); InternetAddress tAddress = new InternetAddress(to); InternetAddress fAddress = new InternetAddress(from); email.setFrom(fAddress); email.addRecipient(javax.mail.Message.RecipientType.TO, tAddress); email.setSubject(subject); MimeBodyPart mimeBodyPart = new MimeBodyPart(); mimeBodyPart.setContent(bodyText, "text/plain"); mimeBodyPart.setHeader("Content-Type", "text/plain; charset=\"UTF-8\""); Multipart multipart = new MimeMultipart(); multipart.addBodyPart(mimeBodyPart); mimeBodyPart = new MimeBodyPart(); DataSource source = new FileDataSource(fileDir + filename); mimeBodyPart.setDataHandler(new DataHandler(source)); mimeBodyPart.setFileName(filename); String contentType = Files.probeContentType(FileSystems.getDefault().getPath(fileDir, filename)); mimeBodyPart.setHeader("Content-Type", contentType + "; name=\"" + filename + "\""); mimeBodyPart.setHeader("Content-Transfer-Encoding", "base64"); multipart.addBodyPart(mimeBodyPart); email.setContent(multipart); return email; }
From source file:org.wso2.carbon.registry.ws.api.utils.CommonUtil.java
public static DataHandler makeDataHandler(Resource resource, File tempFile) throws IOException, RegistryException { if (resource.getContent() == null) { return null; }/*from w w w .j ava 2 s.c om*/ InputStream is = null; OutputStream os = null; try { os = new FileOutputStream(tempFile); if (resource.getContent() instanceof String[]) { String[] strArray = (String[]) resource.getContent(); ObjectOutputStream oos = new ObjectOutputStream(os); oos.writeObject(strArray); } else { try { is = resource.getContentStream(); // os = new FileOutputStream(tempFile); byte[] buffer = new byte[4096]; for (int n; (n = is.read(buffer)) != -1;) os.write(buffer, 0, n); os.flush(); } finally { if (is != null) { is.close(); } } } } finally { if (os != null) { os.close(); } } // Base64Binary base64Binary = new Base64Binary(); return new DataHandler(new FileDataSource(tempFile)); }
From source file:Implement.Service.AdminServiceImpl.java
@Override public boolean sendPackageApprovedEmail(PackageApprovedEmailData emailData) throws MessagingException { String path = System.getProperty("catalina.base"); MimeBodyPart logo = new MimeBodyPart(); // attach the file to the message DataSource source = new FileDataSource(new File(path + "/webapps/Images/Email/logoIcon.png")); logo.setDataHandler(new DataHandler(source)); logo.setFileName("logoIcon.png"); logo.setDisposition(MimeBodyPart.INLINE); logo.setHeader("Content-ID", "<logo_Icon>"); // cid:image_cid MimeBodyPart facebook = new MimeBodyPart(); // attach the file to the message source = new FileDataSource(new File(path + "/webapps/Images/Email/facebookIcon.png")); facebook.setDataHandler(new DataHandler(source)); facebook.setFileName("facebookIcon.png"); facebook.setDisposition(MimeBodyPart.INLINE); facebook.setHeader("Content-ID", "<fb_Icon>"); // cid:image_cid MimeBodyPart twitter = new MimeBodyPart(); // attach the file to the message source = new FileDataSource(new File(path + "/webapps/Images/Email/twitterIcon.png")); twitter.setDataHandler(new DataHandler(source)); twitter.setFileName("twitterIcon.png"); twitter.setDisposition(MimeBodyPart.INLINE); twitter.setHeader("Content-ID", "<twitter_Icon>"); // cid:image_cid MimeBodyPart insta = new MimeBodyPart(); // attach the file to the message source = new FileDataSource(new File(path + "/webapps/Images/Email/instaIcon.png")); insta.setDataHandler(new DataHandler(source)); insta.setFileName("instaIcon.png"); insta.setDisposition(MimeBodyPart.INLINE); insta.setHeader("Content-ID", "<insta_Icon>"); // cid:image_cid MimeBodyPart youtube = new MimeBodyPart(); // attach the file to the message source = new FileDataSource(new File(path + "/webapps/Images/Email/youtubeIcon.png")); youtube.setDataHandler(new DataHandler(source)); youtube.setFileName("youtubeIcon.png"); youtube.setDisposition(MimeBodyPart.INLINE); youtube.setHeader("Content-ID", "<yt_Icon>"); // cid:image_cid MimeBodyPart pinterest = new MimeBodyPart(); // attach the file to the message source = new FileDataSource(new File(path + "/webapps/Images/Email/pinterestIcon.png")); pinterest.setDataHandler(new DataHandler(source)); pinterest.setFileName("pinterestIcon.png"); pinterest.setDisposition(MimeBodyPart.INLINE); pinterest.setHeader("Content-ID", "<pin_Icon>"); // cid:image_cid String content = "<div style=' width: 507px;background-color: #f2f2f4;'>" + " <div style='padding: 30px 0;text-align: center; color: #fff; background-color: #ff514e;font-size: 30px;font-weight: bold;'>" + " <img style=' text-align:center;' width=57 height=57 src='cid:logo_Icon'/>" + " <p style='margin:25px 0px 0px 0px;'> Package Approved! </p>" + " </div>" + " <div style=' padding: 50px;margin-bottom: 20px;'>" + " <div id='email-form'>" + " <div style='margin-bottom: 20px'>" + " Hi " + emailData.getLastName() + " ,<br/>" + " Your package " + emailData.getLastestPackageName() + " has been approved" + " </div>" + " <div style='margin-bottom: 20px'>" + " Thanks,<br/>" + " Youtripper team\n" + " </div>" + " </div>" + " <div style='border-top: solid 1px #c4c5cc;text-align:center;'>" + " <p style='text-align: center; color: #3b3e53;margin-top: 10px;margin-bottom: 0px;font-size: 10px;'>Sent from Youtripper.com</p>" + " <div>" + " <a href='https://www.facebook.com/youtrippers/'><img style='margin:10px;' src='cid:fb_Icon' alt=''/></a>" + " <a href='https://twitter.com/youtrippers'><img style='margin:10px;' src='cid:twitter_Icon' alt=''/></a>" + " <a href='https://www.instagram.com/youtrippers/'><img style='margin:10px;' src='cid:insta_Icon' alt=''/></a>" + " <a href='https://www.youtube.com/channel/UCtd4xd_SSjRR9Egug7tXIWA'><img style='margin:10px;' src='cid:yt_Icon' alt=''/></a>" + " <a href='https://www.pinterest.com/youtrippers/'><img style='margin:10px;' src='cid:pin_Icon' alt=''/></a>" + " </div>" + " <p>Youtripper Ltd., 56 Soi Seri Villa, Srinakarin Rd., Nongbon," + " <br>Pravet, Bangkok, Thailand 10250</p>" + " </div>" + " </div>" + "</div>"; MimeBodyPart mbp1 = new MimeBodyPart(); mbp1.setText(content, "US-ASCII", "html"); Multipart mp = new MimeMultipart("related"); mp.addBodyPart(mbp1);//w w w . j a v a 2s. c om mp.addBodyPart(logo); mp.addBodyPart(facebook); mp.addBodyPart(twitter); mp.addBodyPart(insta); mp.addBodyPart(youtube); mp.addBodyPart(pinterest); final String username = "noreply@youtripper.com"; final String password = "Tripper190515"; Properties props = new Properties(); props.put("mail.smtp.auth", "true"); props.put("mail.smtp.starttls.enable", "true"); props.put("mail.smtp.host", "mail.youtripper.com"); Session session = Session.getInstance(props, new javax.mail.Authenticator() { protected PasswordAuthentication getPasswordAuthentication() { return new PasswordAuthentication(username, password); } }); Message message = new MimeMessage(session); message.setFrom(new InternetAddress("noreply@youtripper.com")); message.setRecipients(Message.RecipientType.TO, InternetAddress.parse(emailData.getEmail())); message.setSubject("Package Approved!"); message.setContent(mp); message.saveChanges(); Transport.send(message); return true; }
From source file:bo.com.offercruzmail.imp.InterpretadorMensajeGenerico.java
protected Multipart enviarPlantilla(boolean plantillaNueva, String idCargar) throws MessagingException, IOException { String nombreArchivoOrigen;/* w ww . j a va2 s. c om*/ String nombreAdjunto; List<T> lista = null; mensajesError = null; T entidad = null; getObjetoNegocio().setIdUsuario(idUsuario); getObjetoNegocio().setComandoPermiso(nombreEntidad); try { if (!plantillaNueva) { if ("todos".equals(idCargar)) { lista = getObjetoNegocio().obtenerTodos(); nombreArchivoOrigen = nombreEntidad + "-" + "lista"; nombreAdjunto = "lista_" + nombreEntidad + ".xlsx"; } else { ID id; try { id = convertirId(idCargar); } catch (Exception ex) { return FormadorMensajes.enviarIdCargarNoValido(); } entidad = getObjetoNegocio().recuperarPorId(id); if (entidad == null) { return FormadorMensajes.enviarEntidadNoExiste(idCargar); } nombreArchivoOrigen = nombreEntidad; nombreAdjunto = nombreEntidad + "_" + idCargar + ".xlsx"; } } else { nombreArchivoOrigen = nombreEntidad; nombreAdjunto = "plantilla_" + nombreEntidad + ".xlsx"; // if (this instanceof IInterpretadorFormularioDasometrico) { // if (cargarPlantillaFormularios) { // nombreArchivoOrigen = "plantillafrm"; // } // } } String nombreArchivoOriginal = "plantillas/" + nombreArchivoOrigen + ".xlsx"; File archivoCopia = UtilitariosMensajes.reservarNombre(nombreEntidad); UtilitariosMensajes.copiarArchivo(new File(nombreArchivoOriginal), archivoCopia); archivosTemporales.add(archivoCopia); FileInputStream fis = null; OutputStream os = null; try { Workbook libro; fis = new FileInputStream(archivoCopia); libro = WorkbookFactory.create(fis); hojaActual = new HojaExcelHelper(libro.getSheetAt(0)); if (plantillaNueva) { preparPlantillaAntesDeEnviar(libro); } else { if (lista != null) { mostrarLista(lista); } else { mostrarEntidad(entidad, libro); } } if (mensajesError != null) { return FormadorMensajes.enviarErroresNegocio(mensajesError); } //Guardamos cambio os = new FileOutputStream(archivoCopia); libro.write(os); } catch (InvalidFormatException ex) { } finally { if (fis != null) { fis.close(); } if (os != null) { os.close(); } } String textoMensaje; if (plantillaNueva) { textoMensaje = escapeHtml4("La plantilla est adjunta a este mensaje."); } else if (lista != null) { textoMensaje = "La consulta ha devuelto " + lista.size() + " registro(s)."; } else { textoMensaje = escapeHtml4("El registro solicitado est adjunto a este mensaje"); } Multipart cuerpo = new MimeMultipart(); BodyPart adjunto = new MimeBodyPart(); DataSource origen = new FileDataSource(archivoCopia); adjunto.setDataHandler(new DataHandler(origen)); adjunto.setFileName(nombreAdjunto); cuerpo.addBodyPart(FormadorMensajes.getBodyPartEnvuelto(textoMensaje)); cuerpo.addBodyPart(adjunto); return cuerpo; } catch (PermisosInsuficientesException ex) { appendException(new BusinessExceptionMessage(ex.getMessage(), "Autentificacion")); } if (mensajesError != null) { return FormadorMensajes.enviarErroresNegocio(mensajesError); } return null; }
From source file:edu.ku.brc.helpers.EMailHelper.java
/** * Send an email. Also sends it as a gmail if applicable, and does password checking. * @param host host of SMTP server/*from ww w . j av a 2 s . c o m*/ * @param uName username of email account * @param pWord password of email account * @param fromEMailAddr the email address of who the email is coming from typically this is the same as the user's email * @param toEMailAddr the email addr of who this is going to * @param subject the Textual subject line of the email * @param bodyText the body text of the email (plain text???) * @param fileAttachment and optional file to be attached to the email * @return true if the msg was sent, false if not */ public static ErrorType sendMsg(final String host, final String uName, final String pWord, final String fromEMailAddr, final String toEMailAddr, final String subject, final String bodyText, final String mimeType, final String port, final String security, final File fileAttachment) { String userName = uName; String password = pWord; if (StringUtils.isEmpty(toEMailAddr)) { UIRegistry.showLocalizedError("EMailHelper.NO_TO_ERR"); return ErrorType.Error; } if (StringUtils.isEmpty(fromEMailAddr)) { UIRegistry.showLocalizedError("EMailHelper.NO_FROM_ERR"); return ErrorType.Error; } //if (isGmailEmail()) //{ // return sendMsgAsGMail(host, userName, password, fromEMailAddr, toEMailAddr, subject, bodyText, mimeType, port, security, fileAttachment); //} Boolean fail = false; ArrayList<String> userAndPass = new ArrayList<String>(); boolean isSSL = security.equals("SSL"); String[] keys = { "mail.smtp.host", "mail.smtp.port", "mail.smtp.auth", "mail.smtp.starttls.enable", "mail.smtp.socketFactory.port", "mail.smtp.socketFactory.class", "mail.smtp.socketFactory.fallback", "mail.imap.auth.plain.disable", }; Properties props = System.getProperties(); for (String key : keys) { props.remove(key); } props.put("mail.smtp.host", host); //$NON-NLS-1$ if (StringUtils.isNotEmpty(port) && StringUtils.isNumeric(port)) { props.put("mail.smtp.port", port); //$NON-NLS-1$ //$NON-NLS-2$ } else { props.remove("mail.smtp.port"); } if (StringUtils.isNotEmpty(security)) { if (security.equals("TLS")) { props.put("mail.smtp.auth", "true"); //$NON-NLS-1$ //$NON-NLS-2$ props.put("mail.smtp.starttls.enable", "true"); //$NON-NLS-1$ //$NON-NLS-2$ } else if (isSSL) { props.put("mail.smtp.auth", "true"); //$NON-NLS-1$ //$NON-NLS-2$ String SSL_FACTORY = "javax.net.ssl.SSLSocketFactory"; props.put("mail.smtp.socketFactory.port", port); props.put("mail.smtp.socketFactory.class", SSL_FACTORY); props.put("mail.smtp.socketFactory.fallback", "false"); props.put("mail.imap.auth.plain.disable", "true"); } } Session session = null; if (isSSL) { Security.addProvider(new com.sun.net.ssl.internal.ssl.Provider()); session = Session.getInstance(props, new javax.mail.Authenticator() { protected PasswordAuthentication getPasswordAuthentication() { return new PasswordAuthentication(uName, pWord); } }); } else { session = Session.getInstance(props, null); } session.setDebug(instance.isDebugging); if (instance.isDebugging) { log.debug("Host: " + host); //$NON-NLS-1$ log.debug("UserName: " + userName); //$NON-NLS-1$ log.debug("Password: " + password); //$NON-NLS-1$ log.debug("From: " + fromEMailAddr); //$NON-NLS-1$ log.debug("To: " + toEMailAddr); //$NON-NLS-1$ log.debug("Subject: " + subject); //$NON-NLS-1$ log.debug("Port: " + port); //$NON-NLS-1$ log.debug("Security: " + security); //$NON-NLS-1$ } try { // create a message MimeMessage msg = new MimeMessage(session); msg.setFrom(new InternetAddress(fromEMailAddr)); if (toEMailAddr.indexOf(",") > -1) //$NON-NLS-1$ { StringTokenizer st = new StringTokenizer(toEMailAddr, ","); //$NON-NLS-1$ InternetAddress[] address = new InternetAddress[st.countTokens()]; int i = 0; while (st.hasMoreTokens()) { String toStr = st.nextToken().trim(); address[i++] = new InternetAddress(toStr); } msg.setRecipients(Message.RecipientType.TO, address); } else { try { InternetAddress[] address = { new InternetAddress(toEMailAddr) }; msg.setRecipients(Message.RecipientType.TO, address); } catch (javax.mail.internet.AddressException ex) { UIRegistry.showLocalizedError("EMailHelper.TO_ADDR_ERR", toEMailAddr); return ErrorType.Error; } } msg.setSubject(subject); //msg.setContent( aBodyText , "text/html;charset=\"iso-8859-1\""); // create the second message part if (fileAttachment != null) { // create and fill the first message part MimeBodyPart mbp1 = new MimeBodyPart(); mbp1.setContent(bodyText, mimeType);//"text/html;charset=\"iso-8859-1\""); //mbp1.setContent(bodyText, "text/html;charset=\"iso-8859-1\""); MimeBodyPart mbp2 = new MimeBodyPart(); // attach the file to the message FileDataSource fds = new FileDataSource(fileAttachment); mbp2.setDataHandler(new DataHandler(fds)); mbp2.setFileName(fds.getName()); // create the Multipart and add its parts to it Multipart mp = new MimeMultipart(); mp.addBodyPart(mbp1); mp.addBodyPart(mbp2); // add the Multipart to the message msg.setContent(mp); } else { // add the Multipart to the message msg.setContent(bodyText, mimeType); } final int TRIES = 1; // set the Date: header msg.setSentDate(new Date()); Exception exception = null; // send the message int cnt = 0; do { cnt++; SMTPTransport t = isSSL ? null : (SMTPTransport) session.getTransport("smtp"); //$NON-NLS-1$ try { if (isSSL) { Transport.send(msg); } else { t.connect(host, userName, password); t.sendMessage(msg, msg.getAllRecipients()); } fail = false; } catch (SendFailedException mex) { mex.printStackTrace(); exception = mex; } catch (MessagingException mex) { if (mex.getCause() instanceof UnknownHostException) { instance.lastErrorMsg = null; fail = true; UIRegistry.showLocalizedError("EMailHelper.UNK_HOST", host); } else if (mex.getCause() instanceof ConnectException) { instance.lastErrorMsg = null; fail = true; UIRegistry.showLocalizedError( "EMailHelper." + (StringUtils.isEmpty(port) ? "CNCT_ERR1" : "CNCT_ERR2"), port); } else { mex.printStackTrace(); exception = mex; } } catch (Exception mex) { mex.printStackTrace(); exception = mex; } finally { if (t != null) { log.debug("Response: " + t.getLastServerResponse()); //$NON-NLS-1$ t.close(); } } if (exception != null) { fail = true; instance.lastErrorMsg = exception.toString(); //wrong username or password, get new one if (exception.toString().equals("javax.mail.AuthenticationFailedException")) //$NON-NLS-1$ { UIRegistry.showLocalizedError("EMailHelper.UP_ERROR", userName); userAndPass = askForUserAndPassword((Frame) UIRegistry.getTopWindow()); if (userAndPass == null) { //the user is done instance.lastErrorMsg = null; return ErrorType.Cancel; } userName = userAndPass.get(0); password = userAndPass.get(1); } } exception = null; } while (fail && cnt < TRIES); } catch (Exception mex) { //edu.ku.brc.af.core.UsageTracker.incrHandledUsageCount(); //edu.ku.brc.exceptions.ExceptionTracker.getInstance().capture(EMailHelper.class, mex); instance.lastErrorMsg = mex.toString(); mex.printStackTrace(); Exception ex = null; if (mex instanceof MessagingException && (ex = ((MessagingException) mex).getNextException()) != null) { ex.printStackTrace(); instance.lastErrorMsg = instance.lastErrorMsg + ", " + ex.toString(); //$NON-NLS-1$ } return ErrorType.Error; } if (fail) { return ErrorType.Error; } //else return ErrorType.OK; }
From source file:frameworkcontentspeed.Utils.SendEmailAtachament.java
public static void SendEmailAnda(String from, String to1, String subject, String filename) throws FileNotFoundException, IOException { //Get properties object Properties props = new Properties(); props.put("mail.smtp.host", "smtp.gmail.com"); props.put("mail.smtp.socketFactory.port", "465"); props.put("mail.smtp.socketFactory.class", "javax.net.ssl.SSLSocketFactory"); props.put("mail.smtp.auth", "true"); props.put("mail.smtp.port", "465"); //get Session Session session = Session.getDefaultInstance(props, new javax.mail.Authenticator() { protected PasswordAuthentication getPasswordAuthentication() { return new PasswordAuthentication(from, "anda.cristea"); }// www .j a v a2 s .c o m }); //compose message try { MimeMessage message = new MimeMessage(session); message.addRecipient(Message.RecipientType.TO, new InternetAddress(to1)); message.setSubject(subject); // message.setText(msg); BodyPart messageBodyPart = new MimeBodyPart(); messageBodyPart.setText("Raport teste automate"); Multipart multipart = new MimeMultipart(); multipart.addBodyPart(messageBodyPart); messageBodyPart = new MimeBodyPart(); DataSource source = new FileDataSource(filename); messageBodyPart.setDataHandler(new DataHandler(source)); messageBodyPart.setFileName(filename); multipart.addBodyPart(messageBodyPart); //message.setContent(multipart); StringWriter writer = new StringWriter(); IOUtils.copy(new FileInputStream(new File(filename)), writer); message.setContent(writer.toString(), "text/html"); //send message Transport.send(message); } catch (MessagingException e) { throw new RuntimeException(e); } }
From source file:org.wso2.carbon.esb.scenario.test.common.ScenarioTestBase.java
/** * Function to upload carbon application * * @param carFileName the name of the carbon application to be deployed * @throws RemoteException if the admin client becomes unable to connect to the admin service *//*w ww. j a v a 2s .c om*/ protected void deployCarbonApplication(String carFileName) throws RemoteException, InterruptedException { if (standaloneMode) { // If standalone mode, deploy the CAPP to the server String cappFilePath = testResourcesDir + File.separator + "artifacts" + File.separator + carFileName + ".car"; if (carbonAppUploaderClient == null) { carbonAppUploaderClient = new CarbonAppUploaderClient(backendURL, sessionCookie); } DataHandler dh = new DataHandler(new FileDataSource(new File(cappFilePath))); // Upload carbon application carbonAppUploaderClient.uploadCarbonAppArtifact(carFileName + ".car", dh); //TODO - This thread sleep is added temporarily to wait until the ESB Instances sync in the cluster in clustered test environment if (!Boolean.valueOf(infraProperties.getProperty(ScenarioConstants.STANDALONE_DEPLOYMENT))) { log.info("Waiting for artifacts synchronized across cluster nodes"); Thread.sleep(120000); } if (applicationAdminClient == null) { applicationAdminClient = new ApplicationAdminClient(backendURL, sessionCookie); } // Wait for Capp to sync log.info("Waiting for Carbon Application deployment .."); Awaitility.await().pollInterval(500, TimeUnit.MILLISECONDS) .atMost(ScenarioConstants.ARTIFACT_DEPLOYMENT_WAIT_TIME_MS, TimeUnit.MILLISECONDS) .until(isCAppDeployed(applicationAdminClient, carFileName)); } }
From source file:javamailclient.GmailAPI.java
/** * Create a MimeMessage using the parameters provided. * * @param to Email address of the receiver. * @param from Email address of the sender, the mailbox account. * @param subject Subject of the email.// w w w. j a v a2 s .c o m * @param bodyText Body text of the email. * @param fileDir Path to the directory containing attachment. * @param filename Name of file to be attached. * @return MimeMessage to be used to send email. * @throws MessagingException */ public static MimeMessage createEmailWithAttachment(String to, String from, String subject, String bodyText, String fileDir, String filename) throws MessagingException, IOException { Properties props = new Properties(); Session session = Session.getDefaultInstance(props, null); MimeMessage email = new MimeMessage(session); InternetAddress tAddress = new InternetAddress(to); InternetAddress fAddress = new InternetAddress(from); email.setFrom(fAddress); email.addRecipient(javax.mail.Message.RecipientType.TO, tAddress); email.setSubject(subject); MimeBodyPart mimeBodyPart = new MimeBodyPart(); mimeBodyPart.setContent(bodyText, "text/plain"); mimeBodyPart.setHeader("Content-Type", "text/plain; charset=\"UTF-8\""); Multipart multipart = new MimeMultipart(); multipart.addBodyPart(mimeBodyPart); mimeBodyPart = new MimeBodyPart(); DataSource source = new FileDataSource(fileDir + filename); mimeBodyPart.setDataHandler(new DataHandler(source)); mimeBodyPart.setFileName(filename); String contentType = Files.probeContentType(FileSystems.getDefault().getPath(fileDir, filename)); mimeBodyPart.setHeader("Content-Type", contentType + "; name=\"" + filename + "\""); mimeBodyPart.setHeader("Content-Transfer-Encoding", "base64"); multipart.addBodyPart(mimeBodyPart); email.setContent(multipart); return email; }