JSON字符串中的双引号被freemarker文件替换
在一个动作类中,我以传统的方式得到一个bean列表。 然后我使用Gson将这个对象列表转换为json字符串。 这效果很好(如下图所示):
"{ "employees" : [{ "firstName":"John" , "lastName":"Doe" }, {"firstName":"Anna" , "lastName":"Smith" } , { "firstName":"Peter" , "lastName":"Jones" } ]}";
最后,在我的freemarker文件中,我得到了这个变量(String JSon),但是在它里面,所有的双引号都被替换为'&quote;'。
<@sjg.grid id="gridtable"
caption="My title"
dataType="json"
href="${remoteurl}"
pager="true"
gridModel="${employeesInJsonString?js_string}"
rowList="10,15,20"
rowNum="15"
rownumbers="true">
<sjg:gridColumn name="firstName" index="firstName" title="FirstName" sortable="false"/>
<sjg:gridColumn name="lastName" index="lastName" title="LastName" sortable="false"/>
结果字符串如下:
"{ & quote;employees& quote; : [{ & quote;firstName& quote;:& quote;John& quote; , & quote;lastName& quote;:& quote;Doe& quote; }, {& quote;firstName& quote;:& quote;Anna& quote; , & quote;lastName& quote;:& quote;Smith& quote; } , { & quote;firstName& quote;:& quote;Peter" , & quote;lastName& quote;:& quote;Jones& quote; } ]}";
如何避免这种转变?
PS:我已经尝试在所有双引号前加一个反斜杠来转义字符,但结果是一样的(resultJsonString = jsonString.replaceAll(“”“,”“”))。
预先感谢您的帮助
链接地址: http://www.djcxy.com/p/37861.html上一篇: Double quotes in Json String replaced in freemarker file