我有一个Web控制器,我可以在controller-config.xml中使用
<mvc:annotation-driven />
<context:annotation-config />
<context:component-scan base-package="com.ecommerce.web.controller" />
控制器具有@Controller注释,如下所示。
@Controller
public class HomeController
我已经在依赖项上包括了@Autowired批注,但是当我第一次启动该应用程序时,我无法在有线对象上设置任何属性。
例如,我有一个storeProfile对象,该对象在调试模式下会看到应设置的多个属性。
但是,当我尝试在@Autowried bean上设置storeProfile属性之一时,它仍然为null或为空字符串!
如果查看附件中的图像,则表明在我跳过此行this.storeProfileContext.setStoreProfile(storeProf ile)之后,调试器仍将storeProfile属性显示为null
实际上,有一些依赖关系看起来像是它们创建的(它们不是null和应用程序功能),但是我无法在这些对象上设置任何东西。
我也在Spring论坛上问了同样的问题-希望弄清楚这个问题。
非常感谢!
最佳答案
这是因为您正在查看具有<aop:scoped-proxy/>
时创建的代理的字段,如果调用getter获取设置值,则应该看到从代理对象检索到的正确值。