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.
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.
- You must Learn about Mime!
- Debugging mime using the MimeInspector (patent pending)
- 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