オブジェクトをJSONとして深くまたは浅く変換するかどうかを簡単に指定する方法はありますか?私はあなたが以下のようなものを指定することにより、Config.groovyファイルにgrails.converters.JSONユーティリティを設定することができます知っている:Grailsで深いまたは浅いJSONシリアライゼーションを選択
grails.converters.json.default.deep = true
を私は特定のオブジェクトを変換するときに、私は深い変換しません。
私はまた、誰かがJSON.use(「深い」)を使用してお勧めしますことを見たが、私は次のエラーを取得する:
Error 2012-03-04 00:39:13,673 ["http-bio-8080"-exec-1] ERROR errors.GrailsExceptionResolver - IllegalAccessException occurred when processing request: [GET] /Quaffic/home/json
Class org.codehaus.groovy.grails.web.converters.marshaller.json.GenericJavaBeanMarshaller can not access a member of class org.joda.time.tz.DateTimeZoneBuilder$PrecalculatedZone with modifiers "public". Stacktrace follows:
Message: Class org.codehaus.groovy.grails.web.converters.marshaller.json.GenericJavaBeanMarshaller can not access a member of class org.joda.time.tz.DateTimeZoneBuilder$PrecalculatedZone with modifiers "public"
Line | Method
->> 198 | value in grails.converters.JSON
それはjoda.timeのエラーの可能性がありように思えますが、これは」doesnの私はちょうどConfig.groovyのプレーンな技術を使っています。混乱の種...
何か助けが素晴らしいだろう!
私は同じ問題を抱えています。 joda-timeプラグインのjoda-timeコンバーターが 'JSON.use(" deep ")の後に呼び出されるようには見えません。彼らはあなたがそれらを手動で登録する場合です。 JSON.use( "deep")JodaConverters.registerJsonAndXmlMarshallers()私は何かをより良くするかどうかを知らせます。 – gogstad