Tibco soap wsdl embed 例子

 

Tibco 下面有很多soapservice 的例子,这些比jdbc jms xml这些的例子多了很多。以前没多看,最近为了测试soap需要做一个模拟的测试环境,建立一个服务端接收soap请求,并且发送数据。

其中soap 的例子wsdl_embed貌似满足我的需要。这个例子在目录

/tibco/bw/5.6/examples/activities/soap/wsdl_embed 下(tibco 为我的tibco的安装目录)。

这个例子包括了2个项目, 一个是客户端client 一个是服务端server, 它们需要分别打开。


服务端的 QueryBooksByAuthor流程监听soap 请求,并回复请求。


服务端的 RetrieveResource 流程返回webservice 的资源(如请求 http://****?WSDL,页面显示的xml文档)


客户端的 QueryBooksByAuthor流程发送soap请求,接收回复。

 


一次请求的流程如下描述:

开始 -> SOAP RequestReply(Client 发送请求-> SOAP Event Source(Server 监听请求-> 服务端内部业务操作 -> SOAP Send Reply(Server 回复本次请求-> SOAP Request Reply(Client 接收回复-> 客户端内部业务操作 -> 结束。

 

Server 需要的Resource

WSDL类似于容器一样的东西,里面可以放WSDL 相关的Resource,必须设置目标命名空间(target namespace)。

Message置于WSDL里面,SOAP请求,回复,错误消息的载体,在参数Part Table 里面设置信息的内容。

Schema:这个非必要的,坚持面向对象思想,传递的数据是xml 格式,使用这个就必要了。

PortType:置于WSDL里面,服务容器,必须设置名称, 该名称将作为服务名, 在同一个命名空间下, 该名称必须唯一。

Operation:置于PortType 里面,描述具体的服务,在参数Message Table 里面设置输入,输出和错误对应的信息,这些信息需要引用定义好的Message

Http Connection:主要是设置主机和端口,用于服务端的 RetrieveResource 和SOAP Event Source 的参数Transport客户端的EndPoint Url

Process Definition: 流程,将用于放置SOAP 请求监听。

SOAP Event Source:建立服务的关键,监听服务请求。

tibco 的webservice 服务的请求链接默认是按目录结构来配置的, 默认的是"Service URI" 里面的链接, 如果要自己配置webservice 的请求链接, 要在tab 页"Transport Details" 的 "Endpoint URI" 配置!!! 上面的图里面的"Soap Action" 最好也配置成一样的,以前搞错了, 以为是配置"Soap Action" 的. 

这里还要注意一点, 我们配置了Endpoint URI 以后, 再次"http://***?wsdl" 请求后, 服务端 的 RetrieveResource 流程将无法返回正确的 webservice 的资源, 需要修改一下RetrieveResource 流程才行.


 

SOAP Send Reply:回复请求。

 

下面是WSDL资源结构

WSDL----Message

     |--PortType

              |--Operation

 

Client 需要的Resource

WSDL

Message

PortType

Operation

以上这些resource的设置要对应Server

Process Definition: 建立一个请求流程。


SOAP Request Reply:发送SOAP 请求,并且接收回复,注意Enpoint Url 的设置,格式如:http://localhost:801/QueryBooksByAuthor localhost 主机,801 端口,QueryBookByAuthor服务名, 这些在Server 设置好的。

 

具体设置就不详写了, 自己看看例子就好了, 测试的时候,先跑Server的流程, 再跑Client 的流程。

实现Web Service的方式还有很多种,本人学习Tibco 的时间不长,暂时只知道这个。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值