答案是@ContextConfiguration(classes={RootApplicationContext.class, ServletApplicationContext.class})
在测试环境中和生产环境中的继承不是一回事。在测试环境中,您包括RootApplicationContext
并ServletApplicationContext
作为测试应用程序上下文的一部分。在生产中,使用继承而不是简单包含,如您在问题中所述。
似乎beanfactoryPostProcessor
(@EnableAspectJAutoProxy
在您的情况下)父级上下文中的内容不适用于子级上下文。要使其在生产@EnableAspectJAutoProxy
环境中起作用,您还必须在子上下文中明确定义。
在这种情况下,Spring上下文定义应如下所示:
要么