Hi Ramya,
thanks

but i hav already tried SendFailedException and MessagingException class.. actually this exception is not thrown even though i give some non-exitence recipient address..
code wat i tried is
// create a message
Message msg = new MimeMessage(session);
// set the from and to address
StringBuilder smtpFrom = new StringBuilder();
String from = map.get("partnerName") == null? "" : (String)map.get("partnerName");
if (! from.equals("")) {
smtpFrom.append(from).append(" ");
}
smtpFrom.append("<");
smtpFrom.append(MailUtils.getSmtpFrom()).append("> ");
log.info("Sent mailer");
log.info(smtpFrom.toString());
log.info("Sent mailer");
msg.setFrom(new InternetAddress(smtpFrom.toString()));
final String sendReportTo = (String) map.get("sendReportTo");
msg.setRecipients(Message.RecipientType.TO,
getInternetAddressArrayFromStringOfAddress(sendRep ortTo));
final String cc = (String) map.get("cc");
if (!"".equals(cc.trim())) {
msg.setRecipients(Message.RecipientType.CC,
getInternetAddressArrayFromStringOfAddress(cc));
}
final String bcc = (String) map.get("bcc");
if (!"".equals(bcc.trim())) {
msg.setRecipients(Message.RecipientType.BCC,
getInternetAddressArrayFromStringOfAddress(bcc));
}
final String subject = (String) map.get("subject");
// msg.setHeader("Subject", subject);
msg.setSubject(subject);
final String key = (String) map.get("key");
msg.setHeader("Message-ID",key);
//msg.setHeader("References",key);
Multipart multipart = new MimeMultipart();
//
// Set the email message text.
//
final String content = (String) map.get("content");
MimeBodyPart messagePart = new MimeBodyPart();
// messagePart.setText(content);
messagePart.setContent(content,"text/html; charset=UTF-8");
multipart.addBodyPart(messagePart);
//
// Set the email attachment files
//
if(map.get("bodyParts")!=null){
List<MimeBodyPart> bodyParts = (List<MimeBodyPart>) map.get("bodyParts");
for (MimeBodyPart mimeBodyPart : bodyParts) {
multipart.addBodyPart(mimeBodyPart);
//multipart.getBodyPart(index)
}
}
// add the Multipart to the message
msg.setContent(multipart);
log.info(" ** before transport");
//msg.addHeader("key", arg1)
try { Transport.send(msg);
} catch(SendFailedException sendFailedException) {
log.info(" ** ValidUnsent Addresses");
Address[] validUnsent =
sendFailedException.getValidUnsentAddresses();
if (validUnsent != null) {
log.info(" ** ValidUnsent Addresses");
if (validUnsent != null) {
for (int i = 0;
i < validUnsent.length; i++)
log.info(" "+validUnsent[i]);
}
}
}
Enumeration<Header> enumSent=msg.getAllHeaders();
while(enumSent.hasMoreElements()){
Header h = (Header) enumSent.nextElement();
if(h.getName().equalsIgnoreCase("Message-ID")){
sentKey=h.getValue();
}
}
} catch (MessagingException e) {
log.info(e.getMessage());
log.error("Cann't send report via e-mail: some errors", e);
}