`
hsrong
  • 浏览: 36520 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

Hessian android版(基于官方Hessian 4.07)

阅读更多
官方的Hessian还没有支持android,hessdroid现在无法支持自定义异常,比如后台抛出一个LoginException,hessdroid无法正确转化该异常,但官方原版可以。现在基于官方版本修改一份android版的。所做的修改仅仅是删除一些android不支持的类,及对应的逻辑判断。
1. 删除com.caucho.hessian.jmx包
2. 删除com.caucho.services.name包
3. 删除com.caucho.hessian.server包
4. 删除com.caucho.services.server下除AbstractSkeleton.java外所有类
5. 删除UnsafeDeserializer.java、UnsafeSerializer.java以及相关逻辑判断

在传输中出现了 BigDecimal 类型的属性值在传输后变为 0 值的情况。
解决方法: 在server端的hessian.jar 的 META-INF/hessian 目录下加入 serializers 和 deserializers 这两个文件,  两个文件的内容如下:
serializers
--------------------------
java.math.BigDecimal=com.caucho.hessian.io.StringValueSerializer

deserializers
--------------------------
java.math.BigDecimal=com.caucho.hessian.io.BigDecimalDeserializer


但在android中不能加到 META-INF/hessian 目录中,解决办法是
在assets中添加hessian_deserializers和hessian_serializers文件,内容一样
对应的hessian的ContextSerializerFactory类中META-INF/hessian/serializers和META-INF/hessian/deserializers的字符串对应改为assets/hessian_serializers和assets/hessian_deserializers
分享到:
评论
5 楼 linuxtyh 2015-12-24  
asdfsd
4 楼 tomatozq 2015-08-01  
NoClassDefFoundError是因为lib库的java编译器版本高于android的java编译器版本,都设置成1.6就行了。
3 楼 xieyulin2006 2014-06-30  
哥们 ,您好 ,能把hessian-4.0.7-android的源码共享下吗 ?
2 楼 tony21st 2013-08-22  
按楼主的方式,我对hessian4.07做相同的定制,仍然会在客户端调用出现NoClassDefFoundError,求解
1 楼 machismo 2013-07-22  
太感谢了~  赞一个

相关推荐

    Hessian android版

    总结来说,Hessian android版是Android开发中实现轻量级、高效远程服务调用的一种技术,涉及网络通信、序列化、安全等多个方面,理解并熟练掌握这些知识点对于开发高质量的Android应用至关重要。

    Hessian多个版本打包下载

    这个压缩包包含了Hessian的多个版本,分别是Hessian3.1.6、Hessian3.2.1以及Hessian4.0.7。每个版本都有其特定的功能改进和优化,了解这些版本的区别和适用场景对于开发者来说至关重要。 Hessian3.1.6是Hessian的一...

    hessian小例(java)

    Hessian基于HTTP协议,能够将Java对象序列化为二进制流,从而在服务端和客户端之间高效地传输。它减少了网络传输的数据量,提高了通信速度。Hessian的优点在于其简单性、高效性和跨语言支持,使得不同平台的应用可以...

    android端使用hessian跟web服务器通讯

    在Android应用开发中,与Web服务器进行通讯是常见的需求,Hessian是一种二进制协议,它使得Java和Java、Java和其他语言(如Python、C++)之间的远程调用变得高效且简便。本教程将深入探讨如何在Android端利用Hessian...

    基于python的Hessian Frangi滤波算法设计与实现

    它基于Hessian矩阵,可以有效地检测图像中的线性和圆状结构。本篇文章将深入探讨如何使用Python实现这个算法。 首先,我们需要了解Hessian矩阵。在图像处理中,Hessian矩阵是图像二阶导数的一种表示,用于描述局部...

    基于Hessian矩阵增强的心血管分割_hessian_hessian血管_hessian血管分割_血管分割_Hessian矩阵

    本文将深入探讨标题和描述中提到的"基于Hessian矩阵增强的心血管分割"这一主题。 Hessian矩阵是图像处理中的一个核心概念,它描述了图像在某一点的二阶导数,即图像的曲率。对于二值图像或灰度图像,Hessian矩阵...

    android版hessian.jar下载

    google官网提供的hessdroid不可用,里面包含一些android不支持的类;hessian官网的jar包适用于web端,不适用于android端开发,改包所做的修改仅仅是删除一些android不支持的类

    基于spring+hessian框架的webservice实例

    本实例重点探讨的是基于Spring框架和Hessian协议的Web Service实现,这是一种轻量级、高效的远程调用解决方案。 首先,我们要理解Spring框架。Spring是Java领域的一个核心框架,它提供了全面的编程和配置模型,用于...

    android实现Hessian通信源码

    在android与web端实现hessian通信,源码为android客户端源码,jar包来自http://hsrong.iteye.com/blog/1719996,google官网提供的hessdroid不可用,因为里面...hessian官网的jar包适用于web端,不适用于android端开发。

    Hessian异步请求访问包

    本知识点主要关注的是在Android平台上,如何使用Hessian进行异步请求访问,以便提高应用程序的性能和用户体验。 Hessian是由Caucho公司开发的一种轻量级、高效的RPC(Remote Procedure Call)协议。它将Java对象...

    Hessian and Aandroid通讯

    《Hessian在Android通信中的应用》 在移动应用开发中,客户端与服务器之间的通信是必不可少的环节。在Android系统上,我们通常会采用各种网络通信技术来实现这一目标,如HTTP、RESTful API等。而Hessian,作为一种...

    基于matlab使用 hessian 特征值增强 2D3D 图像中的血管脊状结构

    接下来,`FrangiFilter2D.m`和`FrangiFilter3D.m`是基于Frangi滤波器的实现。Frangi滤波器是针对血管检测优化的算法,它利用Hessian矩阵的特征值来检测血管结构。这个滤波器考虑了血管的特性,如管状结构的径向对称...

    基于java的Hessian实现

    基于java实现hessian进行服务器之间数据交互demo项目 实现功能: 1.基于spring 2.5.6+hessian3.1.6带有签名安全机制 2.基于servlet代理机制实现HessianServlet,进行简单IP地址校验功能!

    hessian案例,hessian案例

    通常,Hessian因其二进制格式,相比基于XML的协议(如SOAP)在速度和带宽效率上更具优势。 6. **HTTP协议的RPC**:"几种基于HTTP协议的RPC性能比较.txt"文件可能分析了在HTTP上运行的RPC框架,包括使用Hessian的...

    基于原生Hessian v4.0.51的SOFA-Hessian设计源码优化版

    该优化版SOFA-Hessian项目基于原生Hessian v4.0.51构建,经过蚂蚁金服多年内部稳定运行,现已进行多项改进。项目包含317个文件,其中Java源文件300个,XML、YML、Markdown、HTML等配置和说明文件共计7个,并支持...

    Hessian 使用小结

    - Hessian安全API:查看Hessian文档或官方公告 - Spring集成Hessian:http://static.springsource.org/spring/docs/3.0.x/spring-framework-reference/html/remoting.html 通过这些资源,开发者可以更深入地理解并...

    多尺度hessian滤波器图像增强

    这个技术是基于数学形态学的Hessian矩阵理论,由V.S. Frangi在1998年的论文中提出,因此也被称为Frangi滤波器。 Hessian矩阵是二阶偏导数的矩阵,它能够捕捉图像局部的曲率信息。在图像中,特征如边缘、拐角或者...

    dubbo-hessian协议http请求demo(java)

    相比基于文本的XML或JSON,Hessian传输的数据量更小,性能更高。 在Dubbo中,Hessian协议被用于服务间通信,它提供了快速且轻量级的RPC方式。要实现Hessian协议的HTTP请求,我们需要以下步骤: 1. **创建服务提供...

    hessian-4.0.63-API文档-中英对照版.zip

    包含翻译后的API文档:hessian-4.0.63-javadoc-API文档-中文(简体)-英语-对照版.zip; Maven坐标:com.caucho:hessian:4.0.63; 标签:hessian、caucho、jar包、java、中英对照文档; 使用方法:解压翻译后的API文档...

    hessian通讯的安卓实现的简单DEMO

    在IT行业中,Hessian是一种基于HTTP的二进制RPC(远程过程调用)协议,它提供了高效的序列化和远程调用能力。这个“hessian通讯的安卓实现的简单DEMO”是一个示例项目,用于展示如何在Android平台上利用Hessian进行...

Global site tag (gtag.js) - Google Analytics