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.