我在Grails中使用d3.js。我有一个叫做vis的观点。在脚本部分,我打电话给:
<body>
<script>
...
d3.csv("data", function(error, data) {
if (error) throw error;
...
}
</script>
</body>
在我的UrlMappings中,我有:
"/vis/data"(view:'/vis/data.csv')
当页面加载时,我收到以下错误:
Class: java.lang.OutOfMemoryError
Message: Error mapping onto view [/vis/data.csv]: Java heap space
Caused by: Java heap space
我的csv文件有230MB。
在Grails中调用d3库的正确方法是什么?我想将我的csv文件放在conf / data文件夹中。
修改
我需要在客户端加载文件,我相信Large file download using grails
中的问题不一样我知道大文件需要部分阅读,但我怎样才能在客户端实现这一目标?
提前致谢。
答案 0 :(得分:0)
您的错误与以下SO非常相似: Large file download using grails
基本上,避免将整个csv文件加载到内存中。 Grails有文件助手。由于您的CSV文件位于文件系统上,因此应该可以使用。如果要转换数据,可能需要对创建缓冲区,迭代数据等进行一些研究......