locked
Direct Bound Orchestration Correlation RRS feed

  • Question

  • I have an orchestration that I want to expose as a request-reply receive location (WCF).  I would like to use direct message box binding for the actual orchestration (defined by filter expressions on the receive port).  In the book I'm reading (SOA best practices) it says that I need to create a correlation set that contains BTS.CorrelationToken, BTS.EpmRPCorrelationToken, BTS.IsRequestResponse, BTS.ReqRespTransmitPipelineID, and BTS.RouteDirectToTP.  Then on the Send Port (actually the Send message shape) set the Intializing Correlation Sets to this.

    I'm getting an error in the messagebox that states that these variables are not promoted.  Can someone tell me what I'm doing wrong?

    Here is a summary:

    1 orchestration with direct messagebox bound logical ports (receive port = filtering epxression, send port)

    1 physical receive location (WCF binding, request-response)

     

    Thanks in advance,

    J

    Thursday, January 13, 2011 2:34 PM

Answers

  • Thanks for the help.  I skipped a step but I have it working now.

    I added a MessageAssignment shape and copied the request message variables to my response variables.  It appears that they are now available for correlation.

    Ex of Assignment shape

    infoResponse(*) = infoRequest(*);
    infoResponse(BTS.RouteDirectToTP) = true;

     

    Works great!

    • Proposed as answer by amsullu Thursday, January 13, 2011 4:41 PM
    • Marked as answer by jshurst Thursday, January 13, 2011 8:02 PM
    Thursday, January 13, 2011 3:58 PM

All replies

  • step 1: set the value in the expression shape

    step 2: create correlation type of those values

    step 3: initialize the correlation set following the type created above in send port

    • Proposed as answer by amsullu Thursday, January 13, 2011 5:18 PM
    Thursday, January 13, 2011 3:39 PM
  • Thanks for the help.  I skipped a step but I have it working now.

    I added a MessageAssignment shape and copied the request message variables to my response variables.  It appears that they are now available for correlation.

    Ex of Assignment shape

    infoResponse(*) = infoRequest(*);
    infoResponse(BTS.RouteDirectToTP) = true;

     

    Works great!

    • Proposed as answer by amsullu Thursday, January 13, 2011 4:41 PM
    • Marked as answer by jshurst Thursday, January 13, 2011 8:02 PM
    Thursday, January 13, 2011 3:58 PM