WSO 2 EI Response изменить первую букву в верхний регистр - PullRequest
0 голосов
/ 09 октября 2018

Привет в wso2 ei в фабрике полезной нагрузки. Я получаю ответ в json

<payloadFactory media-type="json">
<format>{
"Body":$1
}
</format>
<args>
<arg evaluator="json" expression="$."/>
</args>

. Ответ:

{
"Body":{
   "result":"done",
   "idNumber":"123",
   "address":{
      "local":"US",
      "abroad":"UK" 
    }
}
}

.... означает, что несколько объектов теперь то, что янужно, чтобы первая буква объекта была заглавной.

Мне нужен следующий ответ

 {
    "Body":{
       "Result":"done",
       "IdNumber":"123",
       "Address":{
          "local":"US",
          "abroad":"UK" 
        }
    }
 }

Означает, что только первая буква объекта должна быть заглавной ... Любая помощь!

1 Ответ

0 голосов
/ 10 октября 2018

Замените медиатор полезной нагрузки на медиатор xslt.

<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
    xmlns:xs="http://www.w3.org/2001/XMLSchema"
    exclude-result-prefixes="xs"
    version="2.0">
    <xsl:strip-space elements="*"/>
    <xsl:output method="text" indent="yes" media-type="application/json" encoding="UTF-8"/>
    <xsl:template match="/">        
        {
        Body :{

        <xsl:for-each select="//*[local-name()='pid']">

            Result:<xsl:value-of select="result"/>
            IdNumber:<xsl:value-of select="idNumber"/>

        </xsl:for-each>

        }

        }

    </xsl:template>

</xsl:stylesheet>

Как только это будет сделано, вам нужно использовать медиатор свойства, чтобы полезная нагрузка все еще была в json.

 <property name="messageType" scope="default" type="STRING" value="application/json"/>
    <property name="contentType" scope="default" type="STRING" value="application/json"/>
...