9

理想情况下,会有一个插件自动将 Grails 域模型公开为 OData,但我看不到。

有 OData4j 可以让您将 POJO 或 JPA 公开为 OData,但是它在幕后使用 JAX-RS 和 Jersey,我不确定如何在 Grails 应用程序中使用它。

4

1 回答 1

2

我会使用Apache Olingo。遵循他们的Java 示例并针对 Groovy/Grails 进行如下修改:

class DataController {
    def action() {
        // create odata handler and configure it with DemoEdmProvider and Processor
        def odata = OData.newInstance()
        def edm = odata.createServiceMetadata(new DemoEdmProvider(), [])
        def handler = odata.createHandler(edm)
        handler.register(new DemoEntityCollectionProcessor())

        // let the handler do the work
        handler.process(request, response)
        return false
    }
}
于 2015-10-29T21:59:48.760 回答