Hessian,Burlap是Caucho提供的两种基于Http的轻量级远程服务。
       Hessian像RMI那样,使用二进制消息来建立客户端和服务端之间的交流。与其他二进制远程技术(想RMI)不同的是,它可以移植到其他非Java的语言。
      Burlap是一种基于Xml的远程技术,这使得他可以移植到任何可以解析XML的语言中。比起Hessian,它的可读性更强。和其他基于Xml的远程技术(如SOAP和XML-RPC)不同,它的消息结构尽可能简单,不需要额外的外部定义语言(如WSDL或IDL).
 针对前面的例子,看看spring对Hessian和Burlap是怎么简化。
1.Hessian
1)客户端的配置,只需要修改bean_client.xml的配置
<beans>
    
<!--客户端-->
    
<bean id="pf" class="org.springframework.remoting.caucho.HessianProxyFactoryBean">
        
<property name="serviceUrl"  value="http://192.168.1.8:8080/spring/pay.service"/>
        
<property name="serviceInterface" value="com.open.rmi.ex2.PerfectTimeI"/>
    
</bean>
    
<bean id="test" class="com.open.rmi.ex2.DisplayPerfectTime">
        
<property name="pf" ref="pf"/>
    
</bean>
</beans>
Hessian和Burlap是基于Http的,http://192.168.1.8:8080/spring/pay.service是服务端的访问地址
2)服务端的配置,这里
采用spring的mvc
先在web.xml中增加下面的配置
<servlet>
        
<servlet-name>Dispatcher</servlet-name>
        
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
</servlet>
    
<servlet-mapping>
        
<servlet-name>Dispatcher</servlet-name>
        
<url-pattern>*.service</url-pattern>
    
</servlet-mapping>

第一节中的bean_server.xml就改配置Dispatcher-servlet.xml文件中了
<beans>
    
<bean id="urlMapping" class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">
        
<property name="mappings">
            
<props>
                
<prop key="/pay.service">hessianService</prop>
            
</props>
        
</property>
    
</bean>
    
<bean id="hessianService" class="org.springframework.remoting.caucho.HessianServiceExporter">
        
<property name="service" ref="pt"/>
        
<property name="serviceInterface" value="com.open.rmi.ex2.PerfectTimeI"/>
    
</bean>
    
<bean id="pt" class="com.open.rmi.ex2.PerfectTime"/>
</bean>
跟第一节的相比只是更换了代理类,启动tomcat,在运行TestClient就可以看到输出结果了
2.Burlap
只要把bean_client.xml中的HessianProxyFactoryBean改成BurlapProxyFactoryBean,Dispatcher-servlet.xml中的HessianServiceExporter改成BurlapServiceExporter,就可以了。
      通过上面可以看到,应用从纯RMI转换到Hessian,Burlap是多么容易啊!