日期:2014-05-17  浏览次数:20797 次

Struts1.2下测试action时不能加载spring配置文件
使用strutstest214-1.2_2.4测试Struts1.2的action时,提示java.lang.IllegalStateException: No WebApplicationContext found: no ContextLoaderListener registered?,我在web.xml中已经添加了如下配置:
XML code
<context-param>
        <param-name>contextConfigLocation</param-name>
        <param-value>/WEB-INF/applicationContext.xml</param-value>
    </context-param>
    <listener>
        <listener-class>
            org.springframework.web.context.ContextLoaderListener
        </listener-class>
    </listener>

开发环境是Struts1.2+spring2.0+ibatis2.3,代码如下:
Java code
@Test
    public void testUnspecified() {
        setContextDirectory(new File("WebRoot"));
        setRequestPathInfo("/loginAction");
        try {
            addRequestParameter("loginName", "001");
            addRequestParameter("passWd", "001");
            actionPerform();
        } catch (Exception e) {
            e.printStackTrace();
        }
    }

有没有遇到过这个问题呀,谢谢了。。。

------解决方案--------------------
从错误提示信息看,应该是你的applicationContext.xml路径配置有问题,你的applicationContext是放在WEB-INF下还是src下,如果是src用classpath:applicationContext.xml吧
------解决方案--------------------
可能是没找着applicationContext.xml,不知道你放的路径是哪里。
用这个试试
<context-param> 
<param-name>contextConfigLocation</param-name> 
<param-value>/WEB-INF/applicationContext*.xml,classpath*:applicationContext*.xml</param-value> 
</context-param> 

另外,看看配文件,名称是不是哪个字母写错了,没认出来,注意下细节,有时就是因为一点点大意就弄错了。