高阶组件(HOCs)在分布式计算中的应用与发展
1. HOCs调用流程与Web服务创建
当调用到达特定服务时,Apache SOAP引擎会对请求消息进行解组,然后将其转发给相应的ProActive提供者来处理请求。以下是具体步骤:
1. 调用到达服务。
2. Apache SOAP引擎解组请求消息并转发给ProActive提供者。
3. 为支持代码参数的使用,开发了一种特殊的ProActive提供者,它接受以原始标识符形式存在的代码参数,从代码服务中检索标识符引用的代码,并使用ProActive库中的组件构造函数为每个代码创建ProActive引用。
4. 提供者使用ProActive引用作为参数向HOC发出标准的ProActive调用,并将结果返回给SOAP引擎。
5. SOAP引擎编组新的SOAP消息。
6. 将消息发送回服务消费者,即客户端。
创建使用ProActive的Web服务,是为了支持在自动创建的Web服务中使用携带代码的参数,以访问由HOC和基于ProActive/GCM的网格组件组成的网格组件。目前的解决方案仅适用于特定的参数类型,即那些表示为HOC代码参数的行为。要解决通用情况,需要考虑以下相关工作:
- CORBA中的valuetype构造,支持将对象按值(包括状态和行为)传递给远程应用程序。
- 可能的(尚未标准化)WSDL扩展,用于使用特定的SOAP附件传递复杂类型的参数。
- 用于XML数据绑定的标准工具,如Java Architecture for XML Binding JAXB。