MailPortlet v2.0.0-alpha-
...
2 User Manual
Foreword
Matt Young and Ren Provey of the Internet Frameworks Services division of Duke University's Office Of Information Technology (OIT) created the original version of this portlet in 2007 and it was contributed by Duke University to the JA-SIG community in early 2008. Since then Jen Bourey (of Yale University), Eric Dalquist (of University of Wisconsin-Madison), Erik A. Olsson (of University of California, Irvine), and Gary Weaver (of Duke University) have made contributions. Mail Portlet was free under the BSD License upon original contribution and since then has converted to an Apache 2.0 license per Jasig. The MailPortlet is a collaborative open-source project whose source control, wiki, and project tracking is hosted by Jasig.
...
Code Block |
---|
svn co https://www.ja-sig.org/svn/sandbox/MailPortlet/tags/rel-2.0.0-alpha-12 |
To get the latest dev version of the source (which may not build and may be buggy and/or unstable):
...
Warning |
---|
Note that version 2.0.0-alpha-1 2 has not been tested with CAS authentication, so it likely needs additional work. |
...
Starting with MailPortlet v2.0.0-alpha-12, we're trying our best to use some sort of uPortal standard styling that would be most compatible with existing and custom skins.
...
In addition, if you don't have the following JSR-168 PLT.C classes defined (the "portlet-*" classes), you might want to define them to suit your skin's needs. In older versions of uPortal these classes were defined per portlet in the skin, like cartoon_portlet.css in uPortal 2.5.3.1. In comparison, the default skin has a dedicated CSS file in the skin jsr168_portlet_spec.css in uPortal 3.1.1. Here are the portlet-* CSS classes it uses as of 2.0-alpha-12:
- portlet-msg-info
- portlet-msg-error
- portlet-form-button
- portlet-section-header
- portlet-section-subheader
- portlet-form-field-label
...
Code Block |
---|
# MailPortlet messages # All entries for CredentialsServiceManager in WEB-INF/context/portlet/mailsecurity.xml should have corresponding # (keyname).description defined. casProxyCredentialsService.description=Use username/password from CAS encryptedCredentialsService.description=Password encrypted and username/password stored in database userInfoCredentialsService.description=Use logged-in user's username/password casProxyCredentialsService.description=Use username/password from CAS # This is the date format used for messages sent today's date and sent prior to today's date # see: http://java.sun.com/j2se/1.5.0/docs/api/java/util/Formatter.html#dt dateFormatSentTodaydateFormatNotSentToday=%tD %tl:%tM %tp dateFormatNotSentTodaydateFormatSentToday=%tD %tl:%tM %tp # Miscellaneous account=Account accountNotSavedBadFormData=Account not saved. Please fix the errors below. add=Add addAccount=Add Account addModifyAccounts=Add/Modify Accounts addOrModifyAccounts=Add/Modify Accounts cancel=Cancel cannotAddFixedMailAccount=You cannot add this type of account. cannotDeleteFixedMailAccount=You cannot delete this type of account. cannotEditFixedMailAccount=You cannot edit this type of account. configuration=Configuration createAccount=Create Account deletecreateAccountFormBottomNote= createAccountFormButtonsNote=Remove deleteAccountcreateAccountFormTopNote=RemoveIf you Accountneed deleteAccountConfirm=Thisassistance willfilling removeout this mailform, accountplease fromcontact your mailSystem portletAdministrator preferences. or Internet Service Provider. delete=Remove deleteAccount=Remove Account deleteAccountFormBottomNote= deleteAccountFormButtonsNote=This will remove this account from your preferences. Are you sure? deleteAccountFormTopNote= delim= > displayName=Name of Account editdisplayNameHelp=Edit editHelp=Notes: For some types of accounts, the username may need to be the full email address. The Name of Account is the text that will show up in the tab (the tab's name). editThisAccount=Edit this account host=Host link=Webmail URLThe name by which you would like to refer to this account (for example, "My Account"). edit=Edit editThisAccount=Click here to edit your mail account information. host=Incoming Server hostHelp=The name of your incoming server (for example, mail.example.net). link=Webmail URL linkHelp=Your mail provider's webmail link, if it has one (for example, https://webmail.example.net/). mail=Mail moreActions=More Actions myAccounts=My Accounts noAccountsFound=No accounts found. noDate=(No Date) noEditOrDelete=(May Not Edit/Remove) noMailAccount=No Mail Account noSender=(No Sender) noSubject=(No Subject) password=Password portpasswordHelp=Port protocol=Protocol refreshAccount=Refresh Account resetPreferences=Reset Preferences resetPreferencesConfirm=This will reset your mail portlet preferences to the defaults, removing any accounts you have created or changes you have made. Are you sure? returnToMailView=Return to Mail save=Save updateAccount=Update Account username=Username #The password for your incoming mail server. port=Port portHelp=Your incoming mail server's port number. Usually is 110 for POP, 143 for IMAP, 993 for Secure IMAP (SSL), or 995 for Secure POP3 (SSL). protocol=Protocol protocolHelp=You can often guess this by looking at the incoming server name which may start with 'pop' or 'imap'. Please attempt to use the secure version, and default to the other if the secure version does not work. refreshAccount=Refresh Account resetPreferences=Reset Preferences resetPreferencesFormBottomNote= resetPreferencesFormButtonsNote=This will reset your mail portlet preferences to the defaults, removing any accounts you have created or changes you have made. Are you sure? resetPreferencesFormTopNote= returnToMailView=Return to Mail save=Save updateAccount=Update Account updateAccountFormBottomNote=Notes: For some types of accounts, the username may need to be the full email address. The Name of Account is the text that will show up in the tab (the tab's name). updateAccountFormButtonsNote= updateAccountFormTopNote= username=Username usernameHelp=The username for your incoming mail server. For some accounts (like Gmail), the username may need to be the full email address. # Form Validation Errors mailAccount.displayName.required=Name of account is required. mailAccount.host.required=Incoming server is required. mailAccount.link.required=Webmail URL is required. mailAccount.mailServerProtocol.required=Protocol is required. mailAccount.name.required=Name is required. mailAccount.ordinal.required=Ordinal is required. # Bind errors typeMismatch.mailAccount.port=Port is required and must be an integer. # Service Errors authenticationFailedException=Failed to authenticate to mail server. Please ensure your account information is correct. The error was: {0} folderClosedException=The mail folder was closed while attempting to get mail. Please try again later. folderNotFoundException=The specified mail folder was not found. Please ensure your account information is correct. messageRemovedException=The message we were attempting to read was removedThe message we were attempting to read was removed. Please try a refresh or try again later. messagingException=There was a problem retrieving mail from the server. Please try a refresh or try again lateragain later and ensure your account information is correct. noSuchProviderException=The configured protocol is not supported by this portlet. problemRetrievingMail=Problem retrieving mail. storeClosedException=The mail store was closed while attempting to get mail. Please try again later or ensure your account information is correct. messagingExceptiontimeoutException=ThereTimed wasout awaiting problemon retrievingserver mail from the serverto respond. Please trycheck againyour laterusername and ensurepassword, youror accounttry informationagain is correctlater. unknownErrorGettingMail=There was an unexpected error while attempting to retrieve mail from the server. Please try again later and ensure your account information is correct. unknownMailCredentialsService=Unknown Mail Credentials Service # Protocols. The keys should correspond to JavaMail providers (javamail.providers). See: # http://java.sun.com/products/javamail/FAQ.html imap=IMAP imaps=Secure IMAP (Using SSL) imappop3=IMAPPOP pop3s=Secure POP (Using SSL) pop3=POP |
Please see the corresponding properties file in the tag of the release you are using for additional detail, as more may be added or keys could change during further development.
...
Code Block |
---|
... <bean name="mailService" class="org.jasig.portlet.mail.service.impl.MailServiceImpl"> ... <property name="availableProtocols"> <list> <!-- Be sure to include i18n messages for each of these, and this indicates the display order of options as display in the custom create/update view for a mail account. --> <value>imaps</value> <value>imap</value> <!-- Commenting these out because if the user has a ton of email it ties things up --> <!-- <value>pop3s</value> <value>pop3</value> --> </list> </property> ... </bean> ... |
If you add new providers (protocols), you need to add them to your i18n messages file for your locale, for example: WEB-INF/classes/org/jasig/portlet/mail/i18n/MailPortlet_en_US.properties. Here are the labels for the ones provided by default:
...
Create the following file at the root of some new project directory you create. Note that this is only an example and you should tailor the groupId and artifactId up top and the finalName to meet the needs of your environment. Please change the versions to match the version of the Jasig MailPortlet as defined in that version's pom.xml (so, for example, you should change the version on the the MailPortlet dependency war to 2.0-alpha-1 2 for that tag or 2.0-SNAPSHOT for trunk).
Code Block |
---|
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>edu.example.university</groupId> <artifactId>mail</artifactId> <packaging>war</packaging> <name>Mail</name> <version>yourversionnumbergoeshere</version> <dependencies> <dependency> <groupId>org.jasig.portlet</groupId> <artifactId>MailPortlet</artifactId> <type>war</type> <version>2.0.0-alpha-1<2</version> </dependency> </dependencies> <build> <finalName>mailportlet</finalName> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-war-plugin</artifactId> <version>2.0</version> </plugin> </plugins> </build> </project> |
...
Code Block |
---|
mkdir -P src/main/resources/ mkdir -P src/main/webapp/WEB-INF/context/portlet mkdir -P src/test |
Put the custom datasource.properties and log4j.properties files that you want to use into:
...
Put the Spring config files (mailsecurity.xml and mailservers.xml usually) that you want to use into:
...