2017-01-30 3 views
1

У меня есть следующий json в качестве ответа. Я хочу удалить нуль перед отправкой в ​​цель. Как пропустить нулевые значения из json в компоненте Mule/Java тоже хорошо. Примечание: я не использую dataweave, так как я использую версию сообщества.skip null in json in mule

{ «Идентификатор»: «1234», «значение»: нулевая }

ответ

0

Чтобы справиться с JSON сообщения в компоненте Java, как правило, я использую: net.sf.json.JSONObject, net.sf.json.JsonConfig и net.sf.json.util.PropertyFilter.

Поместите их внутри метода transformMessage, чтобы перехватить входящее сообщение JSON и удалить все нулевые свойства.

JsonConfig jsonConfig = new JsonConfig(); 
jsonConfig.setJsonPropertyFilter(new PropertyFilter() { 
    @Override 
    public boolean apply(Object source, String name, Object value) { 
     return (value == null); 
    } 
}); 

return JSONObject.fromObject(message.getPayload(), jsonConfig); 
0

Простейшим часть использовать Dataweave, но, как вы упоминаете вы используете Community Edition в этом случае я предлагаю создать свой собственный трансформатор, где вы получаете эту полезную нагрузку и вручную проверяете это значение и удаляете его.