yan-web启动报错:Cannot resolve reference to bean 'uploadService' while setting bean property 'ref'

【问题解决】

           1. 异常信息是没找到bean,首先排查是否是所实例化的bean是否添加相应注解

                   

            已添加,继续排查,

            2. 上面没问题,只能仔细排查一下配置文件,结果发现:

                  

            问题解决。

以下摘自:https://blog.csdn.net/zjy15203167987/article/details/79027557

服务端的配置文件applicationContext-service.xml中 用这段代码自动扫描

<context:component-scan base-package="cn.e3mall.service"></context:component-scan>

 在xml配置了<context:component-scan>这个标签后,spring可以自动去扫描base-pack下面或者子包下面的java文件,如果扫描到有@Component @Controller@Service等这些注解的类,则把这些类注册为bean

而dubbo和spring一块使用,ref引用已存在的service服务(即已存在的spring bean对象),service才把已有的service服务发布成dubbo服务

此段代码声明需要暴露的服务接口,将服务发布到注册中心,消费者就可以用了

<dubbo:service interface="cn.e3mall.service.ItemService" ref="ItemServiceImpl" timeout="600000"/>


ref="ItemServiceImpl",这里的ItemServiceImpl就是去找类ItemServiceImpl,这是一个约定,将 ref="XXX"中,将类XXX第一个字母小写。

如果在此处不用自动扫描方法:则需要自己配置bean

<bean id="itemService" class="cn.e3mall.service.impl.ItemServiceImpl"/>
<dubbo:service interface="cn.e3mall.service.ItemService" ref="itemService" timeout="600000"/>

这样配置的话只需要将bean中id的值和ref中的值相等就可以了 

像我这样,ref中的值和类名不对应,当然会报找不到bean的错误
 

猜你喜欢

转载自blog.csdn.net/Leisurelyc/article/details/88796744
今日推荐