Как увидеть содержимое массива JavaScript, включая объекты, в разделе источника канала в Mirth Connect
У меня есть массив javascript, включающий объекты, и массивы содержат некоторые объекты в моем источнике канала в Mirth 3.5.1. Например:
var sql= "SELECT prop1,prop2,prop3,prop4,prop5,prop6 from ANYTABLE";
var res = dbConn.executeCachedQuery(sql);
var Array1 = [];
Obj1 = {
Prop1: res.getString("Prop1"),
Prop2: res.getString("Prop2"),
Prop3: res.getString("Prop2"),
Array2:[
{
Prop4:res.getString("Prop4"),
Prop5:res.getString("Prop5"),
Prop6:res.getString("Prop6"),
}
]
}
Array1.push(Obj1);
logger.info(Array1) //??
Теперь я не смог увидеть содержимое объектов Array1 с помощью logger.info() в журнале сервера, расположенном под экраном панели управления.
Есть какие-то решения или хитрость, чтобы сделать это?
1 ответ
Решение
Сначала преобразуйте его в строку:
logger.info(JSON.stringify(Array1));
Вам также может потребоваться обеспечить все объекты в JavaScript, а не в Java-объектах, поскольку JSON.stringify требует, чтобы объекты реализовали метод toJSON.
Obj1 = {
Prop1: String(res.getString("Prop1")),
Prop2: String(res.getString("Prop2")),
Prop3: String(res.getString("Prop3")),
Array2: [
{
Prop4: String(res.getString("Prop4")),
Prop5: String(res.getString("Prop5")),
Prop6: String(res.getString("Prop6")),
}
]
}