2016-09-29 5 views
0

多相検索の結果からjson-viewsをレンダリングしようとしています。 オブジェクトマーシャラでは、完全に動作しますが、grails3 json-viewsでは動作しません。 私はあらゆる種類のことを試しました、json-viewsプラグインのバグのようです。ここでGrails 3:json-viewsでクラス継承が機能しない

は、問題を明確にする例です。

class Content { 
String text 
} 

class BlogEntry extends Content { 
    URL url 
} 

class Book extends Content { 
    String ISBN 
} 

そしてcontentController中:

class ContentController extends RestfulController<Content> { 

    static responseFormats = ['json', 'xml'] 

    ContentController() { 
     super(Content) 
    } 

    def index(Integer max) { 
     println '*CONTENT:INDEX*' 
     def contents= Content.findAll() 
     respond contents 
    } 
} 

JSONビュー:

// /content/index.gson 
model { 
    Iterable<Content> contentList 
} 

json tmpl.content(contentList ?: []) 

// /content/_content.gson 
model { 
    Content content 
} 

json g.render(content) 

私は、コントローラのインデックスから空の結果を取得します方法。私はgrails 3.2.0.RC2 with views-json:1.1.0.RC3を使用しています。

カスタムオブジェクトマーシャラでは、期待通りのサブクラスタイプ(BlogEntry、Book)でjson結果を得ることができます。

答えて

関連する問題