目录
-
约定
此发布接口传入参数为JSON格式,发布接口没有返回,需要自己定义一个返回格式
发布接口的业务服务是JMS服务器,传入JMS服务器的数据是XML格式,本文档在Proxy服务处将JSON转为XML,Pipeline中请求报文不做处理
-
创建持久化存储
进入控制台点持久化存储
点击创建FileStore
填写持久性存储的名称
目标选择OSB服务器集群
创建完成,激活
-
创建JSM服务器
创建JMS服务器
填写JMS服务器名称
选择刚才创建的持久化存储
确认目标为OSB服务器
-
添加JMS模块
点击JMS模块,新建
输入名称
选择目标为OSB集群
是否添加资源,选择是
创建子部署
点击子部署,点击新建,输入名称
选择目标服务器,选择刚才创建的JMS服务器
点击完成后,点击部署,新建连接工厂
点击连接工厂
输入JNDI,牢记这个JNDI,这是发布接口地址的一部分
选择高级定位
选择子部署
选择目标为创建的JMS服务器
新建分布式主题,多个节点选分布式,单个节点选主题就好
输入JNDI名称,这是发布地址的另一部分
选择目标为OSB集群,选择高级定位
选择子部署,勾选目标为JMS服务器
-
创建BS服务
右键选择JMS Transport
输入名称地址
选择Any SOAP
输入JSM地址为jms://host:port/连接工厂JNDI/主题JNDI
jms://localhost:8011/jms_SoaMaterialConnectionFactory2/jms_SoaMaterialTopic2
-
创建Pipeline
-
Schema
创建Schema文件,描述发布的SOA字段
修改文件名和命名空间
根据报文手动生成xsd文件
-
WSDL
根据传入报文修改xsd文件格式,生成wsdl文件,引用Schema文件
Input请求选择xsd报文的请求字段
由于发布接口没有返回,返回字段xsd文件需要自己定义
Output输入选择自己定义的xsd文件
-
Pipeline
选择WSDL,引用刚才生成的WSDL文件
生成后连接BS服务
-
响应报文Xquery文件
响应的Xquery文件用到自定义的返回xsd文件
输入的地方将每个字段的名字、类型都规定,如下图
输出的目标是自定义的字段xsd文件
完成之后,连接字段即可
Replace组件,进行返回报文映射
-
创建Proxy服务
右键Pipeline,发布为Rest服务
填写Proxy名称
会自动引用Pipeline中WSDL文件中的xsd
request、response选择json
创建完成后,选择Topic,text
OSB发布服务完成。
接下来是订阅服务。