Mule:有简单的方法将XML转换为JSON

use*_*140 4 xml json mule

有没有简单的方法将XML转换为JSON,而不首先将XML绑定到java对象?

就像这样做 - http://www.utilities-online.info/xmltojson/#.UrXnCvRDt0w

如果可能的话,我不想维护XML模式.

use*_*140 7

这就是我最终做的 -

  <custom-transformer class="com.mycompany.transformer.XmlToJson" name="XmlToJson" doc:name="Java"/>

  <flow name="HTTP" doc:name="HTTP">
    <http:inbound-endpoint exchange-pattern="request-response" host="localhost" port="8081" path="test" doc:name="HTTP" contentType="application/json"/>
    <http:outbound-endpoint exchange-pattern="request-response" method="GET" address="http://server-address.com" doc:name="service-call"/>
    <object-to-string-transformer doc:name="Object to String"/>
    <transformer ref="XmlToJson" doc:name="Transformer Reference"/>
</flow>
Run Code Online (Sandbox Code Playgroud)

这是XmlToJson.java -

import org.json.XML;
import org.mule.api.transformer.TransformerException;
import org.mule.transformer.AbstractTransformer;

public class XmlToJson extends AbstractTransformer{

@Override
protected Object doTransform(Object src, String enc)
        throws TransformerException {
    JSONObject jsonObj = XML.toJSONObject((String) src);
            return  jsonObj.toString();
}
}
Run Code Online (Sandbox Code Playgroud)