Reputation: 169
I want to generate XML through Payload Mediator in WSO2 sequence without a name space. Example:
<payloadFactory media-type="xml">
<format>
<XmlRoot>
<a>$1</a>
<b>$2</b>
<c>$3</c>
<d>$4</d>
</XmlRoot>
</format>
<args>
<arg evaluator="json" expression="$.a"/>
<arg evaluator="json" expression="$.b"/>
<arg evaluator="json" expression="$.c"/>
<arg evaluator="json" expression="$.d"/>
</args>
</payloadFactory>
Above one generates xml like below:
<XmlRoot xmlns="http://ws.apache.org/ns/synapse">
<a>Paper</a>
<b>en-US</b>
<c>en-US</c>
<d>USD</d>
</XmlRoot>
Instead of (that is my goal)
<XmlRoot>
<a>Paper</a>
<b>en-US</b>
<c>en-US</c>
<d>USD</d>
</XmlRoot>
I know this namespace is gets from sequence root element. how to avoid or eliminate this auto generated name space ?
Upvotes: 1
Views: 939
Reputation: 1401
You can avoid the default name space by adding empty namespace ( xmlns=""
) in payload factory mediator
e.g <XmlRoot xmlns="">
<payloadFactory media-type="xml">
<format>
<XmlRoot xmlns="">
<a>$1</a>
<b>$2</b>
<c>$3</c>
<d>$4</d>
</XmlRoot>
</format>
<args>
<arg evaluator="json" expression="$.a"/>
<arg evaluator="json" expression="$.b"/>
<arg evaluator="json" expression="$.c"/>
<arg evaluator="json" expression="$.d"/>
</args>
</payloadFactory>
Upvotes: 2