RE: Message Subscription

From: Stephen W. Thomas (StephenWThomas_at_discussions.microsoft.com)
Date: 02/02/05


Date: Tue, 1 Feb 2005 21:41:06 -0800

Hello.

Have you used the Subscription Viewer in the SDK to check and see what
subscriptions are available?

What message type did you define in your Orchestration Port? I think that
is what is causing your problem. Have you thought of accepting the messages
as an Untyped Message? That is, as an XmlDocument. You can always cast it
later on to a schema if you needed to.

You might also want to look at the message context of your failed messages.
Just to see what properties are there and that values they have.

Some other ideas might be to do direct message box binding on the Receive
Port. Then, use BTS. InboundTransportLocation for routing. Just make sure
you change this setting inside the Orchestration or set a custom flag to
processes otherwise when you send the messages it will match the subscription
again.

Hope this helps.

Stephen W. Thomas
http://www.geekswithblogs.net/sthomas

"Michael" wrote:

> I have two schema, both schema share the same root node name and neither has
> a target namespace. Note they're not our schema and we must be able to use
> them in there current form. Ok, its a very simple orchestration, in fact
> almost identical to the solution in that comes with the MQ Adapter SDK. The
> only difference being the ports in my orchesrtation are based on the schema
> type and not XmlDocument. I'm getting the following errors, has anyone else
> solved these problems?
>
> If we run the solution with an XmlReceive on the receive from MQ port then
> we get the following entry in the event log.
>
> "There was a failure executing the receive pipeline:
> "Microsoft.BizTalk.DefaultPipelines.XMLReceive" Source: "XML disassembler"
> Receive Location: "MQS://MQServer/QMgr/QUEUE1" Reason: The disassembler
> cannot retrieve the document specification by using this type: "msg". Either
> the schema is not deployed correctly, or more than one schema is deployed for
> the same message type."
>
> That makes sense as both my deployed schema share the same root node name
> and neither has a namespace. After hunting around a bit I found a solution
> that involves creating a pipeline, adding an xml disassembler, and explicity
> specifying the fully qualified name of the schema in the Document schema
> collection. I have also set the allow unrecognized message property to true.
> I implemented this solution and receive the following entry in the event
> log.
>
> "The Messaging engine failed to process a message submitted by
> adapter:MQSeries Source URL:MQS://MQServer/Qmgr/QUEUE1. Details:Could not
> find a matching subscription for the message. . This error occurs if the
> subscribed orchestration schedule or send port has not been started, or if
> some of the message properties necessary for subscription evaluation have not
> been promoted. Please refer to Health and Activity Tracking tool for more
> detailed information on this failure"
>
> I looked around for a solution to this problem. One being to build a custom
> pipeline component and promote a message type. So I assigned a unqiue
> namespace to our schema and built the disassembler to promote the
> "MessageType" context property. I still got the same error.
>
> Any ideas on what else I can try?



Relevant Pages

  • Re: Subscription problem BTS 2006
    ... Have you tried not specifying the schema on the XmlDisassembler. ... I do have an XmlDisassembler in my custom pipeline and it's Documents ... The orchestration will be subscribing to the MessageType - this is ... You can add additional filters to the subscription by setting filters ...
    (microsoft.public.biztalk.general)
  • Re: Subscription problem BTS 2006
    ... I do have an XmlDisassembler in my custom pipeline and it's Documents ... I also have an XML validator with the same schema. ... The orchestration will be subscribing to the MessageType - this is taken ... You can add additional filters to the subscription by setting filters on ...
    (microsoft.public.biztalk.general)
  • RE: Message Subscription
    ... port to MQ use XmlDocument, just as the MQ Adapter SDK sample does. ... look in the subscription viewer and I see my orchestration with two ... > later on to a schema if you needed to. ...
    (microsoft.public.biztalk.general)
  • Re: How to call a web service that takes no input
    ... It is connected to a port. ... and I am not aware of any subscription ... The orchestration will only start on receipt of a message. ... One way would be to create a dummy input and send to Receive shape. ...
    (microsoft.public.biztalk.general)
  • Re: Subscription problem BTS 2006
    ... Do you have "Routing enabled for failed messages" set on the receive port ... Have you tried not specifying the schema on the XmlDisassembler. ... The orchestration will be subscribing to the MessageType - this is taken ... You can add additional filters to the subscription by setting filters on ...
    (microsoft.public.biztalk.general)

Loading