Azure Service Bus Queue gives control characters in fetched message

自古美人都是妖i 提交于 2019-12-12 01:16:35

问题


I am using BizTalk Server SB-Messaging adapter to retreive messages from Azure Service Bus Queue. I have successfully managed to send message to queue myself (using same adapter), and retreive message from queue and do further processing.

Problem arises when a 3rd party software supplier is sending messages to the queue, and for BizTalk Server to retreive and process message. I then receive the following additional "header"-information and control characters in the beginning of the message:

In text: @ACKstringBShttp://schemas.microsoft.com/2003/10/Serialization/?$SOH

Seems like there is some sort of enveloped message, including headers to handle ACKnowledgement of the message to the queue.

SB-Messaging adapter gave following initial error message:

"The WCF service host at address has faulted and as a result no more messages can be received on the corresponding receive location. To fix the issue, BizTalk Server will automatically attempt to restart the service host."

And, another error message:

"No Disassemble stage components can recognize the data."

Did anyone hit this problem before, and, what can be the cause of the problem? Can character encoding be a possible cause of this problem?


回答1:


Here comes the feedback!

Turned out 3rd party software supplier had a setting to send message as stream, instead of string. Turns out it is a .Net application using BrokeredMessage object. Using string makes message serialized, and meta-data is added to the message. Using stream, no such serialization takes place, and message is kept untouched.

So, problem was using string and automatic serialization when sending to Service Bus Queue.



来源:https://stackoverflow.com/questions/53671071/azure-service-bus-queue-gives-control-characters-in-fetched-message

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!