如何在WSO2 DSS中为mongo db编写upsert操作?

时间:2018-11-04 23:57:17

标签: mongodb wso2 wso2esb upsert wso2dss

我尝试遵循此处给出的文档https://docs.wso2.com/display/DSS351/Exposing+MongoDB+as+a+Data+Service。但是,以某种方式,我并没有发现它很全面。我有一个具有这样的文档架构的mongo数据库,

{
"business_unit" : "DOR",
"lab_id" : "12-5133750-GS-0",
"patient_id" : {
    "ULTRAREL" : "8249719",
    "UR" : "123456"
},
"message" : "asdasd",
"meta" : {
    "hl7_control_id" : "231687274",
    "hl7_type" : "ORU^R01",
    "receiving_application" : "Web Portal",
    "sending_facility" : "DOR",
    "receiving_facility" : "Web Portal",
    "time_of_message" : "201809261239",
    "sending_application" : "ULTRA_V3.1",
    "hl7_version" : "2.3.1"
},
"patient" : {
    "identifiers" : {}
},
"provider" : {},
"version" : {
    "major" : 1,
    "schema" : "CDR-SchemaPub",
    "minor" : 0,
    "revision" : 0
}
}

对于这么小的复杂模式,我应该如何在WSO2中编写DSS? 主要挑战是我需要一个REST服务,它将接受此JSON文档并将其保存在Mongo DB中。非常感谢任何指针或帮助。

编辑 当尝试不同的方法时,我在示例中看到了一个查询。

 <query id="mongo_insert_doc" useConfig="mongo_ds">
    <expression>things.insert("#")</expression>
    <param name="doc" sqlType="STRING"/>
 </query>

在这里,我看到doc通过查询参数发送并在mongo查询中访问。但是,如上所示,我的文档非常复杂,并且具有某些无法通过查询参数发送的值。因此,我想知道是否可以读取mongo查询表达式中通过POST正文发送的任何内容?

0 个答案:

没有答案