Commons Email
  1. Commons Email
  2. EMAIL-49

[Email] Compatability With JavaMail 1.2

    Details

    • Type: Improvement Improvement
    • Status: Closed
    • Priority: Minor Minor
    • Resolution: Fixed
    • Affects Version/s: Nightly Builds
    • Fix Version/s: None
    • Labels:
      None
    • Environment:

      Operating System: other
      Platform: Other

      Description

      The InternetAddress.validate() method is the only version 1.3 feature of
      JavaMail used in commons-email. Removing its use means that commons-email will
      compile (and tests run) against JavaMail 1.2

      This ticket is as a result of this thread on the user list:

      http://www.mail-archive.com/commons-user%40jakarta.apache.org/msg12817.html

      However some of the assertions I made there were incorrect.

      JavaMail 1.3 introduced the facility to specify a strict=false setting when
      parsing an InternetAddress and a new validate() method to check whether
      a "loosley parsed" InternetAddress was valid.

      I made a mistake in that thread. The Email class uses the following
      constructors:

      InternetAdress(String address, String personal)
      InternetAdress(String address, String personal, String charset)

      These constructors assume the "address" is a valid RFC822 internet address and
      don't "validate" them. Therefore Email as its currently coded is correct to
      then call the validate() method.

      However the following constructor does validate...

      InternetAdress(String address)

      ... and I'm attaching a patch which removes the need to use the validate()
      method.

      However its not quite that simple. Since the validate() method in JavaMail 1.3
      isn't "as strict" as the above constructor - which is compatible with JavaMail
      1.2 - it doesn't validate addresses which contain quotes or '[' at all.
      Therefore applying the patch will make it 1.2 compatible, but also make the
      validation stricter.

        Activity

        No work has yet been logged on this issue.

          People

          • Assignee:
            Unassigned
            Reporter:
            Niall Pemberton
          • Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Development