【发布时间】:2012-06-21 21:49:32
【问题描述】:
我一直在尝试将 Grails Portlet 插件与 Liferay 一起使用,但无论教程怎么说,我似乎都无法呈现不同的页面:
查看映射
对于那些支持它的请求类型('resource'、'render'),可以通过让 portlet 操作闭包返回一个映射来返回一个模型。模型将使用以下规则(按先例顺序)传递给视图:
“XXX/xyz.gsp”,其中“XXX”是 portlet 的名称(例如 XXXPortlet.groovy),“xyz”是请求中“action”参数的值。
'XXX/MODE.gsp'其中'XXX'是portlet的名称(例如XXXPortlet.groovy),'MODE'是当前的portlet模式(例如'view')
'XXX/render.gsp'
到目前为止,我已经能够通过此代码触发特定操作:
<form method="post" action="${portletResponse.createActionURL()}">
<input type="hidden" name="action" value="testPage"/>
<input type="submit" value="action">
</form>
这将触发一个代码块:
def testPage = {
println "TESTPAGE METHOD"
}
但是之后它总是会渲染 View.gsp,不像它所说的 XXX/testPage.gsp 会起作用。
此外,我尝试使用 createRenderURL() 而不是 createActionURL(),但是 portlet 将呈现一个空白页面,我似乎无法在日志中找到它试图查找的页面。
任何关于此的帮助都会很棒,谢谢!
【问题讨论】: