小编Dan*_*sen的帖子

Spring HandlerInterceptor 被调用两次

在一个库项目(使用 Spring 3.2.4)中,我定义了多个拦截器。servlet 配置 xml 文件包含在要导入到 Web 应用程序中的 jar 中。拦截器在多个 servlet xml 中使用,因为它们应用于具有不同拦截器的不同 Dispatcher servlet。

问题是,拦截器被调用两次,但处理程序(控制器)只被调用一次。

拦截器在库项目中定义:

public class SomeInterceptor extends HandlerInterceptorAdapter {

        @Override
        public void afterCompletion(final HttpServletRequest request, final HttpServletResponse response, final Object handler, final Exception ex) throws Exception {
            System.out.println("afterCompletionCalled");
        }

        @Override
        public boolean preHandle(final HttpServletRequest request, final HttpServletResponse response, final Object handler) throws Exception {
            System.out.println("preHandle called");
            return true;
        }

        @Override
        public void postHandle(final HttpServletRequest request, final HttpServletResponse response, final Object handler, final ModelAndView modelAndView) throws Exception …
Run Code Online (Sandbox Code Playgroud)

java spring spring-mvc

6
推荐指数
1
解决办法
7559
查看次数

Arquillian 在多个测试方法中重用 RequestScoped Bean

我的 JEE 6 应用程序使用 CDI 以及带有嵌入式 tomee (1.7.2) 的 Arquillian 来测试它。在具有多个测试方法的测试类中,同一个 Request Scoped Bean 实例被注入到多个测试方法中。当应用程序部署在独立的 tomee plus 1.7.2 上时,不会出现该问题。

根据arquillian 文档,请求范围的 bean 实例只能用于一种测试方法。不幸的是 tomee 嵌入了自己,Arquillian 文档中没有提到它。这是 tomee 嵌入的已知限制吗?如果没有,如何修复?

服务等级:

@RequestScoped
public class SomeService
{
    private String user;

    public String execute(final String pNewUser)
    {
        if(user == null){
            user = pNewUser;
        } 
        return user;
    }
}
Run Code Online (Sandbox Code Playgroud)

测试级:

@RunWith(Arquillian.class)
public class TestCase
{

    @Inject
    private SomeService someService;

    @Deployment
    public static WebArchive createDeployment()
    {
        return DefaultMicroDeploymenCreator.createDefaultMicroDeplymentWithFileName("TestCase.war");
    }

    @Test
    public void testFirstTestMethod() throws …
Run Code Online (Sandbox Code Playgroud)

java java-ee-6 jboss-arquillian apache-tomee jakarta-ee

3
推荐指数
1
解决办法
1439
查看次数