Upgrade Users and Domains

Upgrade Mailbox

The easiest is to export your JPA Mailbox to a JCR or MailDir Mailbox and then import again.

  • Start James with SMTP/POP3/IMAP4 disabled (to avoid new mails to come while copying mailbox).
  • In jconsole, I invoke the mailboxcopier.copy operation with parameters of "jpa-mailboxmanager", "maildir-mailboxmanager". This will copy all of the mailboxes from the database and store them in maildir format into $JAMES_HOME/var/store/maildir.
  • Shutdown the current James.
  • Unzip the new James version in a separate location.
  • Copy (or move) the current var/store to the new var/store
  • Update the new configuration files to your needs, with SMTP/POP3/IMAP4 disabled.
  • Start up the new version of James.
  • In jconsole, invoke mailboxcopier.copy operation with parameters of "maildir-mailboxmanager", "jpa-mailboxmanager", which will copy the mailboxes from maildir format in $JAMES_HOME/var/store/maildir to the databasae with all of the relationships and UID's created properly.
  • The created uid's and uidvalidity will be new ones, as a consequence that the clients will have to resynch all their folders (flags are kept).
  • Reenable SMTP/POP3/IMAP4.