18824582472
论坛版主
论坛版主
  • 发帖数76
  • QQ
  • 金币2654两
  • 威望2562点
  • 钻石0枚
  • 注册日期2017-08-17
  • 最后登录2024-04-18
  • 社区居民
  • 忠实会员
阅读:48031回复:32

[资源分享]webservice开发步骤详解

楼主#
更多 发布于:2018-01-23 18:51
   文笔不好,简单写写~ 因为之前在网上找tiptop开发步骤的文档都没有太全的,想自学的朋友可能比较费劲,现在讲开发一个webservice接口程序的一般步骤简单列一下!
一:服务端开发
1:tiptop所有的接口都是通过aws_ttsrv2.4gl 这个程序接收进来的,接口的地址一般是 [url=http://[tiptop_ip]/web/ws/r/aws_ttsrv2?WSDL%20]http://[TIPTOP_IP]/web/ws/r/aws_ttsrv2?WSDL[/url] 其中TIPTOP IP 为
TOP GP 服务器的IP地址,替换IP后在IE浏览器能访问这个地址则证明你的接口是通的,调试接口有一个很重要的工具soap ui,具体怎么用可以百度,没搜出来的可以跟帖回我,这里就不详细讲了
2:针对每个接口程序,我们一般会在aws_ttsrv2_service.4gl 程序里面去新添加他的接口名,以及调用FUNCTION,这个是第一步,具体怎么加可以下载 /u1/topprod/tiptop/aws/4gl/aws_ttsrv2_service.4gl  参考里面任意一个接口程序的写法
3:在aws_ttsrv2_service.4gl添加好你的接口程序后,就需要去定义你的接口程序,一般命名就是aws_xxxx.4gl,这个程序就是aws_ttsrv2_service.4gl里面要调用的程序,里面写你需要的XML数据抓取,程序逻辑处理,状态返回等,前面的三个步骤大致如下图所示,程序撰写方式可以在aws/4gl目录下随便参考一个


图片:a.png




4:程序撰写上传成功后,就需要去p_link 将你的程序链接到aws_ttsrv2上面,这样你的程序才能被主程序找到
5:在aws_ttcfg2 新增你的接口信息,让webservice服务器能识别的到,如下图

图片:b.png




6:前面几个步骤完成后,就需要去重新产生你的WSDL档了,方式为在aws/4gl目录运行以下命令:
 r.r2 aws_ttsrv2 -W http://serverURL    #这里的serverURL 就是你的webservice地址和端口
运行完后,他会提示你生成的位置,你到那个路径下下载你的wsdl文件,查找你的服务名,如果存在,则代表生成成功!
成功后在soap ui 载入这个wsdl文件,那么其他系统就能直接使用这个接口了


7:XML文件的制作
tiptop 对应接口的XML文件很简单,在soap ui中找到你的接口,只需要把你的数据按指定格式填好就行了
下面粘贴一个示例,基本都是按照这个格式来的

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:tip="http://www.dsc.com.tw/tiptop/TIPTOPServiceGateWay">
  <soapenv:Header />
  <soapenv:Body>
    <tip:CreateApmt110bwDataRequest>               #这里就是你添加的服务名
      <tip:request>
        <Request>
          <Access>
            <Authentication user="tiptop" password="tiptop" />          #这里的数据其实是不抓的
            <Connection application="EFGP" source="192.168.1.2" />
            <Organization name="XXX" />
            <Locale language="zh_cn" />
          </Access>
          <RequestContent>
            <Document>
              <RecordSet id="1">
                <Master name="rva_file">     #这里是数据单头信息
                  <Record>
                    <Field name="rva07" value="XXXXXXXXXXXXXX" />
                    <Field name="rva05" value="XXXXX" />
                    <Field name="rva06" value="2017-11-01T00:00:00" />
                  </Record>
                </Master>
                <Detail name="rvb_file">   #这里是数据单身信息
                  <Record>
                    <Field name="rvb02" value="1" />
                    <Field name="rvb03" value="1" />
                    <Field name="rvb04" value="XXXXXX" />
                    <Field name="rvb05" value="XXXXXXXXXXXX" />
                    <Field name="rvb07" value="XXXX" />
                    <Field name="rvb36" value="XXXXXX" />
                    <Field name="rvb38" value=" " />
                    <Field name="rvb39" value="Y" />
                    <Field name="rvb89" value="N" />
                  </Record>
                </Detail>
              </RecordSet>
            </Document>
          </RequestContent>
        </Request>
      </tip:request>
    </tip:CreateApmt110bwDataRequest>
  </soapenv:Body>
</soapenv:Envelope>
8:程序制作完了,也上传完了,接下来就是测试了,接口测试需要借助soap ui工具,测试步骤看附件吧



二:客户端开发客户端开发比较简答,可以通过工具自动生成所需程序
1:首先要知道对方服务器的连接地址,就是那个已?wsdl结束的地址,在浏览器打开,如果能成功看到类似下面的页面,说明可以访问

图片:TIM截图20190403102000-wps图片-wps图片.jpg



2:进入cws/4gl目录(其实随便哪个目录都行,你想放哪个放哪个),运行fglwsdl  http://10.1.32.227//services/WorkflowService?wsdl  (这个地址是服务器的地址,需要替换成你要访问服务器的)  运行成功后会在当前目录生成一个4gl文件和inc文件,4gl文件提供调用方法,inc文件提供变量定义
3:接下来就是调用了,定义好传入变量的数据,调用函数,返回值,写法就和一般的程序一样了!
附件名称/大小 下载次数 最后更新
接口debug.docx (525KB)  113 2018-01-23 18:52 售价10金币[记录]
参与人数:1 人, 威望 +5 
  • 威望 +5
    来,写点评语吧!(35字个以内)
    2022-09-09 11:47
喜欢12 评分1
鹭岛渔夫2014
论坛版主
论坛版主
  • 发帖数46
  • QQ963577854
  • 金币3163两
  • 威望743点
  • 钻石0枚
  • 注册日期2017-11-13
  • 最后登录2023-09-12
  • 社区居民
  • 忠实会员
沙发#
发布于:2018-01-24 08:36
谢谢分享
一个懂点IT的厨子
回复(0) 喜欢(0)     评分
workflowerp
中级会员
中级会员
  • 发帖数19
  • QQ17136036
  • 金币52两
  • 威望38点
  • 钻石0枚
  • 注册日期2018-06-11
  • 最后登录2021-11-30
  • 社区居民
板凳#
发布于:2018-06-25 11:36
谢谢分享
回复(0) 喜欢(0)     评分
eddiepan
新人上路
新人上路
  • 发帖数11
  • QQ2580232904
  • 金币1两
  • 威望23点
  • 钻石0枚
  • 注册日期2018-05-30
  • 最后登录2022-11-15
  • 社区居民
地板#
发布于:2018-08-22 09:03
正需要呢
感謝分享
回复(0) 喜欢(0)     评分
qkui68
中级会员
中级会员
  • 发帖数63
  • QQ850143561
  • 金币3两
  • 威望69点
  • 钻石0枚
  • 注册日期2018-09-14
  • 最后登录2022-05-26
4楼#
发布于:2018-09-14 17:22
很好很好
回复(0) 喜欢(0)     评分
sean_sunxin
高级会员
高级会员
  • 发帖数40
  • QQ656429358
  • 金币198两
  • 威望176点
  • 钻石0枚
  • 注册日期2017-02-16
  • 最后登录2023-11-29
5楼#
发布于:2018-11-26 14:20
谢谢分享
回复(0) 喜欢(0)     评分
d123mer
钻石会员
钻石会员
  • 发帖数57
  • QQ562257189
  • 金币477两
  • 威望658点
  • 钻石0枚
  • 注册日期2018-04-19
  • 最后登录2024-04-19
6楼#
发布于:2018-12-26 19:47
谢谢分享
回复(0) 喜欢(0)     评分
hua2000
新人上路
新人上路
  • 发帖数8
  • QQ295286073
  • 金币15两
  • 威望12点
  • 钻石0枚
  • 注册日期2019-01-20
  • 最后登录2019-01-20
7楼#
发布于:2019-01-20 22:23
真心不错, 好,  顶你
回复(0) 喜欢(0)     评分
eason316
新人上路
新人上路
  • 发帖数13
  • QQ3263971033
  • 金币4两
  • 威望18点
  • 钻石0枚
  • 注册日期2019-02-19
  • 最后登录2019-04-11
8楼#
发布于:2019-02-20 11:55
學習了!
回复(0) 喜欢(0)     评分
sky740221
新人上路
新人上路
  • 发帖数11
  • QQ123
  • 金币1两
  • 威望14点
  • 钻石0枚
  • 注册日期2019-03-14
  • 最后登录2019-03-15
  • 社区居民
9楼#
发布于:2019-03-15 10:46
good
回复(0) 喜欢(0)     评分
lyl_dg
初级会员
初级会员
  • 发帖数21
  • QQ826716311
  • 金币25两
  • 威望36点
  • 钻石0枚
  • 注册日期2019-03-28
  • 最后登录2020-06-11
  • 社区居民
10楼#
发布于:2019-03-28 12:39
正好需要,在怎麼才能下載接口debug.docx
回复(0) 喜欢(0)     评分
ts0769
初级会员
初级会员
  • 发帖数10
  • QQ729945543
  • 金币29两
  • 威望40点
  • 钻石0枚
  • 注册日期2019-04-30
  • 最后登录2019-06-21
11楼#
发布于:2019-04-30 14:42
剛好需要,非常感謝
回复(0) 喜欢(0)     评分
qing136
初级会员
初级会员
  • 发帖数14
  • QQ136119842
  • 金币22两
  • 威望30点
  • 钻石0枚
  • 注册日期2019-05-15
  • 最后登录2020-01-17
12楼#
发布于:2019-05-17 15:36
感谢分享,学习到新知识
回复(0) 喜欢(0)     评分
tbbniat
初级会员
初级会员
  • 发帖数21
  • QQ24905870
  • 金币33两
  • 威望28点
  • 钻石0枚
  • 注册日期2019-06-20
  • 最后登录2020-04-07
  • 社区居民
13楼#
发布于:2019-06-21 22:04
谢谢分享
回复(0) 喜欢(0)     评分
yinhepen
新人上路
新人上路
  • 发帖数16
  • QQ23230547
  • 金币14两
  • 威望19点
  • 钻石0枚
  • 注册日期2019-11-18
  • 最后登录2020-12-24
14楼#
发布于:2019-11-18 15:19
very good
回复(1) 喜欢(1)     评分
上一页
游客

返回顶部