我已经完成的步骤:
mavenRepo "http://repo.grails.org/grails/core"
添加到BuildConfig.groovy compile ":easygrid:1.7.1"
添加到BuildConfig.groovy String firstname
和String lastname
def index() { }
views/home/index.gsp
接下来,我将以下内容添加到com.test.HomeController:
def authorJQGrid = {
domainClass Author
gridImpl 'jqgrid'
jqgrid {
sortname 'firstname'
}
export {
export_title 'Author'
pdf {
'border.color' java.awt.Color.BLUE
}
}
columns {
firstname
lastname
}
}
我将以下内容添加到home / index.gsp:
<!DOCTYPE html>
<html>
<head>
<asset:javascript src="easygrid.jqgrid.js"/>
<asset:stylesheet src="easygrid.jqgrid.css"/>
</head>
<body>
<grid:grid id='jqgridinitial' name='authorJQGrid'>
<grid:set width="900" caption="Authors"/>
</grid:grid>
<grid:exportButton name='authorJQGrid'/>
</body>
</html>
编译时,我看到以下错误:
Could not process the EasygridConfig file
当我尝试访问网页时,出现以下错误:
[http-bio-8080-exec-9] ERROR errors.GrailsExceptionResolver - 处理请求时发生NullPointerException:[GET] / website / home / 无法在null对象上获取属性'authorJQGrid'。 Stacktrace如下: 消息:处理GroovyPageView时出错:执行标记时出错:无法在null对象上获取属性'authorJQGrid'
如何让JQGrid正常工作?
答案 0 :(得分:0)
为了使用插件EasyGrid,必须使用@Easygrid注释控制器(定义网格的位置)。
从https://github.com/tudor-malene/grails-petclinic/blob/master/grails-app/controllers/org/grails/samples/OverviewController.groovy中提取的以下示例显示了一个示例:
@Easygrid
class OverviewController {
def ownersGrid = {
domainClass Owner
columns {
id {
type 'id'
enableFilter false
}
firstName
lastName
address
city
telephone
nrPets {
enableFilter false
value { owner ->
owner.pets.size()
}
jqgrid {
sortable false
}
}
}
}
}