| Previous | Next |
| MQ_ERROR_Q_ADS_PROPERTY_NOT_SUPPORTED | MQ_ERROR_UNSUPPORTED_CLASS |
MQ_ERROR_BAD_XML_FORMAT
What this result actually narrows down
MQ_ERROR_BAD_XML_FORMAT means application-supplied SRMP XML is not well formed. Validate the fragment as XML with namespaces and encoding before assigning the SOAP header property.
Capture the parser line/column and a redacted hash of the original Unicode text. When diagnosing this result, logging only the post-escaped transport representation can hide the defect introduced before MSMQ received it.
SRMP carries message metadata in SOAP/XML form. Application-generated SOAP header content must be well-formed XML before MSMQ can merge or serialize it into an envelope.
MSMQ objects involved
| Subsystem | SRMP message construction and the XML/SOAP envelope properties |
|---|---|
| Relevant condition | well-formed XML is required before MSMQ can incorporate application-supplied header material into an SRMP message |
| Code-specific focus | application-supplied SRMP XML is not well formed |
The failure occurs before XML can be used as valid SRMP metadata. Network tracing or queue recreation cannot make malformed markup well formed. The code-specific boundary is application-supplied SRMP XML is not well formed.
Triage data
- The exact unicode xml supplied before serialization.
- Encoding declaration, namespaces, element nesting, and prohibited characters.
- Whether the content was placed in the soap header, body, or complete envelope property.
Correct response
Do not escape the entire document twice; correct the exact parser error.
What this code is not
Queue recreation, permission changes, and network retries cannot correct malformed XML supplied before SRMP serialization. Code-specific condition: application-supplied SRMP XML is not well formed.
Example failure path
An http transport integration encounters it. It validates the original Unicode XML and fixes the first parser error before assigning the MSMQ property again.
Technical references
Looking for a different code? Search another status or error code.