SerializeJSON仅返回前两个记录

Sam*_*mer 6 coldfusion orm coldfusion-9

我有一个问题,序列化ORM关系只显示前两个记录.其余只显示[]空白.

这是一个示例关系:

property name="endorsements" singularname="endorsement" fieldtype="one-to-many" lazy="false" fkcolumn="xxx" cfc="endorsements" remotingfetch="true";
Run Code Online (Sandbox Code Playgroud)

获得JSON:

policy = entityLoad("policy",1018379202)[1];
serializeJSON( policy );
Run Code Online (Sandbox Code Playgroud)

并减少了JSON的一部分:

{"id":12321,"endorsements":[{"effectiveDate":"July, 01 2009 00:00:00","active":true},
{"effectiveDate":"July, 01 2009 00:00:00","active":true},
"","","","","","","","",""]}
Run Code Online (Sandbox Code Playgroud)

空字符串应该是关系中的其他记录.

我已经通过调试文件验证了Hibernate查询带回了所有记录,cfdump也显示了这一点.

思考?

Mik*_*ser 4

该错误发生在 Coldfusion.runtime.JSONUtils.serializeJSON() 中的第 409 行左右。

如果您要序列化持久性 cfc,它会将 cfc 的完全限定名称添加到 ArrayList 中,并以递归方式传递。

然后是一个 if() 语句,它尝试找到 cfc 的完全限定名称,一旦它在列表中出现两次以上,就会用“{}”提前离开该函数。

不太确定他们想用这个 if() 来完成什么。可以处理循环引用吗?

此错误已于四月份记录:https ://bugbase.adobe.com/index.cfm?event=bug&id=3175667