none
Trouble with notifications - failed schema validation RRS feed

  • Question

  • I am trying to send an Email notification from a workflow and am getting the following error:

    System.Web.Services: System.Web.Services.Protocols.SoapException: The request failed schema validation: The element 'Message' in namespace 'http://schemas.microsoft.com/exchange/services/2006/types' has invalid child element 'Header' in namespace 'http://schemas.xmlsoap.org/soap/envelope/'. List of possible elements expected: 'Sensitivity, Body, Attachments, DateTimeReceived, Size, Categories, Importance, InReplyTo, IsSubmitted, IsDraft, IsFromMe, IsResend, IsUnmodified, InternetMessageHeaders, DateTimeSent, DateTimeCreated, ResponseObjects, ReminderDueBy, ReminderIsSet, ReminderMinutesBeforeStart, DisplayCc, DisplayTo, HasAttachments, ExtendedProperty, Culture, Sender, ToRecipients, CcRecipients, BccRecipients, IsReadReceiptRequested, IsDeliveryReceiptRequested, ConversationIndex, ConversationTopic, From, InternetMessageId, IsRead, IsResponseRequested, References, ReplyTo' in namespace 'http://schemas.microsoft.com/exchange/services/2006/types'.

       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.ResourceManagement.WebServices.Mail.Exchange.ExchangeServiceBinding.CreateItem(CreateItemType CreateItem1)

       at Microsoft.ResourceManagement.Mail.ExchangeProxy.ExecuteCreateItem(CreateItemType request)

       at Microsoft.ResourceManagement.Mail.ExchangeServer.SendNotification(NotificationMessage message)

       at Microsoft.ResourceManagement.Mail.NotificationMessage.Send(Int32 timeoutInMilliseconds)

       at Microsoft.ResourceManagement.Workflow.Hosting.SendMailWorkItemProcessor.SendMailMessage(MessageContent messageContent, Int32 timeoutInMilliseconds)

       at Microsoft.ResourceManagement.Workflow.Hosting.SendMailWorkItemProcessor.ProcessWorkItem(WorkItem workItem

    It appears that the Exchange web service doesn't like the schema FIM is presenting. Anyone seen this? Is there a trace setting that will dump out the call to the Exchange server?

    I have tested that I can hit https://fqdn_server/ews/exchange.asmx from the FIM Service account and the certificate is correct.



    • Edited by Rex Wheeler Saturday, February 22, 2014 2:50 AM
    Saturday, February 22, 2014 2:49 AM

Answers

  • After getting product support involved, it turns out that we were pointing the FIM Service at an Exchange 2013 server but the mailbox had been created on and was physically stored on an Exchange 2010 server. By pointing FIM at the 2010 server or by trying to send notifications to mailboxes on the 2013 server, we could make it work. Moving the mailbox from the 2010 server to the 2013 server did not solve the problem. It had something to do with mailboxes that were originally created on a 2010 server but were accessed over EWS from a 2013 server.

    It also was not a FIM issue. We used an EWS diagnostic tool (EWSEditor) to test outside of FIM and saw the same results.

    The final result to get the specific user working for notifications was to create a new mailbox for them on the Exchange 2013 server.

    • Marked as answer by Rex Wheeler Monday, April 7, 2014 11:10 PM
    Monday, April 7, 2014 11:10 PM

All replies

  • Never encountered this one, does the Request show anything of interest? Do you get this failure even if you use out of the box email activities?

    One way to get a log dump could be to install the PowerShell WF activity and use a PS script to extract the request parameters

    http://www.integrationtrench.com/2013/09/installing-fim-powershell-workflow.html
    • Edited by kmittal82 Sunday, February 23, 2014 12:30 PM
    Sunday, February 23, 2014 12:29 PM
  • This is using the out of the box notification activity. As a simple test case I have an MPR that fires when an attribute is updated, the MPR runs an action workflow with one notification activity. That notification activity sends an email to a fixed identity (which has a mailbox) with an email template containing no attribute substitutions. It is a simple as is possible. The request history shows the single attribute update as expected and has a status of PostProcessingError. The request workflow remarks contain the above error and stack trace.
    Sunday, February 23, 2014 6:01 PM
  • Can't think of any reason, I'd suggest checking your FIM version just to make sure there is no known bug in it relating to the exchange error?
    Monday, February 24, 2014 10:47 PM
  • Rex,

    If you have recently updated your FIM Service Schema, its worth making sure all FIM Service instances have loaded the same schema.

    Best way you can have them reload schema is by restarting the FIM Service on all nodes.


    Thanks,

    Jameel Syed | Identity & Security Strategist | jameel.syed@credexo.com | Simplified Identity and Access Management


    Tuesday, February 25, 2014 8:23 AM
  • Hi Jameel,

    Thanks for the suggestion, but in this case there is only one FIM Service instance and it has been restarted several times.

    Thanks,

    Rex

    Tuesday, February 25, 2014 7:52 PM
  • After getting product support involved, it turns out that we were pointing the FIM Service at an Exchange 2013 server but the mailbox had been created on and was physically stored on an Exchange 2010 server. By pointing FIM at the 2010 server or by trying to send notifications to mailboxes on the 2013 server, we could make it work. Moving the mailbox from the 2010 server to the 2013 server did not solve the problem. It had something to do with mailboxes that were originally created on a 2010 server but were accessed over EWS from a 2013 server.

    It also was not a FIM issue. We used an EWS diagnostic tool (EWSEditor) to test outside of FIM and saw the same results.

    The final result to get the specific user working for notifications was to create a new mailbox for them on the Exchange 2013 server.

    • Marked as answer by Rex Wheeler Monday, April 7, 2014 11:10 PM
    Monday, April 7, 2014 11:10 PM
  • I am facing the same issue, but in my case mimservice is pointing to Exchange 2016 and physically the mailbox is placed in Exchange 2010. I have activity in the workflow to send the email. and on sending the email to the users I get the same error. mentioned above. Kindly can you let me know which mailbox I need to transfer to exchange 2016.
    • Edited by Sabih A Khan Wednesday, September 27, 2017 5:43 PM
    Wednesday, September 27, 2017 5:41 PM