Tips for Creating a Webmail UI with XPages

Over the past year my main project has been an XPages application for project-related Email correspondence, with formal document management thrown it as well and a bunch of Action Item / comment functionality surrounding it all.

Developing the application as it’s own email client presented a few different challenges that may not be encountered in normal xpages development. Along the way I have come across a few different gotchas that I thought I better make record of, both the the benefit of others and also for the benefit of the ‘Future Cam’ when I forget what I did.

The previous incarnation of this system was a classic notes application. It was purely a repository (or dumping ground) for emails and attachments. Users mail-file templates were modified so that they could ‘send and file to repository’. When external project related emails arrived in their personal inbox, they could ‘copy to the repository’. So all the email composing and viewing was done in the notes client, it was purely a copy-and-file style of application.

In the new XPages system, each project has it’s own NSF, with a mail-in address. For incoming emails, all project-related correspondence must be sent to this address. For outgoing emails, all emails must be sent from the XPages interface instead of from the user’s own mail database.

Each topic will be it’s own separate blog post, I will list the topics below and when the blog posts come out I will link them here.
I have most of these posts 50% done, so if you want to know more about any please leave a comment or message me on twitter and you might just give me the motivation to finish that topic next. Most of this info was hard won, with lots of trial and error, lots of researching, lots of pain, lots of late nights. So I hope you get some benefit from it!

As each topic is done, I will update this list with the link.

  • MIME
  • Drafting an Sending Email
    • The many ways to Send an email
    • Binding to a Java Bean
    • Autosaving Message drafts
    • Adding and updating mail signatures
    • Preventing pasting of remotely hosted images
    • Preventing pasting of Data URI images
    • Uploading images as inline attachments when Pasted
    • Formatting lost when saving a draft message
    • Using javax.internet.InternetAddress
    • InputRichText can’t be used in Embedded Experiences, unless…but still
  • Don’t run ToolsRefreshAllDocs on any of your emails!
  • Problems with Incoming email messages
    • That Contain a message/rfc822 mime part
    • That Contain embedded images that won’t display in XPages
    • That Contain Attachments you can’t download with XPages Download
    • That Contain a <form> element or DOCTYPE

You may also like...

4 Responses

  1. Steven Podrouzek says:

    Sounds very interesting. I will be reading this blog for sure! Very good idea.
    Please post some screen shots of the application if you are able/permitted.

  2. Very useful in conjunction with the previous article. Looking forward to more

Leave a Reply

Your email address will not be published. Required fields are marked *