Subscription problem BTS 2006
Web Server forum
Back To The Forum Home!Search!Private Messaging System

Web Server Talk Web Server Talk > Web Servers reviews > BizTalk Server > BizTalk Server General > Subscription problem BTS 2006




  Last Thread   Next Thread Next
  Show Printable Version Email this Page Subscribe to this Thread      Post New Thread    Post A Reply      

    Subscription problem BTS 2006  
Mikael Östberg


Report This Message To A Moderator Edit/Delete Message


 
06-02-06 12:16 PM

Hello all!

I am migrating a quite small solution from BTS 2004 to BTS 2006 and I have a
problem with a message that can't find it's subscribers.

The Receive location is using MSMQ and recieves messages from a local
private queue. They are to be sent into an orchestration where the inport
takes a message that corresponds to a certain Schema.

The message that arrives looks like this:

<?xml version="1.0" ?>
<ProductUpdate xmlns=http://www.myurl.com/myapp/ProductUpdateSpec.xsd>
...
</ProductUpdate>

The Schema header looks like this:

<?xml version="1.0" encoding="utf-16" ?>
<xs:schema xmlns:b="http://schemas.microsoft.com/BizTalk/2003"
xmlns="http://www.myurl.com/myapp/ProductUpdateSpec.xsd"
targetNamespace=http://www.myurl.com/myapp/ProductUpdateSpec.xsd
version="1.0" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:annotation>
<xs:appinfo>
<b:schemaInfo BizTalkServerEditorTool_Version="1.5"
displayroot_reference="ProductUpdate" standard="XML"
target_namespace="http://www.myurl.com/myapp/ProductUpdateSpec.xsd"
xmlns:b="http://schemas.microsoft.com/BizTalk/2003"
root_reference="ProductUpdate" />
</xs:appinfo>
</xs:annotation>
..
</xs:schema>

I have bound the orchestration to the receive port, receive location and
enlisted and started everything.

The error:
The published message could not be routed because no subscribers were found.
This error occurs if the subscribing orchestration or send port has not been
enlisted, or if some of the message properties necessary for subscription
evaluation have not been promoted. Please use the Biztalk Administration
console to troubleshoot this failure.

When I check the subscription properties for my orchestration, I can see
this:
http://schemas.microsoft.com/BizTal...ies.MessageType ==
http://www.myurl.com/myapp/ProductU...d#ProductUpdate And
http://schemas.microsoft.com/BizTal...s.ReceivePortID ==
{217791FF-1402-4840-A518-9B0306E21B08}

According to me, all this is correct and still the message is not routing
correctly. Why is this?

Thankful for help!

Mikael Östberg







[ Post a follow-up to this message ]



    Re: Subscription problem BTS 2006  
Greg Forsythe


View Ip Address Report This Message To A Moderator Edit/Delete Message


 
06-02-06 12:16 PM

What are the values for these properties in the message. You can use the
admin console to look at the message context of the failed message.
Are you using the right pipeline?

Greg

"Mikael Östberg" <mikael.ostberg-at-intellecta.se> wrote in message
news:OY7nqEjhGHA.4404@TK2MSFTNGP05.phx.gbl...
> Hello all!
>
> I am migrating a quite small solution from BTS 2004 to BTS 2006 and I have
> a
> problem with a message that can't find it's subscribers.
>
> The Receive location is using MSMQ and recieves messages from a local
> private queue. They are to be sent into an orchestration where the inport
> takes a message that corresponds to a certain Schema.
>
> The message that arrives looks like this:
>
> <?xml version="1.0" ?>
> <ProductUpdate xmlns=http://www.myurl.com/myapp/ProductUpdateSpec.xsd>
> ...
> </ProductUpdate>
>
> The Schema header looks like this:
>
> <?xml version="1.0" encoding="utf-16" ?>
> <xs:schema xmlns:b="http://schemas.microsoft.com/BizTalk/2003"
> xmlns="http://www.myurl.com/myapp/ProductUpdateSpec.xsd"
> targetNamespace=http://www.myurl.com/myapp/ProductUpdateSpec.xsd
> version="1.0" xmlns:xs="http://www.w3.org/2001/XMLSchema">
>    <xs:annotation>
>        <xs:appinfo>
>              <b:schemaInfo BizTalkServerEditorTool_Version="1.5"
> displayroot_reference="ProductUpdate" standard="XML"
> target_namespace="http://www.myurl.com/myapp/ProductUpdateSpec.xsd"
> xmlns:b="http://schemas.microsoft.com/BizTalk/2003"
> root_reference="ProductUpdate" />
>         </xs:appinfo>
>    </xs:annotation>
>    ...
> </xs:schema>
>
> I have bound the orchestration to the receive port, receive location and
> enlisted and started everything.
>
> The error:
> The published message could not be routed because no subscribers were
> found.
> This error occurs if the subscribing orchestration or send port has not
> been
> enlisted, or if some of the message properties necessary for subscription
> evaluation have not been promoted. Please use the Biztalk Administration
> console to troubleshoot this failure.
>
> When I check the subscription properties for my orchestration, I can see
> this:
> http://schemas.microsoft.com/BizTal...ies.MessageType ==
> http://www.myurl.com/myapp/ProductU...d#ProductUpdate And
> http://schemas.microsoft.com/BizTal...s.ReceivePortID
> ==
> {217791FF-1402-4840-A518-9B0306E21B08}
>
> According to me, all this is correct and still the message is not routing
> correctly. Why is this?
>
> Thankful for help!
>
> Mikael Östberg
>
>







[ Post a follow-up to this message ]



    Re: Subscription problem BTS 2006  
Mikael Östberg


Report This Message To A Moderator Edit/Delete Message


 
06-02-06 06:14 PM

Thanks for you reply!

I am using a custom pipline with an XML Validator against the schema I have.
I tried to use an XmlPipeline but that wouldn't work. It said something
about not beeing able to handle the message.

Right now, I've lost connection to the machine, so I'm a bit stuck with
that.

But about subscriptions. Can I manually set what properties the
orchestration should listen to? Now it seems like the properties match, but
it still doesn't work which is quite confusing. It would be better i I could
just set that it would listen to a specific receive location. Is that
possible in a receive location bound to orchestration set up..?

Thanks!

::m



"Greg Forsythe" <greg.forsythe@gmail.com> wrote in message
news:ebbhLejhGHA.764@TK2MSFTNGP03.phx.gbl...
> What are the values for these properties in the message. You can use the
> admin console to look at the message context of the failed message.
> Are you using the right pipeline?
>
> Greg
>
> "Mikael Östberg" <mikael.ostberg-at-intellecta.se> wrote in message
> news:OY7nqEjhGHA.4404@TK2MSFTNGP05.phx.gbl... 
have[vbcol=seagreen] 
inport[vbcol=seagreen] 
subscription[vbcol=seagreen] 
==[vbcol=seagreen] 
http://schemas.microsoft.com/BizTal...s.ReceivePortID[vbcol=seagreen] 
routing[vbcol=seagreen] 
>
>







[ Post a follow-up to this message ]



    Re: Subscription problem BTS 2006  
Greg Forsythe


View Ip Address Report This Message To A Moderator Edit/Delete Message


 
06-03-06 12:14 AM

Do you have the XmlDisassembler in the custom pipeline.
This is the component that recognises the message and promotes the
properties, including the MessageType.
The XmlDisassembler uses the root node and target namespace to establish the
MessageType and to find the schema. The schema has the definitions of the
promoted properties.
The XmlValidator will only work if the MessageType has been set.
The orchestration will be subscribing to the MessageType - this is taken
from the MessageType of the message that is being received by the
orchestration.
You can add additional filters to the subscription by setting filters on the
receive shape in the orchestration.

I would try to find out why the standard XmlReceive pipeline is not working.

Greg

"Mikael Östberg" <mikael.ostberg-at-intellecta.se> wrote in message
news:%23iCYdmkhGHA.460@TK2MSFTNGP02.phx.gbl...
> Thanks for you reply!
>
> I am using a custom pipline with an XML Validator against the schema I
> have.
> I tried to use an XmlPipeline but that wouldn't work. It said something
> about not beeing able to handle the message.
>
> Right now, I've lost connection to the machine, so I'm a bit stuck with
> that.
>
> But about subscriptions. Can I manually set what properties the
> orchestration should listen to? Now it seems like the properties match,
> but
> it still doesn't work which is quite confusing. It would be better i I
> could
> just set that it would listen to a specific receive location. Is that
> possible in a receive location bound to orchestration set up..?
>
> Thanks!
>
> ::m
>
>
>
> "Greg Forsythe" <greg.forsythe@gmail.com> wrote in message
> news:ebbhLejhGHA.764@TK2MSFTNGP03.phx.gbl... 
> have 
> inport 
> subscription 
> == 
> http://schemas.microsoft.com/BizTal...s.ReceivePortID 
> routing 
>
>







[ Post a follow-up to this message ]



    RE: Subscription problem BTS 2006  
Kartik Paramasivam


View Ip Address Report This Message To A Moderator Edit/Delete Message


 
06-05-06 06:16 AM


In 2006, you can go to the Biztalk admin console and look at the receive
port instance which was suspended due to the routing failure.
you can right click on the suspended instance and select "Trouble shoot
routing failure".  Now this will lead you to the "routing failure report".
Look at the message and then the message context inside the routing failure
report. This will show you the list of context properties which were promote
d
when the message was published after the receive pipeline. This will allow
you to debug which property was not promoted.

"Mikael Ă–stberg" wrote:

> Hello all!
>
> I am migrating a quite small solution from BTS 2004 to BTS 2006 and I have
 a
> problem with a message that can't find it's subscribers.
>
> The Receive location is using MSMQ and recieves messages from a local
> private queue. They are to be sent into an orchestration where the inport
> takes a message that corresponds to a certain Schema.
>
> The message that arrives looks like this:
>
> <?xml version="1.0" ?>
> <ProductUpdate xmlns=http://www.myurl.com/myapp/ProductUpdateSpec.xsd>
> ....
> </ProductUpdate>
>
> The Schema header looks like this:
>
> <?xml version="1.0" encoding="utf-16" ?>
> <xs:schema xmlns:b="http://schemas.microsoft.com/BizTalk/2003"
> xmlns="http://www.myurl.com/myapp/ProductUpdateSpec.xsd"
> targetNamespace=http://www.myurl.com/myapp/ProductUpdateSpec.xsd
> version="1.0" xmlns:xs="http://www.w3.org/2001/XMLSchema">
>     <xs:annotation>
>         <xs:appinfo>
>               <b:schemaInfo BizTalkServerEditorTool_Version="1.5"
> displayroot_reference="ProductUpdate" standard="XML"
> target_namespace="http://www.myurl.com/myapp/ProductUpdateSpec.xsd"
> xmlns:b="http://schemas.microsoft.com/BizTalk/2003"
> root_reference="ProductUpdate" />
>          </xs:appinfo>
>     </xs:annotation>
>     ...
> </xs:schema>
>
> I have bound the orchestration to the receive port, receive location and
> enlisted and started everything.
>
> The error:
> The published message could not be routed because no subscribers were foun
d.
> This error occurs if the subscribing orchestration or send port has not be
en
> enlisted, or if some of the message properties necessary for subscription
> evaluation have not been promoted. Please use the Biztalk Administration
> console to troubleshoot this failure.
>
> When I check the subscription properties for my orchestration, I can see
> this:
> http://schemas.microsoft.com/BizTal...ies.MessageType ==
> http://www.myurl.com/myapp/ProductU...d#ProductUpdate And
> http://schemas.microsoft.com/BizTal...s.ReceivePortID 
==
> {217791FF-1402-4840-A518-9B0306E21B08}
>
> According to me, all this is correct and still the message is not routing
> correctly. Why is this?
>
> Thankful for help!
>
> Mikael Ă–stberg
>
>
>





[ Post a follow-up to this message ]



    Re: Subscription problem BTS 2006  
Mikael Östberg


Report This Message To A Moderator Edit/Delete Message


 
06-08-06 06:19 PM

Hello!

Thanks for your answer!

The problem seems to be that the MessageType property is not promoted.

This is what the orchestration is accepting:

http://schemas.microsoft.com/BizTal...ies.MessageType ==
http://www.myurl.com/myapp/ProductU...d#ProductUpdate And

http://schemas.microsoft.com/BizTal...s.ReceivePortID ==
{217791FF-1402-4840-A518-9B0306E21B08}

But when I check the message in the Administration Console, the MessageType
looks like this:

MessageType 2 Not Promoted
http://schemas.microsoft.com/BizTal...msmq-properties


ReceivePortID {217791FF-1402-4840-A518-9B0306E21B08} Promoted
http://schemas.microsoft.com/BizTal...stem-properties


ReceivePortId however is correct.

The value of the MessageType is 2. Why is this..?

Thanks!

::m


"Kartik Paramasivam" <KartikParamasivam@discussions.microsoft.com> wrote in
message news:D665F81B-60BC-4DA9-86B2-75DE0B55E16D@microsoft.com...
>
> In 2006, you can go to the Biztalk admin console and look at the receive
> port instance which was suspended due to the routing failure.
> you can right click on the suspended instance and select "Trouble shoot
> routing failure".  Now this will lead you to the "routing failure report".
> Look at the message and then the message context inside the routing
failure
> report. This will show you the list of context properties which were
promoted[vbcol=seagreen]
> when the message was published after the receive pipeline. This will allow
> you to debug which property was not promoted.
>
> "Mikael Östberg" wrote:
> 
have a[vbcol=seagreen] 
inport[vbcol=seagreen] 
found.[vbcol=seagreen] 
been[vbcol=seagreen] 
subscription[vbcol=seagreen] 
==[vbcol=seagreen] 
http://schemas.microsoft.com/BizTal...s.ReceivePortID ==[vbcol=seagreen]
 
routing[vbcol=seagreen] 







[ Post a follow-up to this message ]



    Re: Subscription problem BTS 2006  
Mikael Östberg


Report This Message To A Moderator Edit/Delete Message


 
06-08-06 06:19 PM

Hello Greg!

Thanks for your reply!

I do have an XmlDisassembler in my custom pipeline and it's Documents
Schemas Collection has my Schema.

I also have an XML validator with the same schema. It seems that the message
comes out of the pipeline with the MessageType property set to 2 and it's
not promoted. What does this mean? doesn't the XmlDisassembler find the
xmlns?

The orcestration subscription properties are:

http://schemas.microsoft.com/BizTal...ies.MessageType ==
http://www.myurl.com/myapp/ProductU...d#ProductUpdate And

http://schemas.microsoft.com/BizTal...s.ReceivePortID ==
{217791FF-1402-4840-A518-9B0306E21B08}

The message property ReceivePortID is correct.

I guess the problem is in the pipeline..?

Thanks!

::m



"Greg Forsythe" <greg.forsythe@gmail.com> wrote in message
news:e1CuLuohGHA.1276@TK2MSFTNGP03.phx.gbl...
> Do you have the XmlDisassembler in the custom pipeline.
> This is the component that recognises the message and promotes the
> properties, including the MessageType.
> The XmlDisassembler uses the root node and target namespace to establish
the
> MessageType and to find the schema. The schema has the definitions of the
> promoted properties.
> The XmlValidator will only work if the MessageType has been set.
> The orchestration will be subscribing to the MessageType - this is taken
> from the MessageType of the message that is being received by the
> orchestration.
> You can add additional filters to the subscription by setting filters on
the
> receive shape in the orchestration.
>
> I would try to find out why the standard XmlReceive pipeline is not
working.
>
> Greg
>
> "Mikael Östberg" <mikael.ostberg-at-intellecta.se> wrote in message
> news:%23iCYdmkhGHA.460@TK2MSFTNGP02.phx.gbl... 
the[vbcol=seagreen] 
xmlns=http://www.myurl.com/myapp/ProductUpdateSpec.xsd>[vbcol=seagreen] 
not[vbcol=seagreen] 
http://schemas.microsoft.com/BizTal...ies.MessageType[vbcol=seagreen] 
http://schemas.microsoft.com/BizTal...s.ReceivePortID[vbcol=seagreen] 
>
>







[ Post a follow-up to this message ]



    Re: Subscription problem BTS 2006  
Greg Forsythe


View Ip Address Report This Message To A Moderator Edit/Delete Message


 
06-09-06 12:18 PM

Do you have "Routing enabled for failed messages" set on the receive port
Does the message have any properties in the
"http://schemas.microsoft.com/BizTalk/2005/error-report" namespace

Have you tried not specifying the schema on the XmlDisassembler.


Greg

"Mikael Östberg" <mikael.ostberg-at-intellecta.se> wrote in message
news:ebngfewiGHA.3588@TK2MSFTNGP02.phx.gbl...
> Hello Greg!
>
> Thanks for your reply!
>
> I do have an XmlDisassembler in my custom pipeline and it's Documents
> Schemas Collection has my Schema.
>
> I also have an XML validator with the same schema. It seems that the
> message
> comes out of the pipeline with the MessageType property set to 2 and it's
> not promoted. What does this mean? doesn't the XmlDisassembler find the
> xmlns?
>
> The orcestration subscription properties are:
>
> http://schemas.microsoft.com/BizTal...ies.MessageType ==
> http://www.myurl.com/myapp/ProductU...d#ProductUpdate And
>
> http://schemas.microsoft.com/BizTal...s.ReceivePortID
> ==
> {217791FF-1402-4840-A518-9B0306E21B08}
>
> The message property ReceivePortID is correct.
>
> I guess the problem is in the pipeline..?
>
> Thanks!
>
> ::m
>
>
>
> "Greg Forsythe" <greg.forsythe@gmail.com> wrote in message
> news:e1CuLuohGHA.1276@TK2MSFTNGP03.phx.gbl... 
> the 
> the 
> working. 
> the 
> xmlns=http://www.myurl.com/myapp/ProductUpdateSpec.xsd> 
> not 
> http://schemas.microsoft.com/BizTal...ies.MessageType 
> http://schemas.microsoft.com/BizTal...s.ReceivePortID 
>
>








[ Post a follow-up to this message ]



    Re: Subscription problem BTS 2006  
Mikael Östberg


Report This Message To A Moderator Edit/Delete Message


 
06-13-06 12:23 PM

Hello again!

I have gone through almost every little part of this solution and found a
solution which had little to do with BTS.

Apparently the problem was that the MSMQ which works with UTF-16.

The resulting message arrived corrupted with double byte characters and
single byte characters were expected. Aren't there any encoding settings for
pipelines, XmlDisassemblers etc..? Or is not needed if things are done the
right way from the start?

The problem began in the sending code, where an ActiveXformatter was used
for Xml messages too. I changed the formatter to an XmlFormatter which did
the trick. I'm gonna have to use the ActiveXformatter for csv messages
though, but the I can probably set the encoding in the flat file schema,
right..?

Anyway. Thanks for helping me! Very much appreciated!

::m



"Greg Forsythe" <greg.forsythe@gmail.com> wrote in message
news:#G$vZK5iGHA.836@TK2MSFTNGP02.phx.gbl...
> Do you have "Routing enabled for failed messages" set on the receive port
> Does the message have any properties in the
> "http://schemas.microsoft.com/BizTalk/2005/error-report" namespace
>
> Have you tried not specifying the schema on the XmlDisassembler.
>
>
> Greg
>
> "Mikael Östberg" <mikael.ostberg-at-intellecta.se> wrote in message
> news:ebngfewiGHA.3588@TK2MSFTNGP02.phx.gbl... 
it's[vbcol=seagreen] 
==[vbcol=seagreen] 
http://schemas.microsoft.com/BizTal...s.ReceivePortID[vbcol=seagreen] 
establish[vbcol=seagreen] 
the[vbcol=seagreen] 
taken[vbcol=seagreen] 
on[vbcol=seagreen] 
I[vbcol=seagreen] 
something[vbcol=seagreen] 
with[vbcol=seagreen] 
match,[vbcol=seagreen] 
I[vbcol=seagreen] 
and[vbcol=seagreen] 
target_namespace="http://www.myurl.com/myapp/ProductUpdateSpec.xsd"[vbcol=seagreen] 
location[vbcol=seagreen] 
has[vbcol=seagreen] 
can[vbcol=seagreen] 
http://schemas.microsoft.com/BizTal...s.ReceivePortID[vbcol=seagreen] 
>
>
>







[ Post a follow-up to this message ]



    Sponsored Links  




 





   All times are GMT. The time now is 11:25 AM.      Post New Thread    Post A Reply      
  Last Thread   Next Thread Next


Most Popular forums 

Forum Jump:
Rate This Thread:

Forum Rules:
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts
HTML code is OFF
vB code is ON
Smilies are ON
[IMG] code is OFF
 
Medical and Health forum | Computer Games Reviews | Graphics design forum

Back To The Top
Home | Usercp | Faq | Register