dubbo上传文件

在使用dubbo过程中碰到了需要上传图片这样的需求,而dubbo协议适合于小数据量大并发的服务调用,像上传文件这种需求推荐使用hessian协议。下面记录使用hessian协议爆露服务中出现的问题。
1.引入hessian的jar

  
        com.caucho
    hessian
    4.0.7

2.在web.xml中增加servlet配置


         dubbo
         com.alibaba.dubbo.remoting.http.servlet.DispatcherServlet
         1
    
    
             dubbo
             /*
    

3.在provider中配置hession协议

 
 
    

注意我的web容器是tomcat,而且使用servlet派发请求,所以这里的port和tomcat的端口保持一直。contextpath设置的是servlet引用上下文的路径(在web.xml中的配置的)。

4.在consumer端配置没有特殊的地方,除了引用dubbo的jar,还有引用hessian的jar

5.启动tomcat加载项目。在这个地方有个需要注意的地方,项目的访问不能带有项目名称。一般情况下配置后tomcat访问项目:http://127.0.0.1:8080/projectname,这里指的意思是把项目的访问路径配置为:http://127.0.0.1:8080 即可。

6.最好以多个InputStream而不File的形式传递参数,否则在多个应用之间中转会出现问题。

你可能感兴趣的:(dubbo上传文件)