2013-03-27 40 views
2

我使用Jackson从Java对象生成JSON格式的字符串。Jackson - 如何序列化javascript函数

然后生成的JSON字符串在HTTPResponse中发送,Highcharts解释它在客户端显示图表。

这一切都很好,直到我发现我需要序列化JavaScript函数。例如

"xAxis" : { 
    events { 
     setExtremes: function(event) { 
      //javascript code 
     } 
    } 
} 

我知道这是无效的JSON了,但我需要一个解决方法。 关于如何做到这一点的任何想法?

回答

-1

虽然我对杰克逊一无所知,但我在java json库中做了这个类似的问题。

什么是放在哪里我想要的功能去占位符值:

setExtremes: "SETEXTREMES_PLACEHOLDER" 

然后当我转换的JSON对象JSON字符串,我做了一个字符串替换上的占位符操作所需的功能。

不漂亮,但它做到了。

+0

我会接受这个答案,虽然你是对的,但并不漂亮。 – sara 2013-03-29 10:09:25

+1

不确定这个答案是最新的。杰克逊的['@ RawValue'](http://jackson.codehaus.org/1.8.2/javadoc/org/codehaus/jackson/annotate/JsonRawValue.html)注释将防止引用该值(for已经序列化的对象和函数)。 – 2015-03-23 09:25:15