我为Scala编写了以下代码,尝试将Excel文件发送到浏览器:
val out = new ByteArrayOutputStream
val exporter = new org.pivot4j.ui.poi.ExcelExporter(out)
val renderer = new TableRenderer
renderer.render(model, exporter);
out.flush
out.close
Ok(out).withHeaders(
CONTENT_TYPE -> "application/vnd.ms-excel",
CONTENT_DISPOSITION -> s"attachment; filename = file.xlsx")
Ok
抛出编译错误:
HTTP无法将java.io.ByteArrayOutputStream实例写入◾响应。尝试定义Writeablejava.io.ByteArrayOutputStream
即使ByteArrayOutputStream
的类型为output,也不能写入。如何解决这个问题?
发布于 2018-06-09 03:53:26
尝试在out
上调用toByteArray
,如下所示:
Ok(out.toByteArray).withHeaders(...)
DefaultWritables提供了Play提供的开箱即用的Writable
列表。特别地,当您调用toByteArray
时,存在应该被拾取的Writeable[Array[Byte]]
https://stackoverflow.com/questions/50765602
复制相似问题