出于某种原因,我无法自动加载ViewResolver
:
@Component
public class JsonMultipleViewFactory
{
@Autowired
private ViewResolver viewResolver;
// ...
}
viewResolver是null
。
班级JsonMultipleViewFactory
在弹簧控制器中自动装配:
@Controller
public class HomeController
{
@Autowired
private JsonMultipleViewFactory jsonMultipleViewFactory;
// ...
}
我创建了一个github repository,其中包含一个重现问题的小例子。
任何人都可以帮助我吗?
谢谢。
答案 0 :(得分:1)
我在your previous question上回答,没有回答:
在您的示例中,
JsonMultipleViewFactory
是通过发现的 按父上下文(applicationContext.xml
)扫描组件。InternalResourceViewResolver
在子上下文中定义 (test-servlet.xml
)。因此,父上下文无法看到bean是正常的 在子上下文中定义。这就是为什么你得到一个NoSuchBeanDefinitionException
。尝试将所有这些bean放在一起 上下文。
答案 1 :(得分:1)
看起来您没有将视图解析器注册为spring bean,您需要在应用程序上下文中添加如下内容:
<bean class="package.full.name.ViewResolver" />