Ya esta ya funciona, por si alguien le interesa:
Código:
try
{
Properties props = new Properties();
props.put("mail.smtp.host",host);
Session s = Session.getInstance(props,null);
MimeMessage message = new MimeMessage(s);
InternetAddress fromIA = new InternetAddress(from);
message.setFrom(fromIA);
message.addRecipient(Message.RecipientType.TO, new InternetAddress(to));
message.setSubject(subject);
MimeMultipart mp = new MimeMultipart();
mp.setSubType("related");
//Dividim en dos el mail, mbp1 es el text i mbp2 es l'adjunt
MimeBodyPart mbp1= new MimeBodyPart();
mbp1.setText("Aqui possem el text");
MimeBodyPart mbp2 = new MimeBodyPart();
FileDataSource fds = new FileDataSource(archivo);
mbp2.setDataHandler(new DataHandler(fds));
mbp2.setFileName(fds.getName());
mp.addBodyPart(mbp1);
mp.addBodyPart(mbp2);
message.setContent(mp);
message.setSentDate(new java.util.Date());
Transport.send(message);
}catch (Exception e){
log("Application ERROR: problem sending an email: "+e.getMessage());
}