您的位置:首页 > 编程语言 > Java开发

dubbo起步搭建Spring+SpringMVC+dubbo的开发环境(6,关于注解)

2014-12-16 13:54 381 查看
继续更新

使用注解来构建dubbo服务的时候。在说明文档中写到可以不写 package 即默认在所有的包中搜索注解。经过测试验证(dubbo 2.5.3)是不正确的。

即这几种写法都是不行的:

<dubbo:annotation />

<dubbo:annotation package="" />

<dubbo:annotation package="*" />

如果需要全局搜索,要在 package 写入最顶层的 包名称 即可 。

例如 服务所在包为: dpjar.dubbo.service.impl

那么以下两个写法都是可以的。

<dubbo:annotation package="dpjar.dubbo.service.impl" />

<dubbo:annotation package="dpjar" />

同理 客户端也是一样。

-----------------------------------------------------

目前注解还有一些问题。

如果使用 spring 配置文件 xml 的方式进行服务注入,任何形式都没有问题;(参见前面的例子)

服务端为普通jar工程,使用注解也是没有问题的;

但是服务端如果是web工程,使用注解就会出现,调用的时候,服务为null的情况。

具体原因,我还没有查到。如果有知道的同学,请留言告诉我。不胜感激

------------------------

问题已经解决:

加上如下配置

<dubbo:consumer check = "false"/>

原因:

使用java工程做服务端的时候,都是先把java服务启动起来之后,再启动服务器去消费。此时,注入服务肯定不会出错;

使用spring 配置文件的时候,是在服务配置的时候,标识了 check=“false” (具体参见实例代码),所以也不会出错;

使用注解的时候,就需要在一个统一配置里,将启动检查项的设置给标识进去。

收工。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: