grails渲染插件不兼容的返回类型问题

时间:2017-02-22 22:25:03

标签: java grails grails-plugin

我正在研究grails 3(grails版本3.2.3,java版本1.8)项目,它需要将gsp转换为pdf。我试图使用grails提供的渲染插件。 我用以下方法导入了插件:     compile 'org.grails.plugins:rendering:2.0.3' 在我的build.gradle文件中

并在我的控制器中 我用过:

ByteArrayOutputStream bytes = pdfRenderingService.render(template: "/templates/pdf_PI", model: [proformaInvoice: proformaInvoice])

渲染pdf。使用def pdfRenderingService

注入服务

然而我收到此错误

grails-app/controllers/chsam/re/ProformaInvoiceController.groovy: -1: The return type of java.lang.Object getPdfRenderingService() in chsam.re.ProformaInvoiceController is incompatible with grails.plugins.rendering.pdf.PdfRenderingService in grails.plugins.rendering.RenderingTrait. At [-1:-1]  @ line -1, column -1.

我花了好几个小时试图让这个插件工作,但它不起作用。请帮忙。

1 个答案:

答案 0 :(得分:0)

通过在声明服务时显式使用类型解决了此问题。而不是def pdfRenderingService使用PdfRenderingService pdfRenderingService

使用org.grails.plugins:rendering:2.0.3

在grails 3.2.11上工作