I am trying to render html file to pdf using rendering plugin, my controller method is,
def download() { response.contentType = 'application/pdf' response.setHeader("Content-disposition", "attachment; filename=\"download.pdf\"") def items = [] (101..105).each { number-> ByteArrayOutputStream bos = new ByteArrayOutputStream(); items << [number:number, bytes:bos.toByteArray()] } renderPdf (template:'download', model:[items:items]) } And my _download.gsp file is,
<%@ page contentType="text/html;charset=UTF-8" %> <html> <body> <g:each in="${items}" var="item"> <div>This is the barcode for the number: ${item.number}</div> <hr/> </g:each> </body> </html> I have added following dependencies in BuildConfig.groovy file
compile ":rendering:1.0.0" I received following stack-trace,
| Error 2015-08-06 16:35:28,925 [http-bio-8080-exec-1] ERROR errors.GrailsExceptionResolver - NullPointerException occurred when processing request: [GET] /wheeloflife/test/download Stacktrace follows: Message: null Line | Method ->> 1281 | getPublicDeclaredMethods in java.beans.Introspector - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - | 1141 | getTargetMethodInfo in '' | 416 | getBeanInfo . . . . . . in '' | 163 | getBeanInfo in '' | 31 | init . . . . . . . . . . in grails.plugin.rendering.document.RenderEnvironment | 68 | with in '' | 60 | with . . . . . . . . . . in '' | 65 | generateXhtml in grails.plugin.rendering.document.XhtmlDocumentService | 35 | createDocument . . . . . in '' | 36 | render in grails.plugin.rendering.RenderingService | 35 | render . . . . . . . . . in '' | 65 | render in '' | 59 | doCall . . . . . . . . . in RenderingGrailsPlugin$_closure3 | 18 | download in com.codeharmony.wheeloflife.TestController$$EPKZmnkm | 198 | doFilter . . . . . . . . in grails.plugin.cache.web.filter.PageFragmentCachingFilter | 63 | doFilter in grails.plugin.cache.web.filter.AbstractFilter | 53 | doFilter . . . . . . . . in grails.plugin.springsecurity.web.filter.GrailsAnonymousAuthenticationFilter | 62 | doFilter in grails.plugin.springsecurity.web.authentication.logout.MutableLogoutFilter | 1145 | runWorker . . . . . . . in java.util.concurrent.ThreadPoolExecutor | 615 | run in java.util.concurrent.ThreadPoolExecutor$Worker ^ 745 | run . . . . . . . . . . in java.lang.Thread Note Update: The same code base works with grails version 2.2.4, problem only seen in grails version 2.5.0