跟通不通过struts没关系的,spring配置文件里面dao可引用了sessionFactory?  dao可继承了HibernateDaoSupport?

解决方案 »

  1.   

    确定已经写了注入sessionFactory的代码,dao也继承了HibernateDaoSupport<bean id="baseDao" class="dao.impl.BaseDaoImpl">
    <property name="sessionFactory">
    <ref local="sessionFactory" />
    </property>
    </bean>public class BaseDaoImpl extends HibernateDaoSupport implements IBaseDao
      

  2.   

    ApplicationContext ac = new ClassPathXmlApplicationContext("/WEB-INF/classes/applicationContext.xml");
    Service service= (Service)ac.getBean("service");这样写试试
    其实你将service注入aciton里面多好啊,这样就可以直接调用了
      

  3.   

    问题解决了,其实是这样的:
    这里调的是userService,userService中调用了userDao,userDao继承了baseDao。
    在页面userService.save时,看上去是调用了userDao.save,但实际上是调用了baseDao,而baseDao没有注入到userService中。 <bean id="userServiceTarget"
    class="service.user.impl.UserServiceImpl">
    <property name="userDao">
    <ref bean="userDao" />
    </property>
    <property name="baseDao">
    <ref bean="baseDao" />
    </property>

    </bean>加上红色部分,就跑得通了。
    另外,测试时是好的,呵呵,那是我失误了,根本就没有测userService的save,所以没有发现问题。唉,教训啊,以后要仔细些才行了!!