我们采用hessian作远程处理,如果客户端直接采用路由器上网,则没什么影响,能连上服务端,但是如果通过代理,比如我们公司内部采用的是squid代理,则连不上服务端,不知道为什么
以前是点击同步时出现如下错误(启动客户端时并不抛出):
1,org.springframework.remoting.RemoteAccessException: Cannot access Hessian service at [http://服务端ip/remote/remoteService]; nested exception is com.caucho.hessian.io.HessianProtocolException: 501: java.io.IOException: Server returned HTTP response code: 501 for URL: http://服务端ip/remote/remoteService
我们把hessian版本升级后,启动客户端就抛出如下错误
严重: Servlet.service() for servlet remote threw exception
com.caucho.hessian.io.HessianProtocolException: expected hessian call ('c') at code=-1 ch=?
请一下:
另外个人对hessian理解,请高人指正:
hessian不能传递复杂对象,经本人测试,关系深度为2的是可以的,深度为3或以上是不行的,也就是说我们关系为一对一和一对多,可以采用hessian传输,如果是多对多则要把数据组装一下才能传输,这是个人理解,有不同见解的,请回复本人,在此表示感谢
本人msn为weishuwei@hotmail.com,可以联系本人
分享到:
相关推荐
这种框架通过动态代理可以简化远程调用的实现,使得业务逻辑与远程调用的细节分离,从而提高代码的可读性和可维护性。动态代理允许在不修改原始业务类的情况下,插入自定义的逻辑,例如添加日志、事务管理或者错误...
通过Spring的IOC(Inversion of Control)容器,服务提供者可以在启动时自动注册服务,而服务消费者可以通过服务ID和服务接口从ServiceRepository中获取服务代理,从而实现远程调用。 总结来说,远程调用服务框架是...
在Java中,Akka可以用来实现TCP远程调用,这使得不同系统之间能够通过网络进行通信。下面我们将深入探讨如何使用Akka与Java来实现TCP远程调用,以及其中涉及的关键知识点。 首先,我们需要理解Akka的Actor系统。...
2. **服务消费者端配置**:在客户端,你需要创建一个HttpInvokerProxyFactoryBean,它是一个Spring AOP代理,可以调用远程服务。配置如下: ```xml ``` 这里,`serviceUrl`是服务端暴露的URL,`service...
在本示例中,我们关注的是C#语言中的远程调用,具体是通过.NET框架实现的。这个压缩包"SimpleRemoting"包含了客户端和服务端的示例代码,帮助开发者深入理解不同激活模式的远程调用。 首先,让我们来探讨一下C#中的...
在IT领域,远程调用对象(Remote Procedure Call, RPC)是一种常见的通信机制,它允许一个程序在不关心网络细节的情况下,调用运行在另一台计算机上的程序或服务。本示例将聚焦于VB(Visual Basic)环境下的RPC实现...
DLL远程调用是一种技术手段,旨在通过远程调用的方式安全地加载和运行用户自定义的DLL文件,避免直接加载DLL可能带来的系统不稳定风险。该机制特别适用于那些业务逻辑较为复杂且需要较高安全性的场景。 #### 二、...
Java远程调用Kettle说明与代码 Java远程调用Kettle是一种基于Java的ETL(Extract、Transform、Load)工具,能够对数据进行提取、转换、加载,以满足不同业务需求。Kettle提供了名为Carte的Web Server程序,也被称为...
6. **调用远程方法**:客户端通过代理对象调用远程方法,实际调用会被转发到服务器执行。 7. **处理结果**:服务器执行完远程方法后,通过Socket将结果返回给客户端,客户端的代理对象接收到结果后,将其传递给调用...
客户端通过代理类就可以像调用本地对象一样调用远程服务。 Remoting 实现中,你可以选择使用通道服务来处理底层通信,如 TCP 或 HTTP。配置好后,客户端和服务端可以通过指定的端口和协议进行通信。为了使远程调用...
远程调用技术是分布式系统中不可或缺的一部分,它允许不同计算机之间的程序进行通信和协作,实现数据交换和服务共享。代码追踪在此领域中起着至关重要的作用,帮助开发者理解、调试和优化远程调用的过程。以下是对...
Http请求Restful风格的远程调用,在远程调用的过程中会出现四种请求方式,这个工具把此部分代码给封装了一下。
6. 调用:通过客户端代理,就像调用本地方法一样调用远程服务。 五、实战演练 在实际应用中,我们可以使用开源工具如Apache HttpClient或Java内置的HttpURLConnection来实现HTTP请求。对于Hessian的具体实现,可以...
"c# 实现远程调用(rpc) remoting"是C#的一个关键特性,它允许对象在不同的进程甚至不同的计算机之间进行通信,仿佛它们是在同一个内存空间内操作。这个主题涉及到分布式系统开发,对于理解跨进程通信和提升系统的可...
在IT行业中,Spring框架是Java开发中的一个核心组件,它提供了丰富的功能,包括依赖注入、面向切面编程以及企业级服务。...通过配置和少量代码,就能实现跨网络的远程方法调用,极大地提升了开发效率和系统的可维护性。
Web Service 是一种跨编程语言和跨操作系统平台的远程调用技术,通过 SOAP 在 Web 上提供的软件服务,使用 WSDL 文件进行说明,并通过 UDDI 进行注册。XML 是 Web Service 的基础,它是扩展型可标记语言,面向短期的...
客户端通过`Naming.lookup()`获取远程对象的引用,然后就可以像调用本地对象一样调用远程对象的方法。例如: ```java MyService remoteService = (MyService) Naming.lookup("rmi://localhost/MyService"); ...
该项目是采用C语言编写的ERPC嵌入式远程调用框架设计源码,集成了48个头文件、14个C源文件、11个动态库文件、10个Markdown文件、8个文本文件、8个归档文件、7个链接库文件、6个Python脚本文件、5个PNG图片文件,以及...
通过这个简单的示例,我们可以看到Hessian如何使得远程调用变得简单。服务端无需额外的XML配置,客户端也无需了解服务端的具体实现。Hessian自动处理了序列化、反序列化以及网络通信,极大地简化了开发流程。 此外...