Siebel调用WebService
Siebel可以调用外部系统的接口,通过WebService的接入方式实现,所在的项目都是通过ESB,其他系统的接口都要经过ESB,由ESB提供WSDL文档,通过Siebel调用。
一、修改Tools的配置文档
因为系统存在Bug,直接导入WSDL文件会有错误,在导入WSDL文件之前需要修改当前的配置文档,在tools.cfg中添加下面的配置:
系统默认的WSDL路径在Tools中的TEMP路径下,如果不填加上面的配置,也可将WSDL文件放到TEMP中,这样导入也不会报错。
二、实现导入
1).创建WebService
2).点击确定,进入下一步
选择项目名称,导入WSDL文件,会在同路径下生成一个同名的XML和LOG文件,这个XML文件很重要,在设置出站WEB服务的时候会用到。
3).点击下一步,直到完成,会自动生成一个BS和两个IO,红框的部分是BS和IO的名称,可以修改成有业务意义的名字。
4).修改IO和BS
一般是将WSDL文件导入SoapUI查看输入参数和返回参数的XML格式,配置两个IO时要完全按照XML的格式进行配置,稍有不同就会出现很难解决的错误,导致调不通接口。
在BS中要注意的地方是BS的UP,在IO中要注意的地方是IC的UP。
三、设置出站信息
1).找到导入WSDL文件时生成的XML。
2).用管理员账号登陆系统,在管理-Web服务中找到出站Web服务。
3).在出站Web服务中,点击导入按钮,导入XML文件,会在该界面生成出站Web服务。
四、调用生成的BS
用WSDL生成的BS在调用的时候需要自己构建参数调用,主要是构建输入参数,构建的方式一般是按照XML的结构从里往外一层层构造,对照输入IO构造。 构造时用到的方法和结构:
var para = TheApplication().NewPropertySet();
para.SetType();
var paralist = TheApplication().NewPropertySet();
paralist.SetType();
paralist.AddChild(para);
按照这样的结构一层一层构造,构建出BS的输入参数。
调用BS:
var bsSev = TheApplication().GetService("BS Name");//BS的名称
bsSev.InvokeMethod("Method", psIn, psOut);//BS中的方法名字,此时就得到了BS的输出参数
得到输出参数:
与构建输入参数的方法相反,获得输出参数的方法是按照输出XML的结构从外到内一层层获取,用到的方法主要是:
var paraOut = psOut.GetChild(0);
这样一层一层下去,直到获取到最后的输出参数。
通过var sValue =paraOut.GetProperty(" 参数名");获取到值。
Siebel调用WebService的更多相关文章
- 一个简单的webservice的demo(下)winform异步调用webservice
绕了一大圈,又开始接触winform的项目来了,虽然很小吧.写一个winform的异步调用webservice的demo,还是简单的. 一个简单的Webservice的demo,简单模拟服务 一个简单 ...
- 调用webservice进行身份验证
因为同事说在调用webservice的时候会弹出身份验证的窗口,直接调用会返回401,原因是站点部署的时候设置了身份验证(账号名称自己配置).因而在调用的时候需要加入身份验证的凭证. 至于如何获取身份 ...
- java接口调用——webservice就是一个RPC而已
很多新手一听到接口就蒙逼,不知道接口是什么!其实接口就是RPC,通过远程访问别的程序提供的方法,然后获得该方法执行的接口,而不需要在本地执行该方法.就是本地方法调用的升级版而已,我明天会上一篇如何通过 ...
- Android调用WebService
这两天给老师做地铁app的demo,与后台的交互要用WebService,还挺麻烦的.所以想写点,希望有用. Web Services(Web服务)是一个用于支持网络间不同机器互操作的软件系统,它是一 ...
- C# 调用webservice 几种办法(转载)
原文地址: http://www.cnblogs.com/eagle1986/archive/2012/09/03/2669699.html //=========================== ...
- 【Java EE 学习 80 下】【调用WebService服务的四种方式】【WebService中的注解】
不考虑第三方框架,如果只使用JDK提供的API,那么可以使用三种方式调用WebService服务:另外还可以使用Ajax调用WebService服务. 预备工作:开启WebService服务,使用jd ...
- C#winForm调用WebService的远程接口
Web Service 的创建简单编码.发布和部署 上一篇详细概述了WebService的创建,编码,发布和部署,那么作为客户端的程序如何访问远程端的WebService 接下来看一下具体步骤: ...
- 【学习篇:他山之石,把玉攻】jquery实现调用webservice
1.webservice端 using System; using System.Collections.Generic; using System.Web; using System.Web.Ser ...
- C#调用WebService
1.1.Web Service基本概念 Web Service也叫XML Web Service WebService是一种可以接收从Internet或者Intranet上的其它系统中传递过来的请求, ...
随机推荐
- MySQL怎么缓解读的压力的?---buffer pool
每当我们想要缓解读,一般会想到什么? 预读取,缓存 缓存 缓存,其实就是将高频访问的数据放到内存里面,减少读盘的次数. 为了提高内存的利用率,MySQL还建立了缓存池,也就是buffer pool,存 ...
- 【JavaScript】JS的坚实基础
前言 考虑到在后面的开发中,需要大量的使用js语言去进行开发,所以准备重新规整一下javascript的知识点,专门开了一个js的专栏,用来复习一下js语言.万事开头难,要是后面写的有问题的,欢迎 ...
- 攻防世界 WEB 高手进阶区 csaw-ctf-2016-quals mfw Writeup
攻防世界 WEB 高手进阶区 csaw-ctf-2016-quals mfw Writeup 题目介绍 题目考点 PHP代码审计 git源码泄露 Writeup 进入题目,点击一番,发现可能出现git ...
- Django 小实例S1 简易学生选课管理系统 10 老师课程业务实现
Django 小实例S1 简易学生选课管理系统 第10节--老师课程业务实现 点击查看教程总目录 作者自我介绍:b站小UP主,时常直播编程+红警三,python1对1辅导老师. 课程模块中,老师将要使 ...
- SpringCloud微服务实战——搭建企业级开发框架(十七):Sentinel+Nacos配置持久化
Sentinel Dashboard中添加的规则是存储在内存中的,我们的微服务或者Sentinel一重启规则就丢失了,现在我们将Sentinel规则持久化配置到Nacos中,在Nacos中添加规则 ...
- selet 语句详解
SELECT 语句的基本格式为: SELECT 要查询的列名 FROM 表名字 WHERE 限制条件; 2.0 数学符号条件 SELECT 语句常常会 ...
- [atARC076E]Connected
首先,如果没有这个平面的限制,考虑不断插入一对点,将与这两点连线有交的线从左到右,依次"移动"到左端点边上,因此一定是可行的 但当存在界限后,对于两个端点都在边界上的点对(一个端点 ...
- 基于IDEA Plugin插件开发,撸一个DDD脚手架
作者:小傅哥 博客:https://bugstack.cn 沉淀.分享.成长,让自己和他人都能有所收获! 最近很感兴趣结合 IDEA Plugin 开发能力,扩展各项功能.也基于此使用不同的案例,探索 ...
- mybatis避免sql的like注入
<select id="NotInByEvalQuestion" resultType="com.rm.eval.entity.EvalQnQuestion&quo ...
- appdata 文件夹
appdata file AppData 的位置在 c:\Users\{UserName}\Appdata ,它是从 Windows Vista 开始引入的,直至今天的 Windows 7, 8, 1 ...