hessian或Burlap远程调用服务器端

因为我用spring管理bean,所以要先在web.xml配置相关信息
[!--  spring listener --]
[listener]
   [listener-class]org.springframework.web.context.ContextLoaderListener[/listener-class]
[/listener]
 
[!-- server: RemoteService Hessian config file --]
[servlet]
   [servlet-name]remote[/servlet-name]
   [servlet-class]org.springframework.web.servlet.DispatcherServlet[/servlet-class]
   [load-on-startup]2[/load-on-startup]
[/servlet]

通过DispatcherServlet,我们把含remote的来访URL交给hessian处理
[servlet-mapping]
   [servlet-name]remote[/servlet-name]
   [url-pattern]/remote/*[/url-pattern]
[/servlet-mapping]

另外我们单独配置了一个remote-servlet.xml,注意看下面的
 [context-param]
    [param-name]contextConfigLocation[/param-name]
    [param-value]/WEB-INF/applicationContext.xml[/param-value]
    [!--  [param-value]/WEB-INF/remote-servlet.xml[/param-value]--]
 [/context-param]
我把这个文件在web.xml里的配置注释掉了,照样起作用,这是因为spring的web包默认要读取这个文件,当然不一定要命名为remote-servlet.xml,spring会按照一定的命名规范读取相应的文件的,以下是我的remote-servlet.xml的配置:

[beans]
 [description]server properties[/description]

远程调用的实现类 
[bean id="myService"
  class="org.wsw.framework.remoteservice.imp.MyServiceImpl"]
  [property name="actCodeService"]
   [ref local="sysActCodeServiceServerSide" /]
  [/property]
  [property name="courseItemPersonalDAO"]
   [ref bean="courseItemPersonalDAO" /]
  [/property]
 [/bean]

 [!--InsertServiceSysActCode--]
 [bean id="sysActCodeServiceServerSide"
  class="org.springframework.transaction.interceptor.TransactionProxyFactoryBean"]
  [property name="transactionManager"]
   [ref bean="transactionMgr"/]
  [/property]
  [property name="target"]
   [ref local="sysActCodeTargetServerSide" /]
  [/property]
  [property name="transactionAttributes"]
   [props]
    [prop key="get*"]PROPAGATION_REQUIRED[/prop]
    [prop key="add*"]PROPAGATION_REQUIRED[/prop]
    [prop key="update*"]PROPAGATION_REQUIRED[/prop]
    [prop key="delete*"]PROPAGATION_REQUIRED[/prop]
    [prop key="create*"]PROPAGATION_REQUIRED[/prop]
    [prop key="find*"]PROPAGATION_REQUIRED[/prop]
   [/props]
  [/property]
 [/bean]
 [bean id="sysActCodeTargetServerSide"
  class="org.wsw.service.spring.SysActCodeServiceSpringImplServerSide"]
  [property name="baseDao"]
   [ref local="sysActCodeDaoServerSide" /]
  [/property]
 [/bean]
 [bean id="sysActCodeDaoServerSide"
  class="org.wsw.service.dao.hibernate.SysActCodeDaoImpl"]
  [property name="sessionFactory"]
   [ref bean="sessionFactory"/]
  [/property]
 [/bean]

远程调用的接口,注意这里bean的name属性,当然要是用burlap,用BurlapServiceExplorter
 [bean name="/remoteService"
  class="org.springframework.remoting.caucho.HessianServiceExporter"]
  [property name="service"]
   [ref local="myService"/]
  [/property]
  [property name="serviceInterface"]
   [value]
    org.wsw.framework.remoteservice.MyService
   [/value]
  [/property]
 [/bean]

[/beans]

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值