package org.jboss.seam.mail.ui; import java.io.IOException; import javax.faces.FacesException; import javax.faces.context.FacesContext; import javax.mail.MessagingException; import org.jboss.seam.mail.ui.context.MailResponseWriter; /** * JSF component for rendering subject line */ public class UISubject extends MailComponent { @Override public void encodeChildren(FacesContext facesContext) throws IOException { try { String subject = encode(facesContext, MailResponseWriter.TEXT_PLAIN_CONTENT_TYPE); String charset = findMessage().getCharset(); if (charset == null) { findMimeMessage().setSubject(new Header(subject).getSanitizedValue()); } else { findMimeMessage().setSubject(new Header(subject).getSanitizedValue(), charset); } } catch (MessagingException e) { throw new FacesException(e.getMessage(), e); } } }