No class by name: dwrService

  在学习dwr过程中发现了No class by name: dwrService这个错误,后来仔细照着视频重新做了一遍发现了问题所在,原来是配置bean的时候出现了问题。
  我一开始的时候使用了@service注解来自动注入bean,这种方式的好处是不需要在xml中配置bean节省了时间,但是对于dwr来说如果你在dwr.xml配置的beanName的value值和service中注入的bean名称不一致的话就会出现上面的错误。举个例子,我的service中关于dwr的实现类为DwrServiceImpl.java,由于我在service中直接使用了@service注解并没有配置bean的名称所以导致了dwr找不到bean的问题。我后来参考视频进行了测试,视频中采用的方式是在applicationContext-service.xml中配置一个bean的配置文件,比如:< bean id = “dwrService” class = “com.onespace.ypcg.service.impl.DwrServiceImpl” />。这种方式我自己测试了一下,可以正确的展示出dwrService.js。
  这里写图片描述
  后来我自己分析了一下,既然是bean名称的问题,那么即使不在配置文件中配置bean,在@service中配置也是一样的。基于这个思路,我查找了资料只需要在DwrServiceImpl类上加上@service(“dwrService”)这个注解指定一个名称,那么spring就不会使用默认的包名+类名作为bean名称了。我后来测试了一下,也是可以正常访问的。

参考资料
http://blog.csdn.net/xiao190128/article/details/54890759

猜你喜欢

转载自blog.csdn.net/innovate1989/article/details/78453010