BizTalk Server General - Filtering Send Port Messages

This is Interesting: Free IT Magazines  
Home > Archive > BizTalk Server General > November 2004 > Filtering Send Port Messages





You are viewing an archived Text-only version of the thread. To view this thread in it's original format and/or if you want to reply to this thread please [click here]

Author Filtering Send Port Messages
NigelT

2004-11-30, 2:46 am

We are developing a BizTalk solution which needs to process a messages which
comply to a number of different schemas. Ideally we would like to end up
with one web service containing a method for each schema. The majority of
messages can be processed using BizTalk messaging and we have defined a
two-way send port to send messages to a custom Adaptor. This send port also
has a set of inbound and outbound maps defined plus a filter to monitor the
webservice receive port. This works fine, and messages are picked up by
BizTalk and sent to the send port directly. However, there are a couple of
messages which need to be processed by an Orchestration and should not be
sent directly to the send port

What I want to do is only pick up messages for which I have an outbound and
inbound map defined on the send port and let other messages be picked up by
an Orchestration. Is there an easy way to do this via some kind of filter
expression? I guess the alternative is to create a second web service that
is only for messages which have associated orchestration but I want to avoid
this if possible.


Greg Forsythe

2004-11-30, 7:46 am

You can filter on MessageType

(BTS.MessageType = "targetnamespace#rootnode" OR
BTS.MessageType = "targetnamespace2#otherroot ) AND
BTS.ReceivePortName = "InboundWebServicePort"

The send port would subscribe to those messages that it could process.

The orchestration will subscribe to the message type/s declared in its
activate receive shape/s AND to the receive port it is bound to (if it is
bound to a port)

If any message type is declared twice then both subscriptions will be
honoured. i.e. both the send port and orchestration will process the
message.

Greg


"NigelT" <Nigel.Tunnicliffe@Unisys.com> wrote in message
news:cohesj$jgl$1@si05.rsvl.unisys.com...
> We are developing a BizTalk solution which needs to process a messages

which
> comply to a number of different schemas. Ideally we would like to end up
> with one web service containing a method for each schema. The majority of
> messages can be processed using BizTalk messaging and we have defined a
> two-way send port to send messages to a custom Adaptor. This send port

also
> has a set of inbound and outbound maps defined plus a filter to monitor

the
> webservice receive port. This works fine, and messages are picked up by
> BizTalk and sent to the send port directly. However, there are a couple of
> messages which need to be processed by an Orchestration and should not be
> sent directly to the send port
>
> What I want to do is only pick up messages for which I have an outbound

and
> inbound map defined on the send port and let other messages be picked up

by
> an Orchestration. Is there an easy way to do this via some kind of filter
> expression? I guess the alternative is to create a second web service that
> is only for messages which have associated orchestration but I want to

avoid
> this if possible.
>
>



Sponsored Links






Free braindumps | Software forum | Database administration forum

Copyright 2003 - 2008 webservertalk.com