微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

绕过grails视图解析器?

如何解决绕过grails视图解析器?

如果您使用的是Grails,请100%使用它,不要尝试混合各种不同的技术。从长远来看,它将节省您的痛苦。

解决方法

我正在尝试在grails应用程序中构建Portlet,并且创建了一个简单的控制器,AbstractController该控制器扩展了返回

new ModelAndView('myportlet')来自handleRequestInternal。我也有一个标准的Jstl view resolver设置,/WEB-INF/jsp但是无论尝试什么,当我尝试在liferay中查看portlet时,都会得到以下stacktrace:

13:19:39,723 ERROR [DispatcherPortlet:559] Could not complete request
java.lang.ClassCastException: org.springframework.web.portlet.context.PortletRequestAttributes cannot be cast to org.codehaus.groovy.grails.web.servlet.mvc.GrailsWebRequest
    at org.codehaus.groovy.grails.web.util.WebUtils.retrieveGrailsWebRequest(WebUtils.java:497)
    at org.codehaus.groovy.grails.web.servlet.view.GrailsViewResolver.loadView(GrailsViewResolver.java:87)
    at org.codehaus.groovy.grails.scaffolding.view.ScaffoldingViewResolver.loadView(ScaffoldingViewResolver.java:61)
    at org.springframework.web.servlet.view.AbstractCachingViewResolver.createView(AbstractCachingViewResolver.java:158)
    at org.springframework.web.servlet.view.UrlBasedViewResolver.createView(UrlBasedViewResolver.java:384)
    at org.springframework.web.servlet.view.AbstractCachingViewResolver.resolveViewName(AbstractCachingViewResolver.java:77)
    at org.springframework.web.portlet.DispatcherPortlet.resolveViewName(DispatcherPortlet.java:1110)

看来,如果可以解决这个问题GrailsViewResolver,我应该能够像在普通spring应用程序中一样启动并运行Portlet。

我正在使用liferay 6,因此grails
liferay插件不是一个选择。我可以做些什么来确保GrailsViewResolver不会尝试解析我的视图/WEB-INF/jsp

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。