Java RPC通信机制之XML-RPC:Apache XML-RPC 3.0开发简介

本文介绍了XML-RPC的基本原理和Apache XML-RPC 3.0的特性,通过实例展示了如何使用XML-RPC进行RPC通信,包括服务器端和客户端的实现,以及动态代理和异步通信等高级特性。
摘要由CSDN通过智能技术生成

Java RPC通信机制之XML-RPCApache XML-RPC 3.0开发简介

摘要:

XML-RPC是一种简单的,轻量级的通过HTTP协议进行RPC通信的规范。本文以Apache XML-RPC 3.0为基础,对XML-RPC的基本原理及Apache XML-RPC 3.0的主要特性进行了讨论和分析。

正文:

一、概述

XML-RPC是一种简单的,轻量级的通过HTTP协议进行RPC通信的规范。一个XML-RPC消息就是一个请求体为XMLHTTP-POST请求,被调用的方法在服务器端执行并将执行结果以XML格式编码后返回。

以下是通过ethereal抓到的一个典型的XML-RPC调用包(为便于阅读,进行了格式化):

POST /xmlrpc HTTP/1.1

Content-Type: text/xml

User-Agent: Apache XML RPC 3.0 (Jakarta Commons httpclient Transport)

Host: 135.252.156.147:8080

Content-Length: 260

<?xml version="1.0" encoding="UTF-8"?>

<methodCall xmlns:ex="http://ws.apache.org/xmlrpc/namespaces/extensions">

      <methodName>Calculator.add</methodName>

      <params>

            <param>

                  <value>

                        <i4>2</i4>

                  </value>

            </param>

            <param>

                  <value>

                        <i4>3</i4>

                  </value>

            </param>

      </params>

</methodCall>

而对应的返回数据包为:

HTTP/1.1 200 OK

Server: Apache XML-RPC 1.0

Connection: close

Content-Type: text/xml

Content-Length: 189

<?xml version="1.0" encoding="UTF-8"?>

<methodResponse xmlns:ex="http://ws.apache.org/xmlrpc/namespaces/extensions">

      <params>

            <param>

                  <value>

                        <i4>5</i4>

                  </value>

            </param>

      </params>

</methodResponse>

其格式很简单,几乎是不言自明的,分别用methodCallmethodResponse标签标识发送给Server的调用请求和Server的返回结果,请求方法的名称用methodName标识,参数用paramsparam标识,而参数的类型标签则如下表所示:

Tag

Java Type

说明

<i4> or <int>

Integer/int

4字节带符号整数值

<boolean>

  • 2
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值