Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

dubbo2.5.3注解方式无效 #117

Closed
xuzunyuan opened this issue Apr 17, 2015 · 28 comments
Closed

dubbo2.5.3注解方式无效 #117

xuzunyuan opened this issue Apr 17, 2015 · 28 comments

Comments

@xuzunyuan
Copy link

参照了dubbo用户指南,按照上面说的做了注解配置。
本想采用自动扫描,减少开发的工作量,但是无效。

有配置注解成功的吗?讲解一下吧

@love61v
Copy link

love61v commented Apr 18, 2015

@Autowired注解

@enson16855
Copy link

    @Autowired
private DemoService demoService;

public void say() {
    String hello = demoService.sayHello("world"); // 执行远程方法

    System.out.println(hello); // 显示调用结果
}

还是一样出现:
Exception in thread "main" java.lang.NullPointerException
at com.alibaba.dubbo.demo.Say.say(Say.java:11)

@enson16855
Copy link

@Reference(version="1.0.0")
private DemoService demoService;

public void say() {
    String hello = demoService.sayHello("world"); // 执行远程方法

    System.out.println(hello); // 显示调用结果
}

这种方式也出现了空指针

@usc
Copy link

usc commented Jul 16, 2015

spring配置文件需要加上

<context:component-scan base-package="xxx" />  

ps. 也可以在dubbo的xml配置文件中配
dubbo consumer 配置文件 dubbo:reference 正常配置,
@Autowired 注解就可以正常使用了

或者参考
文档注解配置

@love61v
Copy link

love61v commented Jul 17, 2015

1<context:component-scan base-package="xxx" />你配置了;如果能正常扫到@service就能注入;
注意: @service是 dubbo包中的@service不是spring的哟、
2.你不能注入报空指针,那么你可用原始的 这种方法测试还报空否咯, 不然就是@service生效
3.祝好运

@love61v
Copy link

love61v commented Jul 17, 2015

context:component-scan扫包
原始的: 上面这2行都掉了

@love61v
Copy link

love61v commented Jul 17, 2015

bean id="demoServiceImpl" class="xxxxxx"

@enson16855
Copy link

XML方式没有任何问题,@service也没有问题,在dubbo控制台可以看到接口注册生效了,但就是在@reference(version="1.0.0") 这边,注入不进来,拿到的是null

@enson16855
Copy link

因为项目之前使用的是annotation的方式 如果切换回XML方式 会比较麻烦,所以想继续使用annotation的方式

@ghost
Copy link

ghost commented Jul 19, 2015

@enson16855 我也遇到相同的问题,请问解决了吗

@zuochi
Copy link

zuochi commented Sep 10, 2015

我成功了,出现空指针的原因是:spring mvc扫描的时候根本无法识别@reference,同一方面,dubbo的扫描也无法识别Spring @controller,所以两个扫描的顺序要排列好,如果先扫了controller,这时候把控制器都实例化好了,再扫dubbo的服务,就会出现空指针。

下面是我成功的代码:

<mvc:annotation-driven />


<dubbo:annotation package="XXX.XXX.XXX.controller" />

<context:component-scan base-package="XXX.XXX.XXX.controller"/>

祝成功

@justein
Copy link

justein commented Sep 10, 2015

你们都集成了Spring3了么?还有,每个服务的数据源怎么配置?

@enson16855
Copy link

@zuochi 成功的代码呢?分享一下 好不

@zuochi
Copy link

zuochi commented Sep 10, 2015

@enson16855 分享了,就是这么简单。。。搞了一个早上,尼玛

@zuochi
Copy link

zuochi commented Sep 10, 2015

@justein 我集成了4.x的

@justein
Copy link

justein commented Sep 10, 2015

@zuochi 我刚集成了3.2,现在想搞一个实际的业务发布成服务试一试

@enson16855
Copy link

@justein 我也是集成4.x

@justein
Copy link

justein commented Sep 10, 2015

@enson16855 就修改了一下dubbo的pom.xml。主要是我们上个项目用的S3,所以就集成到3了。

@love61v
Copy link

love61v commented Sep 14, 2015

https://github.com/love61v/dubbo-demo 我这有个 小demo, doc下有小说明, 如有需要可小看,请拍砖

@wangjingfei
Copy link

谢谢提供workaround方案

@zhilongxia
Copy link

zhilongxia commented May 20, 2016

@Referenceh和@Autowired均需要在spring mvc的DispatcherServlet配置中显式配置dubbo consumer的配置.如/WEB-INF/applicationContext-dubbo-consumer.xml 否则在Controller中服务报NullPointException

@genghaizhou
Copy link

@reference @service 和注解
先启动 consumer 再启动 provider, 调用就会空指针,但是反过来却正常
按照 dubbo + zk 的 notify 机制 应该是可以更新的
实际上: consumer 确实收到 zk notify 了,但还是调用 @reference 还是 null
感觉上 notify 应该没有更新 Reference 的 remote serice
还有遇到这个问题了吗?
。。求解决

@zouchunhui
Copy link

备注一下。

@ralf0131
Copy link
Contributor

The latest Dubbo should support annotation configuration very well, please checkout this latest code! I am closing this issue.

@m11y
Copy link

m11y commented Sep 3, 2018

@genghaizhou 我们碰到了相同问题,provider 先启动没有问题,后启动就 null, 并且 provider 启动之后, consumer 也不会自动发现,仍然是 null.

        <dependency>
            <groupId>com.alibaba.boot</groupId>
            <artifactId>dubbo-spring-boot-starter</artifactId>
            <version>0.2.0</version>
        </dependency>

dubbo version 2.6.2.

@m11y
Copy link

m11y commented Sep 3, 2018

配置 dubbo.consumer.check=false 解决问题

shareblitz pushed a commit to shareblitz/incubator-dubbo that referenced this issue Dec 19, 2018
* add Access Control search/delete/batch delete.

* add Access Control create.

* Change to use one DTO.

* add edit Access Control
@TrillStones
Copy link

如果运行在sping-boot中,并且使用yml配置文件,则这个路径要能扫到你的“@reference”注解。
image

@voyagertanyao
Copy link

@wangjunwei87 方案可行

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests