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. Can't open PID file /run/zabbix/zabbix_agentd.pid

    神奇的事情,重启主机(reboot)后查看状态是正常的没有报错,重启zabbix-agent后,报无法打开zabbix_agentd.pid,zabbix-web正常监控 1.首先,/etc/zabb ...

  2. 『学了就忘』Linux基础命令 — 26、帮助命令

    目录 1.man命令 (1)man命令的快捷键 (2)man命令的帮助级别(了解即可) (3)man命令的使用 2.info命令 3.help命令 4.--help选项 1.man命令 man是最常见 ...

  3. vue修改启动的端口和host

    打开vue项目(dev) dev/config/ 路径修改index.js文件 然后对host和pord修改指定的即可 host: 'localhost', // can be overwritten ...

  4. 面霸篇:Java 集合容器大满贯(卷二)

    面霸篇,从面试角度作为切入点提升大家的 Java 内功,所谓根基不牢,地动山摇. 码哥在 <Redis 系列>的开篇 Redis 为什么这么快中说过:学习一个技术,通常只接触了零散的技术点 ...

  5. C代码

    #include<stdio.h>#include<stdlib.h>void main(){    char    ch, file_name1[20], file_name ...

  6. [loj3526]修改DNA

    如果$a[x..y]$和$b[x..y]$的某种字符数量不同,显然无解 考虑一个$[x,y]$的排列$p[x..y]$,使得$\forall x\le i\le y,a_{i}=b_{p_{i}}$, ...

  7. html图片动态增加文字

    <body> <!-- <div class="logo"> <img src="${imagePath}/disc.PNG" ...

  8. tomcat的log日志乱码解决方案

    Intellij idea Tomcat输出log中文乱码 配置tomcat在VM options添加-Dfile.encoding=UTF8 -Dsun.jnu.encoding=UTF8 重启后控 ...

  9. [USACO07MAR]Face The Right Way G

    发现选定一个长度后,怎么翻转是固定的. 那我们直接选定一个长度去操作就行. 优化操作过程 类似于堆里打持久化标记一样的感觉. [USACO07MAR]Face The Right Way G // P ...

  10. Codeforces 1332G - No Monotone Triples(数据结构综合)

    Codeforces 题目传送门 & 洛谷题目传送门 首先打表即可发现对于任意长度 \(\ge 5\) 的序列总存在一个 Monotone triple,证明不会实在不行直接 \(5^5\) ...