grails渲染pdf插件不工作,简单示例?
我正在尝试使用渲染插件将一个简单的模板保存到pdf,但无论我怎么做,都无法使其正常工作。我只需要它在服务器上的文件系统中保存一个文件并重定向到另一个页面 此时pdf模板不需要任何参数,因为它只打印hello world。一旦我开始工作,我将尝试添加一些数据 如果没有附加“/”的话,我会收到一个错误,说我需要指定一个控制器。但我试着添加这一点,但没有效果。另外,我不知道它需要哪个控制器,因为我已经尝试指定了该操作所声明的控制器 谁能看看这个,告诉我我做错了什么grails渲染pdf插件不工作,简单示例?,grails,controller,pdf-generation,rendering,Grails,Controller,Pdf Generation,Rendering,我正在尝试使用渲染插件将一个简单的模板保存到pdf,但无论我怎么做,都无法使其正常工作。我只需要它在服务器上的文件系统中保存一个文件并重定向到另一个页面 此时pdf模板不需要任何参数,因为它只打印hello world。一旦我开始工作,我将尝试添加一些数据 如果没有附加“/”的话,我会收到一个错误,说我需要指定一个控制器。但我试着添加这一点,但没有效果。另外,我不知道它需要哪个控制器,因为我已经尝试指定了该操作所声明的控制器 谁能看看这个,告诉我我做错了什么 RenderingService
RenderingService pdfRenderingService
def displayPDFSummary = {
ByteArrayOutputStream bytes = pdfRenderingService.render(template: "_pdfTemplate", controller:"RSSCustomerOrder", model: [origSessionId:params.origSessionId])
def fos= new FileOutputStream('NewTestFile.pdf')
fos.write(bytes)
fos.close()
render(template: "_pdfTemplate", params: [origSessionId:params.origSessionId])
}
我在控制台中收到以下错误消息:
groovy.lang.MissingMethodException: No signature of method: java.io.FileOutputStream.write() is applicable for argument types: (java.io.ByteArrayOutputStream)
(Then prints contents of template...)
Possible solutions: write([B), write(int), write([B), write(int), wait(), wait(long)
你有没有看报纸?没有写入(OutputStream)方法
尝试
fos.write(bytes.toByteArray())
。另外,bytes.writeTo(fos)
可能会起作用。谢谢,这起作用了。我真不敢相信我居然没看到:(