问题1 什么是Java API for XML-Based RPC(JAX-RPC)?
答:Java API for XML-Based RPC(JAX-RPC)使得Java技术开发人员使用基于XML的RPC功能构建Web应用程序和Web服务,此功能遵循SOAP(简单对象访问协议,Simple Object Aclearcase/" target="_blank" >ccess Protocol)1.1规范。
问题2 JAX-RPC如何使用SOAP?
答:请参考JSR-101 。
问题3 什么是RPC?
答:RPC代表远程过程调用(remote procedure call),它是能使客户端执行其他系统中程序的一种机制。RPC机制常用于分布式客户端/服务器模型。服务器将服务定义为一系列过程,可供远程客户端调用。
问题4 XML如何与RPC相关联?
答:远程过程调用是由基于XML的协议来表示的,比如SOAP。除了定义信封结构和编码规则之外,SOAP规范还定义了远程过程调用和响应的表示惯例。
问题5 对于Web服务,JAX-RPC必须做哪些工作?
答:一个基于XML的RPC服务器应用程序可以定义、描述和导出一个的Web服务,如同基于RPC的服务一样。WSDL(Web 服务描述语言,Web Service Description Language)定义了一种XML格式,将服务描述为一组消息操作的端点集合。通过使用JAX-RPC API ,开发人员可以用WSDL描述来实现客户端和服务。
问题6 客户端与JAX-RPC服务之间采用什么交互模式?
答:有以下三种不同的模式:
1.同步请求-响应(Synchronous Request-Response):客户端调用远程程序并阻塞,直到它收到一个返回值或异常。
2.单向 RPC(One-Way RPC):客户端调用远程过程,但自身不阻塞或等待直到收到一个返回值。JAX-RPC客户端的运行时系统可能会抛出异常。
3.非阻塞RPC调用(Non-Blocking RPC Invocation):客户端调用远程过程,并继续处理同一个线程的内容而不等待返回值。此后,客户端通过阻塞来接受返回值或轮询返回值,以此来处理远程方法的返回。
问题7 远程方法调用或响应能否传送服务内容信息?
答:是的。例如它可能会传送唯一的事务标识符或数字签名。
问题8 为什么xrpcc没有生成WSDL文件?
答:xrpcc工具实际上可以生成WSDL文件,但由于设计失误,如果不指定–keep选项,该文件会同源文件一起被删除。您可以使用–keep选项让xrpcc不删除WSDL或.java源文件。如果您使用–s sourcepath选项,所有源文件将被放置在sourcepath 目录中,然后您可以很容易地删除它们。 WSDL文件将被放置在当前目录或由–d选项指定的目录中。
(责任编辑 火凤凰 sunsj@51cto.com TEL:(010)68476636-8007)