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的更多相关文章

  1. 一个简单的webservice的demo(下)winform异步调用webservice

    绕了一大圈,又开始接触winform的项目来了,虽然很小吧.写一个winform的异步调用webservice的demo,还是简单的. 一个简单的Webservice的demo,简单模拟服务 一个简单 ...

  2. 调用webservice进行身份验证

    因为同事说在调用webservice的时候会弹出身份验证的窗口,直接调用会返回401,原因是站点部署的时候设置了身份验证(账号名称自己配置).因而在调用的时候需要加入身份验证的凭证. 至于如何获取身份 ...

  3. java接口调用——webservice就是一个RPC而已

    很多新手一听到接口就蒙逼,不知道接口是什么!其实接口就是RPC,通过远程访问别的程序提供的方法,然后获得该方法执行的接口,而不需要在本地执行该方法.就是本地方法调用的升级版而已,我明天会上一篇如何通过 ...

  4. Android调用WebService

    这两天给老师做地铁app的demo,与后台的交互要用WebService,还挺麻烦的.所以想写点,希望有用. Web Services(Web服务)是一个用于支持网络间不同机器互操作的软件系统,它是一 ...

  5. C# 调用webservice 几种办法(转载)

    原文地址: http://www.cnblogs.com/eagle1986/archive/2012/09/03/2669699.html //=========================== ...

  6. 【Java EE 学习 80 下】【调用WebService服务的四种方式】【WebService中的注解】

    不考虑第三方框架,如果只使用JDK提供的API,那么可以使用三种方式调用WebService服务:另外还可以使用Ajax调用WebService服务. 预备工作:开启WebService服务,使用jd ...

  7. C#winForm调用WebService的远程接口

    Web Service 的创建简单编码.发布和部署 上一篇详细概述了WebService的创建,编码,发布和部署,那么作为客户端的程序如何访问远程端的WebService 接下来看一下具体步骤:   ...

  8. 【学习篇:他山之石,把玉攻】jquery实现调用webservice

    1.webservice端 using System; using System.Collections.Generic; using System.Web; using System.Web.Ser ...

  9. C#调用WebService

    1.1.Web Service基本概念 Web Service也叫XML Web Service WebService是一种可以接收从Internet或者Intranet上的其它系统中传递过来的请求, ...

随机推荐

  1. SQL*Loader-704: Internal error: ulconnect: OCIServerAttach [0] ORA-12541: TNS:no listener

    使用/app/oracle/product/11.2.0/bin/sqlldr导入数据报错: 监听没有开启?检查发现监正常 猜测是监听端口不是默认的1521有关系,直接在sid里面加上数据库服务器的i ...

  2. ReplacingMergeTree:实现Clickhouse数据更新

    摘要:Clickhouse作为一个OLAP数据库,它对事务的支持非常有限.本文主要介绍通过ReplacingMergeTree来实现Clickhouse数据的更新.删除. 本文分享自华为云社区< ...

  3. mongodb入门命令-创建表数据(二)

    1.mongodb入门命令 1.1 show databases; 或 show dbs; //查看当前的数据库 > show dbs; admin 0.000GB config 0.000GB ...

  4. <互联网时代>观感

    <互联网时代>这部纪录片描绘了互联网从上世纪70年代到现在的整个发展过程,讲述了互联网带给我们生活的方方面面的变化,互联网技术在短短二,三十年的商业化浪潮中,以前所未有的速度谱写着改变世界 ...

  5. 美化CMD

    配置 Windows Terminal 的步骤 前提:在微软商店下载两个软件 Windows Terminal PowerShell(因为最好使用 PowerShell7 ,否则以下命令可能执行不了) ...

  6. Django 小实例S1 简易学生选课管理系统 11 学生课程业务实现

    Django 小实例S1 简易学生选课管理系统 第11节--学生课程业务实现 点击查看教程总目录 作者自我介绍:b站小UP主,时常直播编程+红警三,python1对1辅导老师. 课程模块中,学生需要拥 ...

  7. Chrome handless无界面浏览器的脚本操作

    1.什么是Phantomjs (已经停止更新) 是一个无界面的浏览器 支持页面元素查找,js的执行等 由于不进行css和gui渲染,运行效率要比真实的浏览器要快很多 2.如何使用Phantomjs? ...

  8. [loj3300]组合数问题

    将$f(k)=\sum_{i=0}^{m}a_{i}k^{i}$转换为$f(k)=\sum_{i=0}^{m}b_{i}k^{\underline{i}}$,其中$k^{\underline{i}}= ...

  9. 分布式多任务学习论文阅读(四):去偏lasso实现高效通信

    1.难点-如何实现高效的通信 我们考虑下列的多任务优化问题: \[ \underset{\textbf{W}}{\min} \sum_{t=1}^{T} [\frac{1}{m_t}\sum_{i=1 ...

  10. vue项目中使用 SheetJS / js-xlsx 导出文件

    1.  npm install xlsx 2. 在App.vue 中引入xlsx import * as XLSX from 'xlsx'; // 数据导出导入所需要的依赖  3.  使用xlsx 3 ...