public void run() {
try {
getLogger().log(Level.FINE, "creating new message.");
// create the template first. this is done so the new message
// opens as a top-level window.
NewMessageFrame template = new NewMessageFrame(new NewMessageProxy(new NewMessageInfo(new MimeMessage(Pooka.getDefaultSession()))));
MimeMessage mm = new MimeMessage(Pooka.getDefaultSession());
if (fAddress != null)
mm.setRecipients(Message.RecipientType.TO, fAddress);
NewMessageInfo info = new NewMessageInfo(mm);
if (fProfile != null)
info.setDefaultProfile(fProfile);
NewMessageProxy proxy = new NewMessageProxy(info);
MessageUI nmu = Pooka.getUIFactory().createMessageUI(proxy, template);
nmu.openMessageUI();
} catch (OperationCancelledException oce) {
} catch (MessagingException me) {