Dr. Hornecker - Software-Entwicklung und IT-Dienstleistungen - Freiburg

 

Seltsame Fehler bei eingehenden Emails in Diskussionslisten

Dienstag, 25. März 2008 14:24:00
Bei einem internen Projekt soll es Kunden ermöglicht werden, Bugmeldungen per Email an den Sharepoint zu senden, der diese in einer Diskussionsliste sammelt und mit aufgebohrten EventHandlern als Ticketsystem fungieren soll.
 
Dabei ist nun ein seltsamer Fehler aufgetreten:  Schicke ich von einem meiner Emailaccounts (die nicht mit meinem Sharepoint-Account verknüpft sind) eine hmtl-Mail mit Textanhang, wird diese verdreifacht, der Anhang geht verloren und mein Event (ItemAdded) feuert nicht.
 
Dies passiert aber nur bei einigen wenigen Absendern, andere Mails im html-Format mit Textanhang kommen problemlos an und werden ebenso problemlos verarbeitet. Auch andere Kombinationen (mit / ohne hmtl, andere Anhänge) funktionieren bei meinem Emailaccount, dagegen wurde bei einem unserer Kunden eine html-Mail mit Word-Anhang nicht angenommen, sondern dreifach ohne Event in die Diskussionsliste übernommen.
 
In Dokumentarbibliotheken klappt das alles. Auf einer anderen WebApplication (ohne Event-Override) konnte ich den Fehler in einer Diskussionsliste dagegen reproduzieren.
 
Die einzige Fehlermeldung, die ich dazu finde, steht im Sharepoint-Log:
 
"Error in resolving user 'emailadresse@domain.tld: System.ComponentModel.Win32Exception: Es konnte keine Verbindung mit dem Server für den globalen Katalog hergestellt werden.
at Microsoft.SharePoint.Utilities.SPActiveDirectoryDomain.GetDirectorySearcher()    
at Microsoft.SharePoint.WebControls.PeopleEditor.SearchFromGC(SPActiveDirectoryDomain domain, String strFilter, String[] rgstrProp, Int32 nTimeout, Int32 nSizeLimit, SPUserCollection spUsers, ArrayList& rgResults)    
at Microsoft.SharePoint.Utilities.SPUserUtility.ResolveAgainstAD(String input, Boolean inputIsEmailOnly, SPActiveDirectoryDomain globalCatalog, SPPrincipalType scopes, SPUserCollection usersContainer, TimeSpan searchTimeout)    
at Microsoft.SharePoint.Utilities.SPActiveDirectoryPrincipalResolver.ResolvePrincipal(String input, Boolean inputIsEmailOnly, SPPrincipalType scopes, SPPrincipalSource sources, SPUserCollection usersContainer)    
at Microsoft.SharePoint.Utilities.SPUtility.ResolvePrincipalInternal(SPWeb web, SPWebApplication webApp, Nullable`1 urlZone, String input, SPPrincipalType scopes, SPPrincipalSource sources, SPUserCollection usersContainer, Boolean inputIsEmailOnly, Boolean alwaysAddWindowsResolver)."
 
Scheinbar wird also der jeweilige Email-Absender gegen das AD des Servers zu validieren versucht, obwohl die Option "Email von allen Absendern akzeptieren" aktiviert ist. Und das auch nur von einigen wenigen Adressen in bestimmten Konstellationen.
 
Das ganze passiert auch, während das Item aus der Email in die Liste eingebaut werden soll, also noch bevor mein Event überhaupt feuern soll. Wird der ItemAdding-Prozess als Cancel = true gekennzeichnet und nicht korrekt aufgeräumt?
 
Ich werde mal weiter nach möglichen Fehlern und Lösungen dazu suchen und diese dann auch hier posten.
 
:/
Für diesen Eintrag sind keine Kommentare mehr erlaubt
http://hornecker.eu/seltsame-fehler-bei-eingehenden-emails-in-diskussionslisten.aspx