我正在尝试使用insertOne
方法将文档插入名为“people”的集合中。我已经尝试了几种方法来创建json,但是所有这些方法都失败了,并且出现了不同的错误消息。我在ColdFusion(Railo)中编码并使用java驱动程序3.2.2。
例如,以下语法:
<cfset people.insertOne( { item: "card", qty: 15 } )>
生成以下错误:
railo.runtime.type.StructImpl cannot be cast to org.bson.Document
以下语法:
<cffunction name="m" returntype="any">
<cfargument name="value" type="any">
<cfif IsJSON(arguments.value)>
<cfset local.retrun = CreateObject("java","com.mongodb.util.JSON").parse(arguments.value)>
<cfelse>
<cfset local.retrun = CreateObject("java","com.mongodb.util.JSON").parse( SerializeJSON(arguments.value) )>
</cfif>
<cfreturn local.retrun>
<cfset doc = {
"Name" = "Marc",
"Spouse"= "Heather",
"Fruit" = "Mango",
"Kids" = [
{"Name"="Alexis", "Age"=7, "Hair"="blonde", "Description"="crazy" },
{"Name"="Sidney", "Age"=2, "Hair"="dirty blonde", "Description"="ornery" }
],
"Bike" = "Felt",
"LoveSQL" = true,
"TS" = now(),
"Counter" = 1
}>
<cfset doc = SerializeJSON(doc)>
<cfset doc = m(doc)>
<cfset people.insertOne( doc )>
生成以下错误:
com.mongodb.BasicDBObject cannot be cast to org.bson.Document
如何将json转换为将文档插入集合?
提前致谢