2016-07-11 4 views
0

사실 wso2 esb에서 json으로 json으로 변환하는 데 문제가 있습니다. 실제로 payload factory를 프록시에서 사용하고 있고 나머지는 json 콘텐츠와 함께 프록시를 호출합니다. 여기에 내 통합 흐름이 있습니다. 프록시를 호출하고 프록시가 jms 메시지 저장소에 요청을 보냅니다. 메시지 프로세서가 메시지 저장소의 메시지를 사용하여 정의 된 끝점으로 보냅니다 (.net web API). 하지만 문제는 숫자가 자동으로 정수 요소로 변환되는 문자열입니다. "orderId": 10000 (문자열을 "orderId": "10000"으로 지정하고 싶습니다.)하지만 프록시에서 직접 내 끝점으로 요청을 보낼 때 메시지 브로커 사용) 제대로 작동합니다. 이 문제를 해결하도록 도와 주시겠습니까?wso2 esb json json 변환 큰 따옴표가 누락 된

답변

0

문제가 JSON 메시지 포맷터를 변경해야합니다. 다음 단계를 따르십시오.

  • 변화 org.apache.axis2.json 사용하는 대신 JsonStreamFormatter의 JSON 메시지 포매터를 변경해야 다음

  • /repository/conf/axis2/axis2.xml [ESB 홈]을 작업 디렉토리 .JSONMessageFormatter.

<!--messageFormatter contentType="application/json"        class="org.apache.synapse.commons.json.JsonStreamFormatter"/--> 
    <messageFormatter contentType="application/json" 
           class="org.apache.axis2.json.JSONStreamFormatter"/> 
0

당신은

org.apache.synapse.commons.json.JsonStreamBuilder 
org.apache.synapse.commons.json.JsonStreamFormatter 

는 "응용 프로그램/JSON"기존 빌더와 포매터를 제거하고 아래 추가 axis2.xml에 다음 빌더 및 포맷을 사용할 수 있습니다. 이 WSO2의 ESB에서 문제를 같이

<messageFormatter contentType="application/json" 
          class="org.apache.synapse.commons.json.JsonStreamFormatter"/> 

은 자세한 내용 빌더 섹션

<messageBuilder contentType="application/json" 
          class="org.apache.synapse.commons.json.JsonStreamBuilder"/> 
+0

이전에 해봤지만 아무 일도 일어나지 않았습니다. 제 새로운 [질문]을 보시기 바랍니다. (http://stackoverflow.com/question) s/38321898/wso2-esb-json-missing-quotes-and-brackets), 나는 더 많은 세부 사항으로 내 문제를 설명했다. 감사 –