Thank you Bernd & Pierre for your time and sharing knowledge!

I am not sure why I picked getMessageNumber() instead of getMessageID(),
may be lack of understanding.

I read some where that one of the case for messageID NOT unique is create a
copy of email.

Name is interesting approach. Will check both of these tonight.

Thank you,
Giri


On Tue, Oct 21, 2014 at 4:39 AM, Bernd Waibel <bwai...@intarsys.de> wrote:

> Hello Pierre,
>
> sorry, no, not generated by james. So this is not a james bug.
>
> It seems that a lot of spam senders just do not set the id, and some older
> clients like outlook 2003.
> This is conform to RFC, because the id SHOULD exist. But do not need to.
>
> In our code we use the id, e.g. for logging.
>
> ciao
> Bernd
>
>
> -----Ursprüngliche Nachricht-----
> Von: Pierre Smits [mailto:pierre.sm...@gmail.com]
> Gesendet: Dienstag, 21. Oktober 2014 10:02
> An: James Users List
> Betreff: Re: Does james re-use messageID? [unsigned]
>
> Hi Bernd,
>
> You stated that you see a lot of mails without a message id. Are that
> mails/messages generated by James? Or is the statement to be considered as
> 'in general'?
>
> If it is pertaining to James, then we should consider this a bug and a
> JIRA could be registered.
>
> Regards
>
> Pierre Smits
>
> *ORRTIZ.COM <http://www.orrtiz.com>*
> Services & Solutions for Cloud-
> Based Manufacturing, Professional
> Services and Retail & Trade
> http://www.orrtiz.com
>
> On Tue, Oct 21, 2014 at 8:57 AM, Bernd Waibel <bwai...@intarsys.de> wrote:
>
> > Hi Giri,
> >
> > your question is somehow unclear to me. So I try to clear some things up.
> > There is a "message ID" and a "message number".
> >
> > According to RFC every mail SHOULD have a Header-Field "message-id".
> > (See https://tools.ietf.org/html/rfc2822 Chapter 3.6.4).
> > But "in the wild" we observe a lot of mails without a message id.
> > The "message number" is just the number of a mail in a folder.
> > So if you delete messages in a folder, you may get new message
> > numbers. Or maybe if the get sorted.
> >
> > If you would like to identify a message, you could use message-id, but
> > you could not trust this header field to be set.
> > So we do fix that in our own implementation: (our code, feel free to
> use):
> >         /**
> >          * An id suitable for logging etc.
> >          *
> >          * @param mail
> >          * @return
> >          */
> >         static public String getId(Mail mail) {
> >                 try {
> >                         // rfc2822: every message SHOULD have a
> > "Message-ID:" field.
> >                         // But not need to. Outlook 2003 may miss the id.
> >                         String id = mail.getMessage().getMessageID();
> >                         if (id == null || id.trim().isEmpty())) {
> >                                 id = mail.getName();
> >                         }
> >                         return id;
> >                 } catch (MessagingException e) {
> >                         return mail.getName();
> >                 }
> >         }
> > We use the "getName" as fallback, which ist part of the
> > org.apache.mailet.Mail API.
> > This seems to work good, we did not have mails without a name till now.
> >
> > But the name need NOT to be unique. E.g. if you "copy" a mail in your
> > programm, it may have the same name.
> > To me it seems there is not a "always unique" number.
> > The message-id is very near to "always unique", if it exists.
> > The "name" may be next to that, it seems always to be be there.
> > The "messagenumber" is only temporary unique.
> >
> > Btw: This is not part of "james", is it part of the Java Mail API,
> > developed by Sun, years ago.
> >
> > For the java classes you mentioned, you may have a look at the source
> > code of this classes:
> > javax.mail.Message:
> >     /**
> >      * Get the Message number for this Message.
> >      * A Message object's message number is the relative
> >      * position of this Message in its Folder. Note that the message
> >      * number for a particular Message can change during a session
> >      * if other messages in the Folder are deleted and expunged. <p>
> >      *
> >      * Valid message numbers start at 1. Messages that do not belong
> >      * to any folder (like newly composed or derived messages) have 0
> >      * as their message number.
> >      *
> >      * @return  the message number
> >      */
> >     public int getMessageNumber() {
> >         return msgnum;
> >     }
> >
> >  javax.mail.internet.MimeMessage (extends javax.mail.Message)
> >     /**
> >      * Returns the value of the "Message-ID" header field. Returns
> >      * null if this field is unavailable or its value is absent. <p>
> >      *
> >      * The default implementation provided here uses the
> >      * <code>getHeader</code> method to return the value of the
> >      * "Message-ID" field.
> >      *
> >      * @return     Message-ID
> >      * @exception  MessagingException if the retrieval of this field
> >      *                  causes any exception.
> >      * @see        javax.mail.search.MessageIDTerm
> >      * @since      JavaMail 1.1
> >      */
> >     public String getMessageID() throws MessagingException {
> >         return getHeader("Message-ID", null);
> >     }
> >
> > Good luck,
> > Bernd
> >
> > -----Ursprüngliche Nachricht-----
> > Von: Girivaraprasad Nambari [mailto:girinamb...@gmail.com]
> > Gesendet: Dienstag, 21. Oktober 2014 07:35
> > An: James Users List
> > Betreff: Does james re-use messageID?
> >
> > Hi Everyone,
> >
> > I have observed an interesting scenario today with James messageID, I
> > received few hundred emails and all emails got incremented messageID.
> >
> > Today I deleted few old emails. The emails I received after cleaning
> > up old emails got old message Id's.
> >
> > 1) Does james re-use messageID?
> > If yes, is there anyway we can disable this feature?
> >
> > In my code I am using following statement to retrieve message ID:
> >  MimeMessage msg = (MimeMessage) cMsg;  int messageNumber =
> > msg.getMessageNumber();
> >
> > As per mail specification, shouldn't messagenumber be unique?
> >
> > Any help appreciated.
> >
> > Thank you,
> > Giri
> >
>

Reply via email to