Skip to end of metadata
Go to start of metadata


Mail Portlet


Matt Young, Ren Provey, Gary Weaver, Jen Bourey, Erik A. Olsson

Issue Management





Freeware / Open Source (transitioning to Apache 2.0 from BSD)

2.0.0-alpha-7 preview is now available. Please read the user manual for more information.

If you'd like to contribute to or comment on this portlet please email the portlet-dev list.

About this Jasig Portlet Project

Originally written in 2007 by Matt Young and Ren Provey of Duke University and presented in the 2007 Jasig conference. Since then Yale, Duke, and others have continued to develop.

System Requirements

  • The latest version of this portlet has been confirmed to work in uPortal, and it was developed as a JSR-168 portlet with the intent that it could be used in any portal supporting JSR-168 including later versions of uPortal.


  • Shows titles of Mail accounts (POP or IMAP) defined in the portlet config and/or by user in bar under portlet title.
  • Can allow students to add custom mail accounts, accounts from templates you create, or you can lock down accounts so that they are not editable.
  • Very customizable and pluggable.
  • Can specify advanced javamail properties for accounts, custom timeouts.
  • Internationalized messages (i18n'd).
  • Pluggable authN including built-in CAS (from Yale) authN, authN based on remote user and userinfo attribute, normal user/password authN (with or without SSL).
  • Any Java supported level of AES supported for password encryption. DES password encryption. 3DES could easily be added.
  • Standard JSR-168 PLT.C CSS classes and FSS classes used in backwards compatible way so will work with uPortal 2.5.x+.
  • Lists N number of last emails for the selected tab.
  • Shows selected IMAP flags for emails (read/unread, replied, deleted, ...)


The overlapping validation message in the default uPortal 3.1.x skin shown here was per Eric Dalquist's request added as UP-2531 in uPortal Jira, so there is possibility that it would be fixed in a future uPortal version. However, you might be able to fix by manually reducing padding by 0.75em on each side, per that ticket, to make keep it from overlapping, although how much it should be change really depends on the skin.

Usage Documentation

Objectives and requirements


  • Can retrieve email in a tabbed view and display email information in a user friendly format


  • Needs review: Is it a standards-compliant JSR-168 portlet? (I believe it does)
  • Needs review: Does it have what JA-SIG would consider to be modular design and APIs? (I believe it does)
  • Needs review: Uses Spring PortletMVC and appropriate Spring practices (I believe it does)
  • Builds with Maven 2 (I believe it does)
  • Needs (more) unit tests (this is still the case)


  • A collaborative open source project under the auspices of Jasig
  • Can be used commercially and non-commercially
  • Produces actual production-ready releases, not just a code drop or a project that exclusively lives in SVN (Note: for now we would appreciate some help in this, and Jen of Yale offered to help until Duke has time to help develop it)



Committership is a social contract

Commitership in Jasig SVN is both a technical fact (having the right account set up in Jasig SVN configuration) and a social contract (the understanding and agreement among developers that this person will be committing to some particular portion of Jasig shared collaborated-upon source code.) Presently, technically, any member of the "everyone" group is able to commit changes to this portlet project in SVN. That doesn't mean everyone "is a committer" in the sense of committership on this project. Cf., technically, any member of the "everyone" group in Jasig SVN is able to commit changes to uPortal, but it would be a surprise and likely inappropriate for an "everyone" member who has never before committed to the uPortal project to make unexpected changes.

Here are enumerated the people believed to be committers for this project:

Open Issues

type key summary reporter status

Unable to locate Jira server for this macro. It may be due to Application Link configuration.

Action Items

Action Item



Give garysweaver svn commit access

Andrew Petro


Create a sandbox SVN module

Gary Weaver


Document intent to move to SVN portlets/ directory as of first RC


Not started

Create child pages of Portlets wiki space for this portlet content

Gary Weaver


Build out this page with more info

Gary Weaver

Done (added user manual, copied from

Document this projectlet on the Jasig Clearinghouse Contributions page


Not started

Create a Jira project in the portlets group

Andrew Petro

Done. Gary Weaver is admin.

Does this need its own dev and user mailing lists?


Not started

  • No labels