在struts-config.xml文件里面如下配置时候:
<
plug-in
className
=
"org.springframework.web.struts.ContextLoaderPlugIn"
>
<
set-property
property
=
"contextConfigLocation"
value
=
"/WEB-INF/dataAccessContext-local.xml,
/WEB-INF/applicationContext.xml,
/WEB-INF/applicationContext-action.xml,
/WEB-INF/applicationContext-hibernate.xml,
/WEB-INF/modules/coreConfiguration/applicationContext-hibernate.xml,
/WEB-INF/modules/coreConfiguration/applicationContext-service.xml"
/>
<!--
<set-property property="contextConfigLocation"
value="/WEB-INF/dataAccessContext-jta.xml,
/WEB-INF/applicationContext.xml,
/WEB-INF/applicationContext-ibatis.xml,
/WEB-INF/applicationContext-service.xml,
/WEB-INF/applicationContext-action.xml"/>
-->
</
plug-in
>
运行action里面的这两条语句:
ApplicationContext ctx = WebApplicationContextUtils.getRequiredWebApplicationContext(servlet.getServletContext());
cardstatusService = (CardstatusService) ctx.getBean("cardstatusService");则取不到cardstatusService 实例。
cardstatusService = (CardstatusService) ctx.getBean("cardstatusService");则取不到cardstatusService 实例。
如果是在web.xml文件里面这样配置:
<
context-param
>
<
param-name
>
contextConfigLocation
</
param-name
>
<
param-value
>
/WEB-INF/dataAccessContext-local.xml,
/WEB-INF/applicationContext.xml,
/WEB-INF/applicationContext-action.xml,
/WEB-INF/applicationContext-hibernate.xml,
/WEB-INF/modules/coreConfiguration/applicationContext-hibernate.xml,
/WEB-INF/modules/coreConfiguration/applicationContext-service.xml
</
param-value
>
</
context-param
>
则可以正常取到上面的实例。