小编Col*_*ton的帖子

如何在Java中轻松模拟静态方法(jUnit4)

如何在Java中轻松模拟静态方法?

我正在使用Spring 2.5和JUnit 4.4

@Service
public class SomeServiceImpl implements SomeService {

    public Object doSomething() {
        Logger.getLogger(this.class); //a static method invoked.
        // ...
    }
}
Run Code Online (Sandbox Code Playgroud)

我不控制我的服务需要调用的静态方法,所以我不能将它重构为更可单元测试.我使用Log4J Logger作为示例,但真正的静态方法类似. 不能更改静态方法.

做Grails工作,我习惯使用类似的东西:

def mockedControl = mockFor(Logger)
mockControl.demand.static.getLogger{Class clazz-> … }
…
mockControl.verify()
Run Code Online (Sandbox Code Playgroud)

我如何在Java中做类似的事情?

java spring static mocking

15
推荐指数
2
解决办法
2万
查看次数

如何在不重置tomcat的会话超时的情况下执行经过身份验证的AJAX请求?

我有一个现有的Grails Web应用程序正在生产中并且有30分钟的会话超时.我们正在运行Tomcat(tcServer).

当用户通过身份验证并在某些页面上时,我想要定期轮询对服务器的ajax请求,这些请求不会延长这个30分钟的会话超时 - 这样我们的会话超时就不会被阻止.

问题类似于这个未经回答的asp.net问题,但是在Java/Tomcat领域中没有任何答案可以做到这一点.

如何在不重置tomcat的会话超时的情况下执行经过身份验证的AJAX请求?

是否存在某种过滤器或URL匹配机制,我可以使用它来排除延长会话超时的请求?

java ajax grails tomcat session-timeout

8
推荐指数
1
解决办法
3526
查看次数

标签 统计

java ×2

ajax ×1

grails ×1

mocking ×1

session-timeout ×1

spring ×1

static ×1

tomcat ×1