我将为消费者和提供者实现Grails RESTful Web服务。 提供者必须返回pdf文档,消费者必须处理它并将其保存到数据库。 作为提供者如何使用grails rest服务返回pdf文档。 我在soap web服务中使用MTOM来实现这一目标,但不确定如何在Grails休息服务中实现。
请建议我如何使用一些示例代码实现此目的。
谢谢
答案 0 :(得分:2)
这就是我所做的,这就是你可以为制作人做的事情
> def boas = callservicetogenerateReport // this should return an
> byteArray
> // setting the content type
> response.setContentType("application/pdf");
> response.setHeader("Content-Disposition", "attachment;filename=sample.pdf")
> response.setContentLength(boas.size());
> // write ByteArrayOutputStream to the ServletOutputStream
> response.outputStream << boas.toByteArray()
> response.outputStream.flush()
> response.outputStream.close()
对于消费者来说,这就是我在休息电话中所做的,它实际上处理用户通过邮寄提交文件。
request.multiFileMap."files[]".each {file ->
def newFile = new Expando(name: file.originalFilename, size: file.size)
callServicetoAddFileToDB(file)
}
希望这有帮助