Hi all,
I get a number of errors due to specific email content that ends up
killing off the delivery threads. Please note that i don't have a
complete understanding of the delivery architecture yet, so i may say
some curious things.
1)
com.ericdaugherty.mail.server.services.smtp.support.Utils.flattenAddresses:
If the addresses collection is empty (no idea why this happens, but it
does), the toAddresses builder is empty, and line 91 dies with this:
Exception in thread "Deliver Standard 4"
java.lang.StringIndexOutOfBoundsException: String index out of range:
-1
at
java.lang.AbstractStringBuilder.deleteCharAt(AbstractStringBuilder.java:
770)
at java.lang.StringBuilder.deleteCharAt(StringBuilder.java:
263)
at
com.ericdaugherty.mail.server.services.smtp.support.Utils.flattenAddresses(Utils.java:
91)
at
com.ericdaugherty.mail.server.persistence.smtp.IncrementalFileIOProccessor.saveIncrement(IncrementalFileIOProccessor.java:
339)
at
com.ericdaugherty.mail.server.persistence.smtp.IncrementalFileIOProccessor.save(IncrementalFileIOProccessor.java:
245)
at
com.ericdaugherty.mail.server.services.smtp.SMTPSenderStandard
$StandardDeliver.run(SMTPSenderStandard.java:300)
at com.ericdaugherty.mail.server.services.smtp.SenderPool
$FastThread.run(SenderPool.java:128)
I'm not sure of the correct way to handle this.
2) Line 161 of
com.ericdaugherty.mail.server.services.smtp.SMTPSenderStandard throws
an NPE if the result of getUser is null. This is caught as a throwable
later on and handled, so not really a big deal, but i'm not sure if
this is what is intended since an explicit check for null happen in
the getUser method itself. The problem is that the processing
continues, and then dies with problem 1).
3) Line 548 of
com.ericdaugherty.mail.server.services.smtp.SMTPSenderStandard dies if
failedAddresses has a length of zero due to the get(0) call.
I hope this information is useful. I haven't tried to correct the
problems myself yet, in hopes that those who know the architecture
better will declare them trivial. If more information is required,
please don't hesitate.
Regards,
Matthew
--
You received this message because you are subscribed to the Google Groups "Java Email Server" group.
To post to this group, send email to
java-ema...@googlegroups.com.
To unsubscribe from this group, send email to
java-email-ser...@googlegroups.com.
For more options, visit this group at
http://groups.google.com/group/java-email-server?hl=en.