SAP开发webservice接口教程
SAP WebService开发设定及呼叫
因為先前開發商業本票(VB6→.NET→WebService)介接Sap借款資料,加上最近有聽到WebService設定問題所以測試了一下在SAP上WebService開發及設定功能,以下為測試畫面(不涉及太多細節,設定部份follow顧問),大家可以參考看看若各位同仁未來有需要在Sap上開發webService,希望以下資料有所幫助,謝謝。
▼首先開發一個RFC的function moduler,主要將下圖的Remote-Enabled module勾選▼設定function使用到的參數(之後利用工具自動做service參數mapping,包含strcture及table皆可自動轉換)▼程式碼(傳入一wbsID傳回Wbs說明)▼點選下圖功能設定WebService▼輸入Service定義名稱及說明(可與function moduler名稱不同)▼Function moduler名稱▼這裡的profile顧問是選PRF_DT_IF_SEC_NO,也就是在此不做驗證(但會在後續的另一個功能設定)▼純測試,先選本端物件(代表Webservice應該也可以transport)▼設定完畢後,會出現相應的設定▼屬性內比較重要的是Endpoint(也就是呼叫的function)▼工具自動幫我們處理參數轉換▼組態,基本上顧問也都維持預設(上面驗證的設定會影響Security Profile的設定)▼自動生成WSDL(但還不是最終我們需要的WSDL,後面會提到)▼預設▼輸入交易代碼:SOAMANAGER (系統會自動跳出瀏覽器做後續的設定)▼依下圖選擇“Single Service Administration”▼搜尋我們定義的Service▼按”apply Selection”定義Service及Endpoint(這才是真正對外界的interface,系統會Bind上Soap資訊)▼輸入以下資訊▼設定驗證資訊(基本上勾選User ID/Password,則存取WebService時需要輸入特殊權限的一組Sap帳號密碼)▼也可勾選”No Authentication”不驗證並預先輸入有權限的Sap帳號密碼(但不建議這樣做),這樣client 呼叫時就不需要身份驗證▼之後按存檔▼接著點選”Display selected Binding’s WSDL URL”顯示Bind後的WSDL的URL▼利用.NET的Web Service工具將WDSL轉換為Proxy Class,之後就可呼叫Sap的WebService,以下為呼叫畫面▼.NET搜尋畫面▼輸入WBS號碼▼按下搜尋▼回傳WBS說明By klazid 2011/6/15*************************************************************************************** 繼上次的SAP WebService開發及設定後,這次反過來,想和大家談談由SAP這端如何呼叫外部的WebService以下是測試畫面(這次採用外網一個查詢匯率的WebService),希望對大家有所幫助,謝謝。
用ABAP实现webservice,发布SAP的xlm地址
创建的流程是:创建的步骤:1.使用向导创建一个web serviceA:SE80,找一个package,右键Create →Enterprise Service / WebService →Web Service.2.进入向导页面:继续:根据自己的情况选择:主要是根据需求来定的,如果是个function,就可以选择function继续:选择自己需要的BAPI,注意:需要增加BAPI Commit/Rollback2.释放定义的WEB SERVICEA:TCODE:WSCONFIG输入创建的名字及变式,点击创建,然后保存就可以了B:TCODE:WSADMIN找到自己的创建web名字,点击左上角的Web service--WSDL就可以打开,但这个需要在host及主机上配置,所以不再这里演示-------------------------------------ABAP 创建并调用WebService(原创)2010-04-28 16:51一. 创建Webservice有两种方式创建webservice,一种是在se80中使用wizard生成,另一种是直接在se37中给予function生成,具体操作如下:1.se80中Create-->Enterprise Service/Web Service --> Web Servcie维护service名,选择一个poit type(type point为一个功能点:如,Bapi中的Method,FunctionGroup中的一个function,一个function或者Message Interface:XI)2.se37 Utility--> More Utility --> Create WebService -->From the Function Module在创建完成的时候可以选择立刻release,否则需要在wsconfig中进行release。
ABAP外调WebService过程介绍
ABAP外调WebService过程介绍第一章proxy(代理)的生成首先通过se80进入到我们要创建proxy(代理)的package (包)。
以我的zhr_password_change程序为例,该程序的目的是帮助用户修改密码,所以进入的是ZHR包。
进入ZHR包后,右键选择Create -> Enterprise Service / Web Service -> Proxy Object,弹出如下选择框:由于我们是外调Web Service,所以选择Service Consumer选项,并点击继续。
随后出现下面的选择界面:这个选择界面中,如果我们自己的机器就是服务器,那么可以选择Local File,然后给出WSDL文件所在地。
不过一般情况下,我们是通过URL/HTTP访问WSDL文件的。
这里,我得到的WSDL文件地址为:http://10.3.11.123/jfids/ChangePwService?wsdl我们需要先确认这个链接的有效性,可以在浏览器中打开这个链接,如果链接有效,则我们可以看到对应的xml代码:将有效的URL地址输入,点击继续,如图:接下来要选择package(包)和prefix(前缀),package即proxy(代理)所在的包,prefix即代理各种属性(比如名称)、包含数据类型(比如输入数据类型、输出数据类型)等的前缀,主要用于与系统变量进行区分。
我这里选择的包是ZHR、前缀为ZCMIS_。
输入包名、前缀后选择继续,此时会出现确认信息:完成后,会看到workbench request,设置请求号和描述:然后我们会发现package(包)里出现了Enterprise Service选项,里面包含了代理类及其用到的数据类型。
我们需要保存并激活Enterprise Service选项:External View和Internal View分别展示了从被调用方和调用方看到的类的属性,我们可以看到原函数名称以及它在ABAP代码中的名称:Used Object选项会列出新生成的proxy类型以及其需要的数据类型(也就是前面指的输入数据类型、输出数据类型):我们可以通过双击proxy类型,察看这个类包含的属性和方法。
abap+webservice_new
测试环境:window xp sp3 英文版SAP server SAP ECC 6.0SAP GUI 710本机内网IP:192.168.0.197 ,SAP Server IP:192.168.0.164第一步,在myeclipse中新建一个Web Service Project,取名为SayHello,,默认采用的就是JAX-WS,不用改,直接点finish完成。
第二步,建立一个java class,名为HelloBody。
其内容为public class HelloBody {public String SayHelloTo(String name){return "hello: "+name;}}第三步,创建web service。
选择向导中Web Service下的Web ServiceNext,在对话框中选择从Java Class创建wsdl。
Next,会让我们选择class。
我们就选择刚才的HelloBody即可。
这个对话框会让你填写java class 及将要生成的Delegate class的名字。
这里java Class是实际完成功能的类,而delegate class 是包装java class成Web Service的类,所有请求都由其接收并解析,然后由java class完成功能,然后由Delegate将结果返回。
还有要注意的是,下面让你填写WSDL的自定义信息,我们先选择Generate WSDL in Project,这样就会自动生成一个WSDL了。
然后填入服务网址http://localhost:8080/,接着是Service name,这个不用修改,自动就是HelloBodyService,我们修改一下Service port,默认是HelloBodyPort,这实在不好,其实这个服务端口就是服务地址的后面部分,比如如果是默认的,那么调用的时候就是http://localhost:8080/SayHello/HelloBodyPort,,网址上出现这样的写法是不是很别扭。
SAP WebService
Step-by-Step Guide: SAP as web service server 其实用web service 已经是很长时间以前的事情了,昨天随便做了一个小例子,一步一步的引导初学者如何去创建一个sap web service ,以及如何在VB 中调用sap web service ,和如何通过abap 程序调用web service 。
1. 写一个简单的RFC 函数:该函数有一个输入字段,一个输出字段,功能就是把输入的字段再输出.本地测试:www.a ba pt e ch .c om2. 根据这个函数创建web service:然后web service 的创建向导会出现: 2.1. 欢迎界面www .a b a pt e c h .c om2.2 填写service 信息2.3 关联函数2.4 选择profilewww.a ba pt e ch .c om2.5 完成3. 执行完以上步骤,保存,并且激活web service4. 释放SOAP runtime web service(WSCONFIG):ww w.a b a pt e ch .c om5. 测试web service(WSADMIN):www.a ba pt e ch .c om如果做到这里都一切顺利的话,你的web service 已经可以被其他程序调用。
ww w .a ba p t e ch .c om。
SAPWebService简介与配置方法
SAPWebService简介与配置方法【版权声明】本文为博主原创文章,转载请在明显位置注明出处。
一、 SAP Web Service简介二、 SAP Web Service配置准备工作1. 通过RZ10配置服务器名称和其他参数2. 配置服务器被DNS解析(1)集中解析(2)单机解析3. 启用SOAMANAGER服务三、 SAP Web Service配置步骤和方法1. 外部访问SAP Webservice服务配置(Service Provider)(1)创建RFC函数(2)给RFC函数配置WS(webservice)(3)用SOAMANAGER生成WSDL(可供外部访问的XML链接)2. SAP访问外部 Webservice配置(Service Consumer)一、SAP Web Service简介SAP的web service是在Netweaver组件通过UDDI工具,采用SOAP和WSDL这两种web服务技术,将SAP已有功能封装成webservice对象,供其他系统调用或者调用其他系统的webservice,从而实现SAP与非SAP系统(如OA、PLM等)系统的集成。
SAP Netweaver提供了可以发布、查找并调用 Web 服务的工具(UDDI),可支持 NetWeaver 作为 Web 服务的服务器(Service Provider)或者客户端(Service Consumer),主要功能包括:①提供webservice。
它可以直接封装SAP的RFC、Function Group、BAPI、XI Message Interface等系统功能,以WEB标准协议在Internet上被其他系统进行调用;②消费webservice。
Netweaver通过创建代理能够通过Internet直接调用采用标准协议封装的其他系统提供的webservice;③提供AS ABAP和AS JAVA环境,允许开发者使用ABAP或者JAVA开发web服务。
基于SAP NETWEAVER创建并调用WEB SERVICE
基于SAP NETWEAVER创建并调用WEB SERVICE1创建一个WEB SERVICE本文档中的操作过程是在XI上完成的。
用一个可远程调用的Function Module创建WEB SERVICE有两种办法:1.1方法一1.进入Object Navigator(事务码SE80),选择任意一个包,在包名上点击右键,选择弹出菜单中的Create->Enterprise Service/Web Service->Web Service。
启动服务定义向导对话框。
2.点击Continue进入下一步。
3.在Service Definition中填入Web Service的名称,Short Text中填入简要说明,Endpoint Type中可以选择BAPI、Function Group、Function Module和Message Interface四种类型,本例中是以Function Module为例来创建Web Service的,所以Endpoint Type中选择Function Module。
完成后点击Continue继续。
程调用的Function Module是不能创建成Web Service的。
完成后点击Continue继续。
5.选择Web Service的安全设置,有两种设置可供选择:Basic Auth SOAP Profile:基于SOAP 1.1的无状态HTTP信息和简单验证。
Secure SOAP Profile:基于SOAP 1.1的无状态HTTP信息,强验证和传输保护。
本例中选择第一种方式。
将Release Services for Runtime勾上可以在创建Web Service的同时将其发布至SOAP Runtime。
如果现在不发布也可以在创建好Web Service并保存以后在事务WSCONFIG中发布。
6.点击Complete完成向导。
7.填入一个包名,创建好的Web Service将存放于此包下,点击按钮保存。
BAPI创建及发布&web service 的发布及abap调用
BAPI创建及发布&web service 的发布及ABAP调用一、BAPI 的创建BAPI 为特殊的Function Module,即可以远程调用的。
1.1创建一个Function Group创建一个Function Group后应该马上激活,需要养成这个良好的习惯1.2创建一个Function Module 属于该Function Group在Function Module 的attribute 里面选择第二个 remote-enable moduleBAPI 的接口皆为pass by value (值传递)BAPI 必须含有 return接口,否则BAPI 无法发布。
1.3在BAPI里面简单的写几行代码,完成将inputchar 赋值给outputchar 并返回return 信息,编写完成后保存激活。
这样一个简单的BAPI 就创建完成。
二、BAPI 的发布TCODE SWO1 创建BAPI接口对象选择属性,点击实用程序API 方法add方法这部输入BAPI 名字后,会有可能提示错误信息,或者警告信息,不用理会继续点击对勾,进行下一步就会进入到下一个界面点击前进按钮(画圈部分)一直下一步,最后方法里面就添加进来了。
当方法添加进来后,我们需要点击Program 来编写一下,使之没有语法错误编写对象类型为以实现状态释放BAPI修改BAPI接口实现状态为已实现更改版本为已释放生产对象接口到此,BAPI 的发布就已经完成了,我们可以通过TCODE BAPI 来查看我们发布的BAPI接口,名字应该是ZBAPI_DEMO三、Web service (BAPI)的发布选择创建一个web service这里我们可以看到发布web service 有4种组件,就是说这4种都可以发布成webservice,这里我们就只使用BAPI作为发布组件选择BAPI选择客户服务一直下一步创建完成这样一个Web service 创建完成,我们还需要对其进行配置TCODE WSCONFIG 可以创建发布的配置,点击创建保存即可。
SAP webservice
一、调试
1.Webservice调试srt_util,添加调用service账号
2.有效负载跟踪查看service调用,传输的数据
二、调用外部service
1.企业服务→服务消费者,创建WSDL地址,URL,输入地址,前缀为Z,完成后激活
2.soamanager,在消费者代理中查找,配置穿件,端口名为LP01,缺省勾上,输入URL地址
3.创建se38程序
Data:lo_sms_info TYPE REF TO zco_sms_info_send_port_type(Proxy Name). 输入输出参数为ABAP Name Ref
DATA: ls_input TYPE zsend_info_request,
ls_output TYPE zsend_info_response.
模式,abap对象模式确定,输入调用服务名称及方法名,(在se80双击服务名称可现实其中包含的方法,选中方法点击参数也可显示其中参数类型)
三、发布webservice
1.创建函数代码块
2.实用程序→更多实用程序→创建Web服务→来自函数模块(组)
服务定义ZWS_XXX,勾选Map Name,
,选择NO为无验证。
SAP和Java系统的Webservice实例
SAP和Java系统的Webservice实例关于Webservice的概念和原理,简单来讲,Webservice是一种基于SOAP传输协议,用WSDL描述,用XML封装数据的接口技术。
由于其跨平台、跨防火墙、开发成本低、开发周期短等优势而被广泛应用,但也有局限性,包括传输负载大、没有统一的实现模型等。
对于Webservice在SAP中的应用,多被用在系统同步要求高,数据传输负载小的接口开发上。
下面以SAP系统和外部系统的交互为例,SAP ECC系统两个、外部系统一个(Java EJB3 Jboss5),分别讲述从SAP到SAP,SAP到Java,Java到Java,Java到SAP的Webservice实例。
一、SAP系统间的Webservice调用SE37创建函数z_calculate,类型要设置为RFC类型,参数都设置为传值:function z_calculate.*"----------------------------------------------------------------------*"*"Local interface:*" IMPORTING*" VALUE(NUMBER1) TYPE STRING*" VALUE(NUMBER2) TYPE STRING*" VALUE(OPERATOR) TYPE STRING*" EXPORTING*" VALUE(RESULT) TYPE STRING*"----------------------------------------------------------------------try .case operator.when '+'.result = number1 + number2.when '-'.result = number1 - number2.when '*'.result = number1 * number2.when '/'.result = number1 / number2.when others.result = 'Not supported!'.endcase.catch cx_root.result = 'Not supported!'.endtry.condense result.endfunction.把函数发布成Webservice其他一路下来默认,完成后服务已经创建;接下来到SOAMANAGER中去找WSDL的URL,进入到Web service Administration界面,Apply selection => Overview => Displayselected Binding's WSDL URL,在右边可以看到了。
SAP开发webservice接口教程
SAP开发webservice接口教程在client=100中进行开发:1.创建RFC函数SE80,在函数组下,右击创建,创建函数模块,填写函数模块名称及描述。
2. 函数属性标签页,选择“远程启用的模块S其余默认不变。
函数檯块_____________________ |2TF_F5P_D皿REC |活动一/属性|•导厂f导出臨在更衣—T例外八嗣—I分类国数组「2FG_IF 接口处理函敎组.短文本_______________________________ 系绒员工异动数振处理函数3. 函数导入标签页,需要添加调用时传入的参数(表),“传递值”需勾选。
表类型:ZSHR_EMPLOYEER_T (需要自己创建)行类型:ZSHR_EMPLOYEER (需要自己创建)Choose the object type for the proxy to be created.C Data TypeI Messag e TypeD at a type Enhanc ementO Fault Messag e Service ConsumProcessing Type DoIntegration ScenaricSemantic Contract O ContractCon tract Implement C Consumer FactoryService Group4. 函数导岀标签页,需要添加调用返回的参数(表),“传递值”需勾选。
表类型:ZSHR_EMPLOYEER_OUT_T (需要自己创建)行类型:ZSHR_EMPLOYEER_OUT (需要自己创建)函数模块____________________ ㈣JIJT_DATA_REC 弦动/矚性 /导入丿导岀匕E在恵改例外F%代码I詡画画RE]参数名称类型化关联类型传谨值短文本ET.OUTPUT TYPE 2SHR_EMPLOYEER_OUT_T o A系统负工异动数据返回耒类型5. 函数源代码标签页,需要写代码实现把传入的数据保存在透明表中。
SAP新版SOAMANAGER下WebService配置
SAP新版SOAMANAGER下WebService配置随着SAP组件版本升级,原来的WEBSERVICE配置⽅式也有了很⼤变化。
配置WS的事务码SOAMANAGER也进⾏了升级,页⾯风格变化很⼤,配置⽅式和之前也有区别。
原来的⽼事务码LPCONFIG 已经⽆效了。
本⽂档所⽤组件版本如下图。
本⽂档只提供了SAP与SAP之间的WS通信配置和调试。
SAP和其他平台⽐如JAVA通信,恕本⼈⼒有不逮,但原理是⼀样的。
版本:1、建⽴被叫⽅,Called party 1.1 SE80部分。
调⽤已存在的函数实现。
函数代码后附。
FUNCTION ZFM_TEST02.*"-------------------------------------------------------------------- *"*"本地接⼝:*" IMPORTING*" VALUE(I_TEST) TYPE CHAR1 *" EXPORTING*" VALUE(E_MSG) TYPE TEXT100 *"-------------------------------------------------------------------- DATA:l_date LIKE sy-datum,l_time LIKE sy-uzeit.DATA:ls_test LIKE zttest01.l_date = sy-datum.l_time = sy-uzeit. CONCATENATE l_date l_time INTO ls_test-zdatetime. ls_test-test1 = i_test.MODIFY zttest01 FROM ls_test. COMMIT WORK AND WAIT.IF sy-subrc = 0.e_msg = '测试成功'.ENDIF. ENDFUNCTION.⽤到的表ZTTEST01的字典。
SAP Web Service开发介绍
11
SAP调用Web Service
1. 获取已经发布的Web Service的WSDL; 2. SOAMANAGER创建Logical Port; 3. ABAP代码调用;
通过Web Service可以方便、快速的实现SAP系统与C#系统、Java系统 或.Net系统等实现集成。
2
Web Service概述
WSDL(Web Services Description Language) Web Service描述语言WSDL 就是用机器能阅读的方式提供的一个正式描
述文档而基于XML的语言,用于描述Web Service及其函数、参数和返回值。 因为是基于XML的,所以WSDL既是机器可阅读的,又是人可阅读的。通过解 析WSDL文件,可以知道相应Web Service的调用地址、方法和参数。PS: 一个 Web Service可以同时包含多个方法,它们通过同一个地址调用,通过不同的 SOAP Action区分。
UDDI(Universal Description, Discovery, and Integration) UDDI 的目的是为电子商务建立标准;UDDI是一套基于Web的、分布式
的、为Web Service提供的、信息注册中心的实现标准规范,同时也包含一组使 企业能将自身提供的Web Service注册,以使别的企业能够发现的访问协议的实 现标准。
w3C 对 web 服务给出了简单而明确定义: Web 服务是一个可支持机器到 机器网络协同操作及交互的软件系统可以将 web 服务理解为可以通过网络(如 互联网)访问,并在远程系统中执行的的 Web API。
ABAP发布WEBSERVICE以及JAVA调用
ABAP发布Webservice以及JAVA调用方式ABAP发布Webservice一、输入se37或者se80创建WEBSERVICE二、Webservice创建成功后,输入事务代码SOAMANAGER注意:WINDOWS 中需要配置host 文件三、选择第二个也签中的第一个连接单击Open WSDL document for selected binding连接弹出:WSDL的地址<soap:addresslocation=":8000/sap/bc/srt/rfc/sap/zws_s ervic/300/zws_servic/zws_servic" />LOCATION 或者ACTION后的地址则是外部调用Webservice的地址逻辑端口也用如此方法创建JA V A调用ABAP发布的Webservice1.调用过程中存在问题及解决办法1.1无法利用AXIS2, CXF标准工具解析ECC发布的地址。
解决:利用IE访问Webservice地址,然后将其另存为*.xml文件利用CXF工具,编译该*.xml 文件,生成JAVA类。
输入:wsdl2java -d src - client http://Webservice。
附加:wsdl2java用法:wsdl2java -p com -d src -all aa.wsdl-p 指定其wsdl的命名空间,也就是要生成代码的包名:-d 指定要产生代码所在目录-client 生成客户端测试web service的代码将文件拷贝到程序中。
注意问题:1. 类文件中的包名需要修改,部分定义的-包.类-格式中的包也需要修改.2. 工具生成类的过程中,如果出现重名的情况(例如某类:TEST,但是有其他类应该是test,大小写不区分),一般只会保存一个类,需要手工添加缺少的类(可从其他代码的报错信息看出)。
1.2访问权限问题:访问的权限体现在http的体系中不同的调用方式,拥有不同的设置权限方法,以CXF为例:需要在解析后的**client类中添加代码:Client client = ClientProxy.getClient(port);HTTPConduit http = (HTTPConduit) client.getConduit();AuthorizationPolicy auth = new AuthorizationPolicy();auth.setUserName("gang.xu");auth.setPassword("654321");h ttp.setAuthorization(auth);1.3访问地址:ABAP会发布两种可以访问的WSDL地址;第一种::8000/sap/bc/srt/rfc/sap/ytest_service/300/ytest_service/ytest_service第二种::8000/sap/bc/srt/wsdl/bndg_DF511834C4CA61F1830600221999201E/wsdl11/allinone/ws_policy/document?sap-client=300JAVA解析及调用的是第二种地址;第一种发布出的Webservice服务,具体的方法等信息在第二种体现,2中,也包含了1的地址:<wsdl:service name="service"><wsdl:port name="YTEST_SERVICE" binding="tns:YTEST_SERVICE"><soap:addresslocation=":8000/sap/bc/srt/rfc/sap/ytest_ service/300/ytest_service/ytest_service" /></wsdl:port></wsdl:service>1.4调用方法根据生成的**client类,可以找到方法名,需要传入的参数等信息。
基于webservice技术的SAP接口实现
基于webservice技术的SAP接口实现作者:杨洪军来源:《城市建设理论研究》2013年第29期摘要:不断发展的计算机技术使得传媒业发生了巨大的变化,并得以普及。
World Wide Web、Java技术以及XML似乎无处不在,这些技术均得以快速应用,而且已成为企业级计算机的主要技术。
本文在以上基础上对WebServices技术的SAP接口实现加以阐述。
关键词:接口实现WebServicesSOAP组件中图分类号: TP334.7 文献标识码: A尽管Web服务还没有充分发挥所有潜力,但已经对业务通信带来了变革。
在教学、制造、财务服务与旅游等等行业中得以广泛的使用。
Webservice作为一项新的技术出现在我们面前,它的出世是用于解决在不同的平台下的应用的协同的。
目前几乎每家厂商都要去开发Webservice应用,然而如果缺乏对Webservice更深的了解,不能很好的在设计阶段处理好一些重要的问题,那么最终完成的系统必然是效率低下,没有可靠性的产品。
在设计Webservice 应用时,以下几点务必要考虑到:1、管理好与外系统的协同关系2、掌握底层的传输模型3、提供与应用相适应的安全策略4、计划好部署的相关事项以下,将就这几条相关的设计需求和一些常用模式是如何应用于Webservice模型展开详细讨论。
在讨论中,你会发现Webservice这项新的技术是如何与我们在以往的软件开发相结合的。
一、标准提供了协同的能力Webservice的一个最基本的目的就是提供在各个不同平台的不同应用系统的协同工作能力。
WSDL是实现协同能力的关键,它提供了一份契约用于与新老的应用之间交互。
这项技术使得各个组织可以将标准的制定集中在Service的外部接口,而不用考虑各组织的具体实现。
简而言之,它实现了Webservice的接口与实现的分离。
从而使得标准的制定,更加容易。
并且,基于这份接口描述,很多工具可以从中自动生成客户端代码,减少了开发者的工作量,并使得大部分开发者摆脱了编写SOAP消息传递代码过程。
使用SAP_NetWeaver_Developer_Studio_7[1].1发布WebService到NetWeaver
使用SAP NetWeaver Developer Studio发布WebService到NetWeaver1概述本文档描述了使用SAP NetWeaver Developer Studio(以下简称NWDS)发布WebService到NetWeaver的操作流程。
2准备工作2.1目标服务器主机名配置如果操作系统中还没有对发布Web Service的目标服务器的主机名进行配置,则需要进行如下配置。
1.在%windir%\system32\drivers\etc路径下找到名为hosts的文件,用记事本打开,以如下格式添入记录:目标主机IP 目标主机名如:127.0.0.1 localhost2.如果有多个目标服务器主机,则每个主机对应添入一行记录。
全部填写完毕后保存退出。
2.2nwds中目标服务器配置如果NWDS中还没有添加发布Web Service的目标服务器,则需要进行如下配置。
1.在NWDS中选中菜单项Window->Preferences,打开参数配置对话框。
2.选择SAP AS Java项,在Instance host中填入目标服务器主机名或IP,在Instance number中填入系统编号。
点击Register SAP Instance按钮系统将自动在网络中寻找相应服务器实例并自动载入服务器相关信息。
3.如果系统中还未配置过任何服务器,则配置完成的服务器将被系统设为默认SAP系统。
在服务器配置中必须要有一个服务器为默认SAP系统。
NWDS中可以注册多个服务器实例并修改默认服务器配置,也可以点击Remove SAP System来移除已注册的服务器。
注册完所有要注册的服务器以后,点击OK 退出配置。
2.3打开Servers窗口Servers窗口可用来察看配置好的服务器,并且可在该窗口进行WebService 的发布。
在当前视图下如果看不到该窗口,可以通过以下步骤打开。
1.选择菜单项Window->Show View->Other,打开显示窗口对话框。
sap调用外围系统webService
需要搭建 IIS 服务器 本实例以 Windows Server 2008 为例子
15 / 32
安装 IIS 管理工具->服务器管理器
配置:角色->添加角色 配置 internet 信息服务(IIs)管理器
新建“WebSite” 在应用程序池中选择对应 WebService 的 NetFramework 的版本
进入如下设置
27 / 32
这个逻辑端口:ZXPROXY_SOA
也是后面程序:
* create an instance of proxy class
create object lo_proxy
exporting
logical_port_name = 'ZXPROXY_SOA'."SOAMANAGER
如果没有问题将进入如下界面
输入参数调试
14 / 32
单击调用可以测试这个 WebService 【说明】 WebService 的方法 SAPkunnr 就是 WebService 的方法 WebService 地址 http://localhost:2848/MyWebService.asmx WebService 解析描述 http://localhost:2848/MyWebService.asmx?wsdl (此解析也是后面 SAP 调用的描述语言地址) 如下图
7 / 32
2.点击 SqlExpress 的协议,我们要启动所有状态。
3.选择 TCP/IP,点击右键,选择属性,我们修改连接数据库的端口地址,非常 重要
8 / 32
4.修改三处,第一你查看下跳出来的对话框,里面有好多 TCP/IP 的端口。我们 要找的是三处。
sap ecc Web Service发布与调用
SAP ECC系统Web Service服务发布与调用目录SAP ECC系统Web Service服务发布与调用 (1)Web Service概念 (3)优势 (3)局限性 (3)ECC 6.0 SP14之后版本 (4)发布Web Service服务: (4)1. SE37创建Function (4)2. SE80创建服务 (5)3. SOAMANAGER配置服务 (7)SOAMANAGER需要的权限 (7)调用SAP系统发布的Web Service服务 (10)1. SE80创建代理 (10)2. LPCONFIG创建Logical Port (11)3. 测试代理 (13)调用外部异构系统发布的Web Service服务 (15)1. SE80创建代理 (15)2. LPCONFIG创建Logical Port (16)3. 测试代理 (17)Web Service概念简单来说,Web Service就是为了使原来各孤立的站点之间的信息能够相互通信、共享而提出的一种接口。
Web Service所使用的是Internet上统一、开放的标准,如HTTP、XML、SOAP(简单对象访问协议)、WSDL等,所以Web Service可以在任何支持这些标准的环境(Windows,Linux)中使用。
注:SOAP协议(Simple Object Access Protocol,简单对象访问协议),它是基于XML的用于分散和分布式环境下网络信息交换的通讯协议。
在此协议下,软件组件或应用程序能够通过标准的HTTP协议进行通讯。
它的设计目标就是简单性和扩展性,这有助于大量异构程序和平台之间的互操作性,从而使存在的应用程序能够被广泛的用户访问。
优势1.跨平台。
2.支持度高,SOAP协议是基于XML和HTTP这些业界的标准的。
3.数据是以ASCII文本的方式而非二进制传输,调试方便,并实现跨防火墙通信。
4.技术难度低,开发周期短,Web Service实现的技术难度远远低于CORBA和DCOM。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
SAP开发webservice接口教程
在client=100中进行开发:
1.创建RFC函数
SE80,在函数组下,右击->创建,创建函数模块,填写函数模块名称及描述。
2.函数属性标签页,选择“远程启用的模块”,其余默认不变。
3.函数导入标签页,需要添加调用时传入的参数(表),“传递值”需勾选。
表类型:ZSHR_EMPLOYEER_T (需要自己创建)
行类型:ZSHR_EMPLOYEER (需要自己创建)
4.函数导出标签页,需要添加调用返回的参数(表),“传递值”需勾选。
表类型:ZSHR_EMPLOYEER_OUT_T (需要自己创建)
行类型:ZSHR_EMPLOYEER_OUT (需要自己创建)
5.函数源代码标签页,需要写代码实现把传入的数据保存在透明表中。
至此,函数创建完成。
6.创建Web Services
右击包名→创建→企业服务,进入如下页面,选择“Service Provider”,因为我们是服务提供者,点击“继续”。
7.选择“Existing ABAP Object (Inside Out)”,点击“继续”。
8.给服务起名,并填写描述,点击“继续”
9.选择“Function Module”,点击“继续”。
10.填写我们第一步创建的函数,并勾选“Map Name”,点击“继续”。
11.SOAP Appl默认不变,Profie下拉框选择第四个选择,即不进行权限认证。
点击“继续”。
12.填写对于的包和请求,点击“继续”。
下一步,直接点击“完成”。
服务创建成功。
13.配置SOA
使用T-CODE:soamanager,进入web页面的SOA管理(client=100)。
14.点击“简化Web服务配置”,进入如下设置页面,点击“执行”,从列表中找到自己创建的
服务,勾选第一个checkbox,User Name/Password(basic),点击列表左上角的“保存”,之后页面右上角的“返回”按钮,返回首页。
这一步设置,代表我们只设置用户名/密码的调用认证方式。
15.点击技术管理→参数文件→创建参数文件
16.点击“下一个”按钮,认证方式依然选择“User ID/Password”,其他都默认,直至完成。
17.点击服务注册表→服务注册表消费者设置→服务注册表连接→创建。
18.输入“注册表”,点击“下一个”,输入完点击“完成”。
以上两步设置了,外部用户调用接口时的一些参数,及用户名/密码。
19.点击web服务配置,根据如图所示的条件,搜索到前面创建的服务。
20.点击上图的内部名称,查看服务的详细信息。
21.点击操作栏,垃圾桶后面的按钮,即可查看生产的WSDL URL。
把这个URL提供给需要的用
户,就可以调用我们的接口了。