1. 在R3中创建remote enable的RFC
注意将函数设置为“远程启用的模块”,导入导出的参数“传递值”勾上。
2. 将RFC扩展成为WEBSERVICE
路径:实用程序->更多实用程序->创建web服务
3. 维护webservice并获得WSDL
执行TCODE:SOAMANAGER,系统为我们打开一个WEB页面:
进入“Web服务配置”搜索到自己的服务并进入配置页,创建服务。
得到WSDL URL。
4. 在eclipse中建立webservice client,并调用接口
@RequestMapping(value = "/getInBox", method = RequestMethod.GET)
@ResponseBody
public JSONArray dictChangeBapi(String user){
try {
ZWS_SAP_WAPI_GETWORKLIST_ServiceLocator serviceLocator = new ZWS_SAP_WAPI_GETWORKLIST_ServiceLocator();
serviceLocator.setZWS_SAP_WAPI_GETWORKLISTEndpointAddress(getAddress("ZWS_SAP_WAPI_GETWORKLIST"));
ZWS_SAP_WAPI_GETWORKLIST_PortType porttype = serviceLocator.getZWS_SAP_WAPI_GETWORKLIST();
SWR_WIHDR[] temp = new SWR_WIHDR[0];
TABLE_OF_SWR_WIHDRHolder tablist = new TABLE_OF_SWR_WIHDRHolder(temp);
int returnstatus=porttype.ZWS_SAP_WAPI_GETWORKLIST(user, tablist);
List swlist=new ArrayList();
for(int i=0;i
swlist.add(tablist.value[i]);
}
JSONArray jsonArray = JSONArray.fromObject(swlist);
return jsonArray;
} catch (Exception e) {
throw new AppException(e.toString());
}
}