欢迎使用普元产品知识库,本知识库包含普元应用开发平台EOSPlatform,流程平台BPS,企业服务总线ESB,微服务平台Microservice,运维管理平台Devops,数据集成平台DI
欢迎使用普元文档库
在SCA服务里引用一个外部的webservice服务,但webservice服务最终部署的位置不确定,无法明确IP和端口,需要借助Governor里配置的服务变量去实现灵活引用
xx.xx.xx.116和xx.xx.xx.118上均安装了EOS Platform 6.2开发环境,访问端口均是8080
1、118上platform6.2创建名为Sample的EOS基础项目,并创建两个构件包:com.primeton.sample.base.service和com.primeton.wsclient
service用来开发webservice,wsclient用来开发引用webservice的sca服务
2、开发webservice服务
1)按照04 逻辑构件实现示例 里“开发一个简单逻辑构件”说明,在service构件包里装配一个简单逻辑构件EOSHelloWorldComponent;
2)根据“以Web Service方式提供服务 ”的说明,发布为webservice服务EOSHelloWorldService
3)在浏览器中访问EOSHelloWorldService,确保服务正常
3、开发SCA服务
1)按照04 逻辑构件实现示例 —>“引用一个Web Service”,f之前的步骤,在wsclient构件包里装配SCA服务:wsclientService
2)在wsclient—>服务—>接口定义,导入访问EOSHelloWorldService的EOSHelloWorldService.wsdl文件,导入后自动生成了EOSHelloWorldService.wsdl和EOSHelloWorldService_import1.wsdl
3)继续参考从f开始的剩余步骤,给wsclientService添加对EOSHelloWorldService的引用
4、添加服务变量并更新wsdl中location地址
1)登录Governor,Governor—>配置—>服务配置—>eos-default—>服务变量,增加两个变量名称:ip和port,ip为xx.xx.xx.116,port为8080
2)修改wsclient构件包里的EOSHelloWorldService.wsdl里location,将ip和端口换成governor里配置的服务变量,修改后的location地址:
<soap11:address location="http://${ip}:${port}/eos-default/EOSHelloWorldService"/>
3)重启server
5、在116上部署webservice服务
1)118 platform6.2 studio导出com.primeton.sample.base.service源码,在116 studio中导入
2)启动116上server
6、效果验证:
在118上调试调用SCA服务(wsclientService )的newbiz.bizx,进一步调用到了116上部署的EOSHelloWorldService服务实现了
实现SCA服务引用根据governor配置服务变量访问服务的效果
附:示例代码:Sample.zip