WEB开发网
开发学院软件开发Java 扩展Axis2框架,支持基于JVM的脚本语言 阅读

扩展Axis2框架,支持基于JVM的脚本语言

 2010-10-09 08:12:20 来源:WEB开发网   
核心提示: 上图显示了API的架构,当执行Jython客户端脚本时,扩展Axis2框架,支持基于JVM的脚本语言(3),会创建并执行一个相映射的Java服务客户端,接着会进行Web服务调用,Jython消息接收者会消费SOAP消息,并把它交给应用,将结果返回给客户端脚本,通过客户端API发送SOAP消息时

上图显示了API的架构。当执行Jython客户端脚本时,会创建并执行一个相映射的Java服务客户端。接着会进行Web服务调用,将结果返回给客户端脚本。

通过客户端API发送SOAP消息时,会激活输出管道(Out Pipe)。输出管道将调用各个处理器,最终由传输发送者(Transport Sender)把SOAP消息发送给目标端点。SOAP消息由传输接收者(Transport Receiver)接收,传输接收者会读取SOAP消息、启动输入管道(In Pipe)。输入管道由一些处理器组成,终端是Jython消息接收者(Message Receiver),Jython消息接收者会消费SOAP消息,并把它交给应用。

下面的代码片段展示了调用Web服务的Jython客户端。

from org.wso2.wsf.jython.client import WSClient 
from org.wso2.wsf.jython.client import WSFault 
from org.wso2.wsf.jython.client import WSMessage 
 
req_payload_string = "<webSearch><appid>ApacheRestDemo</appid><query>Sri Lanka</query><form/></webSearch>" 
LOG_FILE_NAME = "/home/heshan/IdeaProjects/MRclient/src/jython_yahoo.log" 
END_POINT = "http://search.yahooapis.com/WebSearchService/V1/webSearch" 
 
try 
    client = WSClient({ "to" : END_POINT, 
       "http_method" : "GET", 
    "use_soap" : "false"}, 
  LOG_FILE_NAME) 
 req_message = WSMessage(req_payload_string, {}) 
 print " Sending OM : " , req_payload_string 
 res_message = client.request(req_message) 
 print " Response Message: " , res_message 
 
except WSFault, e: 
 e.printStackTrace(); 

上一页  1 2 3 4 5  下一页

Tags:扩展 Axis 框架

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接