我已经在Grails应用程序中实现了一个简单的 session 侦听器,但是这导致集成测试因以下原因而失败:
java.lang.UnsupportedOperationException at org.springframework.mock.web.MockServletContext.addListener(MockServletContext.java:675) at BootStrap$_closure1.doCall(BootStrap.groovy:44) at grails.util.Environment.evaluateEnvironmentSpecificBlock(Environment.java:327)
这是因为用于测试的MockServletContext不支持我在下面的Bootstrap.groovy中添加的此侦听器:
def init = {
servletContext ->
servletContext.addListener(userLoginSessionListener)
....
}
但是有没有办法忽略这一点或注释我的测试而不要求它。
最佳答案
事实证明,这是最明显的修复程序,仅排除在测试环境中添加侦听器。
if (Environment.current != Environment.TEST) {
servletContext.addListener(UserLoginSessionListener)
}
关于session - Grails-UnsupportedOperationException-集成测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36799941/