locked
Suspending and Resuming Workflows RRS feed

  • Question

  • I've built a simple workflow that calls a WCF service.  When I shut down the destination WCF service, I expect my WF service to hit an exception and suspend itself.  I finally got that scenario to work (after injecting a transaction that forced a persistence point), but now I can't resume or terminate the suspended message.

    if I "terminate" the suspended message, I got:
    (1) 'Terminate' command failure:
    System.ServiceModel.ProtocolException: Content Type application/soap+xml; charset=utf-8 was not supported by service http://server/WFService/SayHelloService.xamlx/System.Activities.DurableInstancing_IWorkflowInstanceManagement.  The client and service bindings may be mismatched. ---> System.Net.WebException: The remote server returned an error: (415) Cannot process the message because the content type 'application/soap+xml; charset=utf-8' was not the expected type 'text/xml; charset=utf-8'..
       at System.Net.HttpWebRequest.GetResponse()
       at System.ServiceModel.Channels.HttpChannelFactory.HttpRequestChannel.HttpChannelRequest.WaitForReply(TimeSpan timeout)
       --- End of inner exception stack trace ---

    After noticing the mismatch, I switched my WF service to use an WsHttp binding instead of the default BasicHttp binding.  However, now when I try and resume a suspended workflow, I get this:
    (1) 'Resume' command failure:
    System.ServiceModel.Security.MessageSecurityException: An unsecured or incorrectly secured fault was received from the other party. See the inner FaultException for the fault code and detail. ---> System.ServiceModel.FaultException: The message could not be processed because the action 'http://schemas.datacontract.org/2008/10/WorkflowServices/IWorkflowInstanceManagement/TransactedUnsuspend' is invalid or unrecognized


    Are there particular security settings or something else that must be in place to be able to resume a suspended workflow?  I'm sure that I'm missing something simple, but I'm stuck.
    Wednesday, December 9, 2009 10:29 PM

Answers

  • Hi Richard,

    Can you try one thing
    Remove the net.pipe on the WF application
    So for the WF application go to the advanced settings In the enabled proptocls have just http. instead of http,net.pipe

    Dont change the setting at the site level
    Now try terminating/resuming this instance.
    I was able to reproduce the error you are seeing and was able to terminate the instance after the above step.
    We are investigating further let us know if this works.

    Thanks
    --Vikram
    Thursday, December 10, 2009 7:15 AM

All replies

  • Can you try enabling net.pipe on the worflow service and the site

    Add the net.pipe binding on the web site hosting workflow services, and enable the net.pipe protocol on the application hosting workflow services.
    To add the net.pipe binding to a website
    1. In IIS Manager, select the website.
    2. From the Actions pane, click Edit Bindings.
    3. Click Add.
    4. Select net.pipe, and then and enter an asterisk (*) for the Binding Information.
    To enable the net.pipe protocol on an application
    1. In IIS Manager, select the application.
    2. From the Actions pane, click Advanced Settings.
    3. In the Enabled Protocols box, update the text to include net.pipe. Separate protocols with a comma. For example, the value should be http,net.pipe.

    Thanks
    --Vikram
    Thursday, December 10, 2009 2:36 AM
  • Hi Vikram,

    I've definitely enabled net.pipe on botht the website and application's enabled protocols.  I would have thought if I was missing that, that the error would provide such a clue.

    Other thoughts?
    Thursday, December 10, 2009 3:54 AM
  • Hi Richard,

    Can you try one thing
    Remove the net.pipe on the WF application
    So for the WF application go to the advanced settings In the enabled proptocls have just http. instead of http,net.pipe

    Dont change the setting at the site level
    Now try terminating/resuming this instance.
    I was able to reproduce the error you are seeing and was able to terminate the instance after the above step.
    We are investigating further let us know if this works.

    Thanks
    --Vikram
    Thursday, December 10, 2009 7:15 AM
  • Wow, that was it.  I still have a couple that are suspended but won't resume, but those might be ones I had screwed up royally anyway.

    So is this considered a bug or a feature?

    Either way, I GREATLY appreciate that help.
    Thursday, December 10, 2009 1:36 PM
  • We are investigating the root cause of the issue.
    For the ones that wont resume, do they just remain in resuming state.

    Thanks
    --Vikram

    Friday, December 11, 2009 2:52 AM
  • They have a pending state of "resuming" but then reset and go back to staying suspended with no "pending state."
    Friday, December 11, 2009 9:01 PM