【发布时间】:2016-05-13 17:35:27
【问题描述】:
当我查询带有 XML 列的数据库表时
<cfquery name="qryData">
DECLARE @data xml = '<ul class="xoxo"><li><span><b>Config</b> [<var>1</var>]:</span><code>compliance</code></li></ul>'
SELECT @data AS Conf
</cfquery>
转换为 WDDX 时崩溃
<cfwddx action = "cfml2wddx" input = "#qryData#" output = "wddxText">
Adobe 错误库:https://bugbase.adobe.com/index.cfm?event=bug&id=4152876
有比 Casting to varchar(max) 更好的解决方法吗?
【问题讨论】:
-
James - 我想知道为什么您需要将其作为查询中的 XML?为什么不使用 ntext?
-
这是问题的简化版本。实际的 xml 来自我无法控制的普通 DB 列
-
嗯...不确定詹姆斯这里有没有答案。如果转换为 TEXT 不是一个选项,您可以在序列化为 WDDX 之前尝试 XMLFormat() - 或者您可以在序列化之前对整个内容进行 URLEncode。我怀疑解析器在 XML 内部阻塞了 XML - 也许它正在尝试渲染一个 XML 对象 - 然后将其嵌入 WDDX(这可能是一个具有很多级别的多节点 XML 对象)。如果是我,我会选择 WDDX 或 XML 并坚持使用它 - 而不是将一个强加于另一个,嗯?
-
每个错误基础:bugbase.adobe.com/index.cfm?event=bug&id=4152876 这将在 ColdFusion 2016 更新 3 中修复
标签: coldfusion wddx coldfusion-2016