grails - 如何在Grails 2.4.X上启用HAL分页链接

标签 grails renderer hateoas

Grails 2.4.x附带了对HAL的支持。

尽管嵌入式资源(https://jira.grails.org/browse/GRAILS-10954)出现了一些问题,但我还是开始使其工作。但是我仍然不确定如何处理分页链接(“上一个”,“下一个”),如文档中所示。

HalJsonRenderer有什么办法可以帮助解决这一点?

最佳答案

我所做的是扩展HalJsonCollectionRenderer并覆盖此方法:

protected void writeLinkForCurrentPath(RenderContext context, MimeType mimeType, JsonWriter writer) {
    final href = linkGenerator.link(uri: context.resourcePath, method: HttpMethod.GET.toString(), absolute: absoluteLinks)
    final resourceRef = href
    final locale = context.locale
    def link = new Link(RELATIONSHIP_SELF, href)
    link.title = getResourceTitle(resourceRef, locale)
    link.contentType = mimeType ? mimeType.name : null

    writeLink(link, locale, writer)
}

添加用于PREV和NEXT的链接以在需要时呈现。

为此,我们需要访问querystring参数,这些参数可以作为RenderContext对象(context.getArguments())中的参数进行访问。

它工作得很好,并且不太复杂。

但是,如果这是另一种方式,我将很高兴知道。

关于grails - 如何在Grails 2.4.X上启用HAL分页链接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29356789/

相关文章:

Grails Spring Security 3 字段身份验证

grails - 更改grails中注入(inject)服务的名称

grails - 未封闭的gsp表达式,空指针,即使不是

c++ - 如何实现您自己的自定义 DirectShow 渲染器?

AngularJS 与超媒体 (HATEOAS) : how to use hypermedia urls accross states

java - Spring Hateoas - REST 客户端需要有模型类 + 资源类

tomcat - 无法在 Grails 中创建 404 页面

c++ - 在 win32 中绘制像素最快的方法是什么

java - 有什么方法可以使 JCombobox 中的文本右对齐