我在MySQL数据库中有一些数组形式的字符串,我想在Grails Google Charts插件中使用,但是我无法让插件接受它们。
我的字符串看起来像[['string', 'Month'], ['number', 'Stories']]
和[['April', 0], ['May', 0], ['June', 0], ['July', '12152']]
,这是正确的格式,但是我正在尝试解决“字符串索引超出范围错误”。
我正在使用g:set设置变量,然后将它们传递给gvisualization:
<g:each in="${groupsInstance.charts}" var="c">
<g:set var="chartColumns" value="${c.chartColumns}" />
<g:set var="chartData" value="${c.chartData}" />
<g:set var="chartType" value="${c.chartType}" />
<g:set var="chartDisplayKey" value="${chartType.chartKey}" />
<g:if test="${c.id == 1}">
<gvisualization:columnCoreChart elementId="${chartDisplayKey}"
width="${225}"
height="${225}"
legend="none"
columns="${chartColumns}"
data="${chartData}" />
</g:if>
</g:each>
当我尝试这样做时,我在应用程序中收到以下错误:
Error 500: Internal Server Error
URI: /appDash/groups/show/1
Class: java.lang.StringIndexOutOfBoundsException
Message: String index out of range: 2
控制台:
Error |
2014-08-12 12:36:51,717 [http-bio-8080-exec-6] ERROR errors.GrailsExceptionResolver - StringIndexOutOfBoundsException occurred when processing request: [GET] /app/groups/show/1
String index out of range: 2. Stacktrace follows:
Message: Error processing GroovyPageView: Error executing tag <gvisualization:columnCoreChart>: String index out of range: 2
如果我在页面顶部初始化变量并使用它们,那么它可以正常工作;当我尝试将字符串拉出数据库时发生错误。我试图找到这种方式使用插件的例子但没有取得多大成功。