论坛首页 Java企业应用论坛

阿里巴巴Dubbo分布式服务框架已开源

浏览 271994 次
该帖已经被评为精华帖
作者 正文
   发表时间:2012-04-05   最后修改:2012-04-05
yanwt 写道
如果我不继承SpringExtensionFactory的话,获取不到spring的context,就不能注入redisTemplate。


只要在Spring中定义的Bean,Dubbo都能自动注入到扩展点中,如:
Spring配置:
<bean id="redisTemplate" ... /> <!-- 在Spring中定义redisTemplate的Bean -->
<dubbo:reference cache="redis" ... />

扩展点:
public class RedisCacheFactory extends AbstractCacheFactory {

    private RedisTemplate redisTemplate;

    // 只需声明Setter,Dubbo会自动注入Spring中的Bean
    public void setRedisTemplate(RedisTemplate redisTemplate) { 
        this.redisTemplate = redisTemplate;
    }

    public Cache createCache(URL url, String method) {
        return new RedisCache(url, redisTemplate); // 创建缓存实现
    }

}
0 请登录后投票
   发表时间:2012-04-05  
非常感谢楼主耐心解答问题,我使用了spring3,习惯了使用@Autowired所以没有写:
// 只需声明Setter,Dubbo会自动注入Spring中的Bean 
    public void setRedisTemplate(RedisTemplate redisTemplate) {  
        this.redisTemplate = redisTemplate; 
    } 
导致不能注入。
0 请登录后投票
   发表时间:2012-04-08  
梁飞,请问这个异常是怎么产生的:
java.lang.NumberFormatException: For input string: "0:0:0:0:0:0:1:20880"
at java.lang.NumberFormatException.forInputString(NumberFormatException.java:48)
at java.lang.Integer.parseInt(Integer.java:458)
at java.lang.Integer.parseInt(Integer.java:499)
at com.alibaba.dubbo.common.URL.valueOf(URL.java:243)
at com.alibaba.dubbo.registry.support.RegistryProtocol.getProviderUrl(RegistryProtocol.java:193)
at com.alibaba.dubbo.registry.support.RegistryProtocol.getCacheKey(RegistryProtocol.java:203)
at com.alibaba.dubbo.registry.support.RegistryProtocol.doLocolExport(RegistryProtocol.java:111)
at com.alibaba.dubbo.registry.support.RegistryProtocol.export(RegistryProtocol.java:93)
at com.alibaba.dubbo.rpc.protocol.ProtocolListenerWrapper.export(ProtocolListenerWrapper.java:54)
at com.alibaba.dubbo.rpc.protocol.ProtocolFilterWrapper.export(ProtocolFilterWrapper.java:53)

在本机没有问题,部署到服务器就报这个异常,不知道什么原因
0 请登录后投票
   发表时间:2012-04-08  
yanwt 写道
梁飞,请问这个异常是怎么产生的:
java.lang.NumberFormatException: For input string: "0:0:0:0:0:0:1:20880"
at java.lang.NumberFormatException.forInputString(NumberFormatException.java:48)
at java.lang.Integer.parseInt(Integer.java:458)
at java.lang.Integer.parseInt(Integer.java:499)
at com.alibaba.dubbo.common.URL.valueOf(URL.java:243)
at com.alibaba.dubbo.registry.support.RegistryProtocol.getProviderUrl(RegistryProtocol.java:193)
at com.alibaba.dubbo.registry.support.RegistryProtocol.getCacheKey(RegistryProtocol.java:203)
at com.alibaba.dubbo.registry.support.RegistryProtocol.doLocolExport(RegistryProtocol.java:111)
at com.alibaba.dubbo.registry.support.RegistryProtocol.export(RegistryProtocol.java:93)
at com.alibaba.dubbo.rpc.protocol.ProtocolListenerWrapper.export(ProtocolListenerWrapper.java:54)
at com.alibaba.dubbo.rpc.protocol.ProtocolFilterWrapper.export(ProtocolFilterWrapper.java:53)

在本机没有问题,部署到服务器就报这个异常,不知道什么原因


检查一下/etc/hosts文件,你的机器名对应的IP地址有问题。
0 请登录后投票
   发表时间:2012-04-09  
我增加了host属性就可以了,谢谢
0 请登录后投票
   发表时间:2012-04-09  
看看自己积分多少
0 请登录后投票
   发表时间:2012-04-09  
梁飞你好 我想用 php客户端 如何调用 java提供者呢  大家如果有想法 也可以告诉小弟 谢谢大家
  • 大小: 9.5 KB
0 请登录后投票
   发表时间:2012-04-10  
请问国际上有没有类似Dubbo的更多社区支持的解决方案,并不是说Dubbo、HSF不好,只是想了解有没有被广泛使用类似的方案??
0 请登录后投票
   发表时间:2012-04-10   最后修改:2012-04-10
phz50 写道
请问国际上有没有类似Dubbo的更多社区支持的解决方案,并不是说Dubbo、HSF不好,只是想了解有没有被广泛使用类似的方案??


有的,类似的方案:
Twitter Finagle: http://twitter.github.com/finagle
LinkedIn Norbert: http://sna-projects.com/norbert
都是Scala实现的,但Java也能调用。
0 请登录后投票
   发表时间:2012-04-17  
試用了一下Dubbo,感覺很不錯,也和以前做的兩個項目集成了在一起試過,用Dubbo的調用方式代替原來的使用web service調用的方式,感覺爽多了。

但碰到一個問題,研究了很久都沒有找到解決辦法,問題就是UserGuide所講到的:配置上Dubbo缓存文件,<dubbo:registry file=”${user.home}/output/dubbo.cache” />這一點。

我在consumer這一端配置了:<dubbo:registry address="zookeeper://127.0.0.1:2181" file="output/dubbo.cache"/>
但我卻找不到dubbo.cache這個文件,也不知如何體現這個功能,所以請教樓主梁飛。
0 请登录后投票
论坛首页 Java企业应用版

跳转论坛:
Global site tag (gtag.js) - Google Analytics