|
| Thanks, Doug. That is helpful. My question falls in the second requirement,
which the orchestration will send requests to multiple subscribers at
runtime.
I figured out a solution based on your idea, I'd really appreciate any comment
A. Create an orchestration that will consume the incoming message, use self
correlated direct binding port to send the message back to the message box.
The orchestration will also promote a flag into the message context
indicating new message is ready.
B. In runtime, each participated web service send port, subscribes to the
particular message type with the ‘ready’ flag
C. Each individual SOAP send port executes its corresponding web service and
then in the receive pipeline, promote the CorrelationToken declared in stepA
D. The orchestration in step A will get notified once the CorrelationToken
is promoted and aggregate the messages afterwards.
"Doug Girard [MSFT]" wrote:
> Tommy,
>
> Will you be always bound to a single web service or do you have the need to
> send to multiple subscribers, each of which you'll need to listen to?
>
> If it's the first, then orchestrations will easily solve this. There are
> logical send ports in the orchestration which you later bind to physical
> send ports. Thus, an admin can change these at anytime without having to
> recompile.
>
> If you have the second requirement, this will take more thought. Here's
> one idea, others feel free to comment. The bottom line is that you'll need
> a stateful orchestration INSTANCE somewhere in the picture. Perhaps you'll
> want to initially route the incoming message to an orchestration which
> appends a unique identifier to the message and initializes a correlation
> set on this GUID before publishing the message back to the Message Box for
> any subscriber to pick up. Then the orchestration will listen to any
> responses which match its correlation set. Be mindful of state management,
> termination conditions, and zombies when designing this.
>
> HTH,
> Doug Girard [MSFT]
>
> Note: This posting is provided "AS IS" with no warranties, and confers no
> rights.
> --------------------
> includes
> supposed
> requirement
> multiple
>
>
|
|