web
You’re offline. This is a read only version of the page.
close
Skip to main content

Notifications

Announcements

No record found.

Community site session details

Community site session details

Session Id :
Microsoft Dynamics CRM (Archived)

CRM E-mail router/Exchange 2010

(0) ShareShare
ReportReport
Posted on by 445

Hi guys

Got a problem configuring CRM v4 (Rollup 8) with Exchange 2010.  Having read a great deal about configuring these two products, I'm stumbling in two areas:

1. I've diabled SSL on my EWS virtual directory as mentioned on a number of forums.  However, having done this, our users are no longer able to use Out of Office and are continually prompted for authentication when running Outlook.  So it seems that SSL is going to have to be switched back on. Even with it switched off, while the test succeeded within the Email router configurator, there were still errors in the event log as below:

26234 - The E-mail Router service could not process a provider work item using assembly: Microsoft.Crm.Tools.EmailProviders.dll and class: Microsoft.Crm.Tools.Email.Providers.ExchangePollingMailboxProvider. System.Net.WebException: Unable to connect to the remote server ---> System.Net.Sockets.SocketException: Only one usage of each socket address (protocol/network address/port) is normally permitted 10.15.0.8:80
   at System.Net.Sockets.Socket.DoConnect(EndPoint endPointSnapshot, SocketAddress socketAddress)
   at System.Net.Sockets.Socket.InternalConnect(EndPoint remoteEP)
   at System.Net.ServicePoint.ConnectSocketInternal(Boolean connectFailure, Socket s4, Socket s6, Socket& socket, IPAddress& address, ConnectSocketState state, IAsyncResult asyncResult, Int32 timeout, Exception& exception)
   --- End of inner exception stack trace ---
   at System.Web.Services.Protocols.WebClientProtocol.GetWebResponse(WebRequest request)
   at System.Web.Services.Protocols.HttpWebClientProtocol.GetWebResponse(WebRequest request)
   at System.Web.Services.Protocols.SoapHttpClientProtocol.Invoke(String methodName, Object[] parameters)
   at Microsoft.Crm.Tools.Email.Providers.ExchangeServiceBinding.FindFolder(FindFolderType FindFolder1)
   at Microsoft.Crm.Tools.Email.Providers.ExchangeWSConnector.FindFolderId(String folderName)
   at Microsoft.Crm.Tools.Email.Providers.ExchangeWSConnector.MoveMessage(ExchangeEmailMessage exchangeEmailMessage, String folderName)
   at Microsoft.Crm.Tools.Email.Providers.ExchangePollingMailboxProvider.MoveMessage(EmailMessage emailMessage)
   at Microsoft.Crm.Tools.Email.Providers.ExchangePollingMailboxProvider.MoveMessageIfNeeded(Exception e, EmailMessage emailMessage)
   at Microsoft.Crm.Tools.Email.Providers.ExchangePollingMailboxProvider.HandleAcceptMessageError(Exception e, EmailMessage emailMessage)
   at Microsoft.Crm.Tools.Email.Providers.CrmPollingMailboxProvider.Run()
   at Microsoft.Crm.Tools.Email.Agent.ServiceCore.ExecuteProviderWork(Object providerQueueRequestObject)

 2. With SSL switched on, which it is by default and therefore presumably correct as far as Exchange is concerned, when running the Test in the email router configurator, it fails and depending on configuration have two different scenarios:

With Incoming profile referencing my signed site of mail.vistasupport.com, the test fails with Proxy authentication required

With Incoming profile referencing https://<servername>/ews/exchange.asmx then I get the following error:

"Incoming Status: Failure - The underlying connection was closed: Could not establish trust relationship for the SSL/TLS secure channel. The remote certificate is invalid according to the validation procedure"

which at least makes sense re the certificate on the site!

 

So, how do I configure CRM to connect to Exchange 2010 - do I need SSL of for EWS or on?

Do I need the certificate on the site to reference my internal servername as well as the external names?

Any help appreciated!

Thanks

Paul

*This post is locked for comments

I have the same question (0)
  • alf Profile Picture
    17,915 on at

    Hi Paul,

    Do you have ur 8 in your email router too?  I'd recommend going to 9 or 10. 

    Here's a blog on configuring it.  SSL is optional.

    http://blogs.msdn.com/crm/archive/2009/12/21/how-to-configure-microsoft-dynamics-crm-4-0-e-mail-router-on-premise-with-microsoft-exchange-server-2010.aspx

     

  • Paul Taylor Profile Picture
    445 on at

    Thanks Alex, already seen that doc and have run through it with no luck.

    I've applied RU9 for server, SRS and email router now. All of these are on the same server, should I install the Email router on my Exchange server?

    In addition, after installing Exch2010 RU3 and CRM 4 RU9, along with a configuration on our firewall, I now have the CRM Email router configuration tool testing successfully - no errors within that tool.  However, my event viewer is a whole different story!  It is being bombarded with errors from the CRM Email router!  There are 3 different errors, which I will summarise here at the top of the message and then past the full error messages lower.

    After resarting the CRM email service I get error sequence as below:
    1. a few errors of ID 0, with the error message being 'There is an error in XML document'.
    2. After that, I get a few warnings about certain emails not matching records which I assume is correct
    3. Then I get a mixture of two errors; one is event id 0 - Unable to connect to the remote server ---> System.Net.Sockets.SocketException: Only one usage of each socket address (protocol/network address/port) is normally permitted 10.15.0.23:5555 (this is the IP address of the CRM server, which also houses the Email router)
    The other error message is ID 0, The request failed with HTTP status 401: Unauthorized.

    Any help appreciated!

    Event error for - 1. There is an error in XML document
    #27938 - An error occurred while checking for e-mail messages to process in mailbox Georgina.Sinfield@vistasupport.com. System.InvalidOperationException: There is an error in XML document (488, -1770). ---> System.Xml.XmlException: '?', hexadecimal value 0xFFFF, is an invalid character. Line 488, position -1770.
       at System.Xml.XmlTextReaderImpl.Throw(Exception e)
       at System.Xml.XmlTextReaderImpl.Throw(String res, String[] args)
       at System.Xml.XmlTextReaderImpl.Throw(Int32 pos, String res, String[] args)
       at System.Xml.XmlTextReaderImpl.ThrowInvalidChar(Int32 pos, Char invChar)
       at System.Xml.XmlTextReaderImpl.ParseNumericCharRefInline(Int32 startPos, Boolean expand, BufferBuilder internalSubsetBuilder, Int32& charCount, EntityType& entityType)
       at System.Xml.XmlTextReaderImpl.ParseText(Int32& startPos, Int32& endPos, Int32& outOrChars)
       at System.Xml.XmlTextReaderImpl.ParseText()
       at System.Xml.XmlTextReaderImpl.ParseElementContent()
       at System.Xml.XmlTextReaderImpl.Read()
       at System.Xml.XmlTextReader.Read()
       at System.Xml.XmlReader.ReadStartElement()
       at Microsoft.Xml.Serialization.GeneratedAssembly.XmlSerializationReaderExchangeServiceBinding.Read114_BodyType(Boolean isNullable, Boolean checkType)
       at Microsoft.Xml.Serialization.GeneratedAssembly.XmlSerializationReaderExchangeServiceBinding.Read198_MessageType(Boolean isNullable, Boolean checkType)
       at Microsoft.Xml.Serialization.GeneratedAssembly.XmlSerializationReaderExchangeServiceBinding.Read378_ArrayOfRealItemsType(Boolean isNullable, Boolean checkType)
       at Microsoft.Xml.Serialization.GeneratedAssembly.XmlSerializationReaderExchangeServiceBinding.Read387_ItemInfoResponseMessageType(Boolean isNullable, Boolean checkType)
       at Microsoft.Xml.Serialization.GeneratedAssembly.XmlSerializationReaderExchangeServiceBinding.Read406_ArrayOfResponseMessagesType(Boolean isNullable, Boolean checkType)
       at Microsoft.Xml.Serialization.GeneratedAssembly.XmlSerializationReaderExchangeServiceBinding.Read426_GetItemResponseType(Boolean isNullable, Boolean checkType)
       at Microsoft.Xml.Serialization.GeneratedAssembly.XmlSerializationReaderExchangeServiceBinding.Read533_GetItemResponse()
       at Microsoft.Xml.Serialization.GeneratedAssembly.ArrayOfObjectSerializer144.Deserialize(XmlSerializationReader reader)
       at System.Xml.Serialization.XmlSerializer.Deserialize(XmlReader xmlReader, String encodingStyle, XmlDeserializationEvents events)
       --- End of inner exception stack trace ---
       at System.Xml.Serialization.XmlSerializer.Deserialize(XmlReader xmlReader, String encodingStyle, XmlDeserializationEvents events)
       at System.Xml.Serialization.XmlSerializer.Deserialize(XmlReader xmlReader, String encodingStyle)
       at System.Web.Services.Protocols.SoapHttpClientProtocol.ReadResponse(SoapClientMessage message, WebResponse response, Stream responseStream, Boolean asyncCall)
       at System.Web.Services.Protocols.SoapHttpClientProtocol.Invoke(String methodName, Object[] parameters)
       at Microsoft.Crm.Tools.Email.Providers.ExchangeServiceBinding.GetItem(GetItemType GetItem1)
       at Microsoft.Crm.Tools.Email.Providers.ExchangeWSConnector.RetrieveMessage(Object id, ServiceLogger serviceLogger)
       at Microsoft.Crm.Tools.Email.Providers.ExchangePollingMailboxProvider.RetrieveNextMessageInternal()
       at Microsoft.Crm.Tools.Email.Providers.CrmPollingMailboxProvider.RetrieveNextMessage()
       at Microsoft.Crm.Tools.Email.Providers.CrmPollingMailboxProvider.Run()

    For more information, see Help and Support Center at http://go.microsoft.com/fwlink/events.asp.

    Event error for - 3. - Unable to connect to the remote server
    #6511 - An error occurred while checking the e-mail message with subject "CT accounts set up in CRM" in mailbox John.Copeman@vistasupport.com for delivery to http://vrssvrnavision:5555/VistaRetailSupportLimited. System.Net.WebException: Unable to connect to the remote server ---> System.Net.Sockets.SocketException: Only one usage of each socket address (protocol/network address/port) is normally permitted 10.15.0.23:5555
       at System.Net.Sockets.Socket.DoConnect(EndPoint endPointSnapshot, SocketAddress socketAddress)
       at System.Net.Sockets.Socket.InternalConnect(EndPoint remoteEP)
       at System.Net.ServicePoint.ConnectSocketInternal(Boolean connectFailure, Socket s4, Socket s6, Socket& socket, IPAddress& address, ConnectSocketState state, IAsyncResult asyncResult, Int32 timeout, Exception& exception)
       --- End of inner exception stack trace ---
       at System.Web.Services.Protocols.WebClientProtocol.GetWebResponse(WebRequest request)
       at System.Web.Services.Protocols.HttpWebClientProtocol.GetWebResponse(WebRequest request)
       at System.Web.Services.Protocols.SoapHttpClientProtocol.Invoke(String methodName, Object[] parameters)
       at Microsoft.Crm.Sdk.Proxy.CrmService.Execute(Request Request)
       at Microsoft.Crm.Tools.Email.Providers.CrmPollingMailboxProvider.AcceptMessageInternal(EmailMessage emailMessage)
       at Microsoft.Crm.Tools.Email.Providers.ExchangePollingMailboxProvider.AcceptMessageInternal(EmailMessage emailMessage)
       at Microsoft.Crm.Tools.Email.Providers.CrmPollingMailboxProvider.AcceptMessage(EmailMessage emailMessage)
       at Microsoft.Crm.Tools.Email.Providers.CrmPollingMailboxProvider.Run()

    For more information, see Help and Support Center at http://go.microsoft.com/fwlink/events.asp.

    Event error for - 3. - Unable to connect to the remote server
    #27938 - An error occurred while checking for e-mail messages to process in mailbox Richard.Cottrell@vistasupport.com. System.Net.WebException: The request failed with HTTP status 401: Unauthorized.
       at System.Web.Services.Protocols.SoapHttpClientProtocol.ReadResponse(SoapClientMessage message, WebResponse response, Stream responseStream, Boolean asyncCall)
       at System.Web.Services.Protocols.SoapHttpClientProtocol.Invoke(String methodName, Object[] parameters)
       at Microsoft.Crm.Tools.Email.Providers.ExchangeServiceBinding.GetItem(GetItemType GetItem1)
       at Microsoft.Crm.Tools.Email.Providers.ExchangeWSConnector.RetrieveMessage(Object id, ServiceLogger serviceLogger)
       at Microsoft.Crm.Tools.Email.Providers.ExchangePollingMailboxProvider.RetrieveNextMessageInternal()
       at Microsoft.Crm.Tools.Email.Providers.CrmPollingMailboxProvider.RetrieveNextMessage()
       at Microsoft.Crm.Tools.Email.Providers.CrmPollingMailboxProvider.Run()

    For more information, see Help and Support Center at http://go.microsoft.com/fwlink/events.asp.

     

  • Paul Taylor Profile Picture
    445 on at
    OK, I've now got this working by installing the CRM Email router on a server other than the CRM server.  I haven't tried on my Exchange server as I don't really want to put it there, but is there a reason why it wouldn't work on the CRM server itself?

    Where's the recommended location for the email router - CRM server, Exchange server, or another entirely separate server?
  • alf Profile Picture
    17,915 on at

    Hi Paul,

    The email router can be located in any server:  crm, exchange, another server entirely.  We have many implementations that use all scenarios.  I'd say most common for smaller implementations is to have email router right on the crm server.

  • http://.Interactivewebs.com Profile Picture
    on at
    I am with you Paul, We had things working on CRM server, then updated to exchange 2010.... and it all died. We cannot get it going with the exact same problems you reported.

Under review

Thank you for your reply! To ensure a great experience for everyone, your content is awaiting approval by our Community Managers. Please check back later.

Helpful resources

Quick Links

Responsible AI policies

As AI tools become more common, we’re introducing a Responsible AI Use…

Neeraj Kumar – Community Spotlight

We are honored to recognize Neeraj Kumar as our Community Spotlight honoree for…

Leaderboard > 🔒一 Microsoft Dynamics CRM (Archived)

#1
SA-08121319-0 Profile Picture

SA-08121319-0 4

#1
Calum MacFarlane Profile Picture

Calum MacFarlane 4

#3
Alex Fun Wei Jie Profile Picture

Alex Fun Wei Jie 2

Last 30 days Overall leaderboard

Featured topics

Product updates

Dynamics 365 release plans