Quiero crear un objeto Java File
en la memoria (sin crear un archivo físico) y llenar su contenido con una matriz de bytes.Crear un objeto de archivo Java (o equivalente) utilizando una matriz de bytes en memoria (sin un archivo físico)
se puede hacer esto?
La idea es pasarlo a un resorte InputStreamSource
. Estoy probando el método a continuación, pero vuelve diciendo "la matriz de bytes no contiene un nombre de archivo".
MimeMessage message = mailSender.createMimeMessage();
MimeMessageHelper helper = new MimeMessageHelper(message);
helper.setFrom("[email protected]", "xyz");
helper.setTo(email);
helper.setText(body,true);
helper.setSubject(subject);
helper.addInline("cImage",
new InputStreamResource(new ByteArrayInputStream(imageByteArr)));
mailSender.send(message);
java.lang.IllegalStateException: el recurso cargado desde la matriz de bytes no lleva el nombre de archivo en org.springframework.core.io.AbstractResource.getFilename (AbstractResource.java:148) en org.springframework .mail.javamail.MimeMessageHelper.addInline (MimeMessageHelper.java:922) –
Gracias Kevin, funcionó !! Fantástica solución. –
Esperemos que lo veas en acción pronto en www.creately.com :) (Estamos en una atm privada de beta). –