`
kgdso
  • 浏览: 87859 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

Hessian整合Spring的问题

 
阅读更多

在Spring框架中使用Hessian,一般来说都是定义好Spring的转发器以后,把请求和配置好的bean名字(带斜杠)做对应然后依靠 HessianServiceExporter 来得到对应的bean实体进行数据交互。

web.xml中的配置:

 

    <servlet>
        <servlet-name>remote</servlet-name>
        <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
        
        <init-param>
			<param-name>contextConfigLocation</param-name>
			<param-value>/WEB-INF/classes/conf/hessian-spring.xml</param-value>
		</init-param> 
        <load-on-startup>1</load-on-startup> 
    </servlet>
    <servlet-mapping>
        <servlet-name>remote</servlet-name>
        <url-pattern>/remote/*</url-pattern>
    </servlet-mapping> 
 

hessian的bean配置文件:

 

<!-- 一个bean实体,在这里被hessian调用来工作。 -->
	<bean id="testHessianService" class="com.test.webservice.hessian.service.impl.TestHessianServiceImpl">  
    </bean>
    <!-- hessian的bean映射设置。通过访问 xxx/remote/hessianService这个url,可以在这里得到
   		 映射相应的工作bean  --> 
    <bean name="/myHessianService"
        class="org.springframework.remoting.caucho.HessianServiceExporter">  
        <property name="service" ref="testHessianService" />  <!-- 调用相应的bean -->
        <property name="serviceInterface" value="com.test.webservice.hessian.service.TestHessianService" />  <!-- 对外提供的接口 -->
    </bean> 
 

这里我们的bean名字使用了带‘/’符号的形式,那么在默认情况下会被作为url来匹配。

 

但是如果Spring中有配置了"org.springframework.web.servlet.handler.SimpleUrlHandlerMapping"的实例,那么我们的bean名字里面要是有“/”号,就必须把它配置到SimpleUrlHandlerMapping里面,否则系统将不能根据外部传进来的url来找到这个bean,而报错。

以下配置remote后的url为"/myHessianService"的对应一个bean name=hessianService的HessianServiceExporter:

 

<bean id="urlMapping" class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">  
	    <property name="mappings">  
	        <props>  
	            <prop key="/myHessianService">hessianService</prop>  
	        </props>  
	    </property>  
    	
</bean>  

 

如果不希望像上面一样为每个url都手工配置Mapping,则需要在Spring配置中加入:

 

<bean id="defaultBeanNameUrlHandlerMapping" class="org.springframework.web.servlet.handler.BeanNameUrlHandlerMapping" />

 这样我们之前配置的带有斜杠的bean-name就不受SimpleUrlHandlerMapping的影响了。

 

分享到:
评论

相关推荐

    Hessian与Spring整合需要jar包

    在将Hessian与Spring进行整合时,我们需要确保引入了正确的jar包。这些jar包通常包括以下几个核心组件: 1. **Hessian库**:这是实现Hessian RPC的基础,包含了序列化和反序列化的类以及远程调用的相关接口。主要的...

    hessian与spring整合的jar包

    在Hessian整合中,Spring应用上下文将用来注册和管理Hessian服务。 3. **Hessian库**(hessian-4.0.37.jar):这是实现Hessian协议的Java库,提供了创建Hessian服务和客户端的方法。 4. **Spring Web模块**...

    Hessian与spring整合

    Spring Security可以与Hessian整合,提供安全的远程服务访问。 8. **测试与监控**:为了确保服务的稳定性和可靠性,我们需要编写单元测试和集成测试,同时可以借助Spring Boot Actuator等工具,监控服务的运行状态...

    struts2+ibatis+spring+Hessian 整合项目

    struts2+ibatis+spring+Hessian 整合项目 web项目整合,服务端用hessian协议远程调用服务端的方法,hessian是用spring代理整合,struts2+ibatis+spring的整合项目,用作学习和开发基础平台构建很有用处,工程导入...

    Hessian(Spring集成的)的应用与研究

    Spring通过其AOP(面向切面编程)和IoC(控制反转)理念,为Hessian提供了便捷的整合方式。在Spring中,我们可以定义一个Service Bean,然后使用HessianExporter或者HessianProxyFactoryBean来暴露这个服务或者创建...

    hessian-demo和hessian与spring整合demo.doc

    Hessian是一个轻量级的remoting on http工具,使用简单的方法提供了RMI(Remote Method Invocation,远程方法调用)的功能。采用的是二进制RPC(Remote Procedure Call Protocol,远程过程调用协议)协议,因为采用...

    Spring集成Hessian案例

    在IT行业中,Spring框架是Java领域最常用的轻量级应用框架之一,而Hessian则是一种高效的RPC(远程过程调用)协议,它允许服务提供者和消费者之间进行二进制远程方法调用。本案例主要关注如何将Spring与Hessian进行...

    hessian+spring

    ### Hessian与Spring整合知识点详解 #### 一、Hessian简介 Hessian是一个轻量级的远程服务调用框架,其主要特点在于采用高效的二进制格式进行数据传输,这使得它非常适合处理大量的二进制数据。Hessian通过HTTP协议...

    spring整合hessian进行远程通讯

    标题中的“spring整合hessian进行远程通讯”是指在Spring框架中使用Hessian库来实现远程过程调用(RPC)。这是一个常见的技术组合,用于构建分布式系统,使得应用组件之间可以跨网络进行高效通信。 Hessian是一种二...

    Hessian RPC-RMI技术 整合Structs Spring Hibernate Ibatis

    本文主要讨论的是如何将Hessian RPC与RMI技术整合到Structs、Spring、Hibernate和Ibatis这四个关键的Java开发框架中,以构建一个高效、灵活的分布式应用程序。 1. **Hessian配置说明**: Hessian的配置通常涉及...

    spring boot整合hessian的示例

    Spring Boot 整合 Hessian 的示例 在本文中,我们将通过实例代码来介绍如何将 Hessian 集成到 Spring Boot 应用程序中。Hessian 是一个基于 RPC(Remote Procedure Call,远程过程调用)的轻量级框架,它提供了一个...

    Spring整合Hessian访问远程服务

    本篇文章将深入探讨如何将Spring与Hessian整合,实现远程服务的访问。 首先,我们要理解Spring的IoC(Inversion of Control)和AOP(Aspect Oriented Programming)特性。IoC使得我们可以解耦组件间的依赖,AOP则...

    轻量级远程服务调用Hessian的入门实例和与Spring整合的实例.zip

    这个压缩包文件包含了关于Hessian的入门实例以及如何将其与Spring框架整合的教程。 一、Hessian入门实例 Hessian的入门实例主要展示了如何创建一个简单的服务提供者和消费者。首先,我们需要定义一个服务接口,例如...

    srpingMVC+hessian4整合jar包,工程里拷出来的,绝对可用

    Spring MVC 和 Hessian 整合是企业级应用中常见的技术组合,主要用于构建分布式服务。Spring MVC 是一个基于模型-视图-控制器(MVC)设计模式的轻量级 web 框架,而 Hessian 是一种高效的远程方法调用(RPC)协议,...

    spring+hessian+maven整合.zip

    【标题】:“Spring + Hessian + Maven 整合”是一个基于Java的分布式服务开发实践,它结合了Spring框架的强大功能,Hessian的轻量级RPC(远程过程调用)协议,以及Maven作为项目构建和依赖管理工具。这个压缩包包含...

    在 Spring Web Flow 项目中应用 Hessian 服务

    在Spring Web Flow项目中应用Hessian服务,是一个深入整合分布式服务和前端流程管理的重要实践。Spring Web Flow(SWF)是一个强大的MVC框架,用于构建具有复杂导航逻辑的Web应用程序,而Hessian则是一种轻量级的二...

    Spring和Hessian的整合案例

    Hessian是一个由Caucho Technology开发的轻量级二进制RPC协议,因为采用的是二进制协议,所以它很适合于发送二进制数据。 本例子使用spring 整合hessian使开发更加的容易。

    Spring整合Hessian(Maven Web工程)

    一个Spring整合Hessian的Demo,同时包含Hessian服务端与客户端。是一个Maven工程,IDE使用的Eclipse,运行前需要安装Eclipse的Maven插件。可以结合文章一起学习,地址是...

    hessian3.1和spring2.5的结合

    标题 "Hessian3.1与Spring2.5的整合" 涉及的是在Java开发环境中,如何将Hessian远程调用服务与Spring框架相结合,以便实现高效、轻量级的分布式服务通信。Hessian是一种二进制协议,它允许远程方法调用(RMI)在HTTP上...

Global site tag (gtag.js) - Google Analytics