【发布时间】:2014-03-29 22:41:32
【问题描述】:
有一个使用 Vaadin7 和 grails 的应用程序(感谢 Ondrej 的插件)。当我在 Vaadin 组件中实现业务逻辑时,我也对使用 grails 控制器运行经典 MVC 模式的管理控制台感兴趣,以便管理用户、日志和其他事件。
然后,在 VaadinConfig 中,我将 URL 映射添加到 grails 控制器(包括下面的 spring-security-ui):
mappingExtras = [
'/console/*',
'/user/*',
'/role/*',
'/securityInfo/*'
]
显示列表和从数据库检索数据非常有用,但是当我需要将参数传递给控制器以保存或更新域对象时失败。因此我收到以下错误:
java.lang.IllegalArgumentException: Method name must not be null
at grails.plugin.cache.web.ProxyAwareMixedGrailsControllerHelper.retrieveAction(ProxyAwareMixedGrailsControllerHelper.java:41)
at grails.plugin.springsecurity.web.filter.GrailsAnonymousAuthenticationFilter.doFilter(GrailsAnonymousAuthenticationFilter.java:53)
at grails.plugin.springsecurity.web.authentication.RequestHolderAuthenticationFilter.doFilter(RequestHolderAuthenticationFilter.java:49)
at grails.plugin.springsecurity.web.authentication.logout.MutableLogoutFilter.doFilter(MutableLogoutFilter.java:82)
at grails.plugin.springsecurity.web.filter.DebugFilter.invokeWithWrappedRequest(DebugFilter.java:102)
at grails.plugin.springsecurity.web.filter.DebugFilter.doFilter(DebugFilter.java:69)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
在这种情况下,有没有办法轻松代理控制器?如何摆脱 ProxyAwareMixedGrailsControllerHelper 错误并注入参数?
非常感谢
【问题讨论】:
标签: grails spring-security vaadin7