随笔 webservice配置
我们的WEBSERVICE是需要通过SOAMANAGER打开浏览器进行配置的,在启动SOAMNAGER之前我们需要检查SAP的服务,以确保可以打开浏览器
- WEB DYNPRO相关服务
SOAMANAGER本身其实也是一个基于Netweaver的Web Dynpro程序,我们输入SOMANAGER时,其实就是调用了IE浏览器去打开这个WEB DYNPRO程序
确保WEB DYNPRO 相关的服务已经启动
/default_host/sap/bc/webdynpro
(注意:这里只需要激活webdynpro这个服务,不需要激活其下面的子服务。当你右键激活这个服务的时候,其子节点的服务并不会被激活,这点与我们常见的激活逻辑有区别)
/default_host/sap/public/bc
/default_host/sap/public/bc/ur
/default_host/sap/public/bc/icons
/default_host/sap/public/bc/icons_rtl
/default_host/sap/public/bc/webicons
/default_host/sap/public/bc/pictograms
/default_host/sap/public/bc/webdynpro/* (ssr, mimes等所有子节点服务) - SOAMANAGER相关服务
/default_host/sap/bc/soap
/default_host/sap/bc/srt
/default_host/sap/bc/srt/rfc/sap
/default_host/sap/bc/webdynpro/sap
/default_host/sap/bc/webdynpro/sap/appl_soap_management.
SOAMANAGER无法打开解决方法
-
可能是网络连接不通畅或者是DNS解析不成功
image.png
-
403错误,某些服务未启动,请检查服务
image.png
在该页面空白处右击-》属性,即可以打开该页面的属性,在属性的地址中,找到URL中问号“?”前的最后一个子节点,即相应的服务。
image.png
-
如果实在打不开
事务代码:SE93 输入事务代码:SOAMANAGER 拉到最下面
image.png
这里有一个值APPL_SOAP_MANAGEMENT
在SICF里面找到这个服务,路径为
/default_host/sap/bc/webdynpro/sap/appl_soap_management.
右击选中测试服务,就可以打开啦
image.png
创建RFC函数

将函数设置成远程启用.
直接在RC函数菜单栏 实用程序->更多实用程序->创建WEB服务->来自函数模块

接下来使用向导一步步创建

这里选择无验证

分配

企业服务创建成功

生成可调用的WSDL
创建企业服务之后,第三方系统想要通过SOAP协议给我们发送消息,就需要知道我们的数据定义,即XML文件,所以接下来我们需要SOA配置,获得WSDL文件,以便于第三方调用
事务代码:SOAMANAGER

在搜索界面内搜索我们刚刚创建好的企业服务定义

双击该服务定义,创建服务,定义相当于接口,服务相当于实现它的类


选择无验证方法,写入默认访问的用户和密码,以防止每次访问都需要登陆


点击上方红色箭头可以看到WSDL地址

这里的WSDL就是生成的WSDL地址,可以被其他第三方系统去调用
SOAP UI测试创建的企业服务
将刚刚创建的WSDL地址填入其中,创建测试项目

在问号处,填入测试值,可以在右侧看到结果


如果出现没有调用权限的情况就是创建企业服务定义的时候没有勾选NO AUTHERTION,这时候在SOAP UI 左下角协商访问用户名和密码

本机系统调用第三方系统
创建消费类

选择生成原对象,这里我们用刚刚创建的WSDL文件来创建

选择URL地址来创建,亦可以选择本地文件,但是导入到SAP的时候需要进行删减来适配SAP系统

输入WSDL地址



激活后生成了代理类.
SOAMANAGER 配置端口信息
将之前创建的ABAP类型写入搜索

双击进入配置

输入用户名和密码

这里的URL地址并不是WSDL地址,这里的地址yao去WSDL地址里面找address location后面跟着的地址




自开发程序调用接口

如上图代码所示调用WRBSERVICE.
WEBSERVIE日志监控

