我正在尝试学习如何使用jasper插件从grails应用程序中运行Jasper。在插件目录页面[http://grails.org/plugin/jasper]上有一个相当深入的教程。这应该向您展示如何扩展'racetrack'示例以使用jasper插件。我发现的问题是,由于'registrations.jrxml'没有在教程中显示,也没有附带插件的源代码 - 我不可能弄清楚如何设置jrxml文件工作将数据从grails发送给它。
现在,我的应用程序的控制器正在将一个HashMaps的ArrayList发送回视图,然后使用“g:each”将其转换为html表。它不是域的简单表示,HashMaps是由几个不同的数据源构成的。我还需要通过Jasper将这些数据导出到XLS文件中。现在我可以将jrxml作为参数发送给ArrayList,但是当我将List的每个成员(一行)与jrxml中的Detail相关联时,我无处可去。
因此,对于最简单的情况,我说有一个控制器,它提供一个带有字符串ArrayList的视图
def index = {
def people = ["Donald", "Richard", "Raymond", "Samir", "Cyrus"]
[people: people, guy: "Frank"]
}
以及将ArrayList作为参数传递给Jasper的视图。
<g:jasperReport format="PDF" jasper="don2" name="Don Report">
<input type="hidden" name="name" value="${guy}"/>
<input type="hidden" name="list" value="${people}"/>
</g:jasperReport>
在jrxml中我需要做什么才能使用ArrayList作为我的数据源?
唐