delphi调用webservice (.NET C#版)
uses XMLIntf, XMLDoc; XML to XTR文件转换 、File-->open打开你要分析的XML文件
、在左边选择你要分析的接点,双击加到中间的转换列表中
、Create-->DataPacket from XML
、Create and Test Transformation
、file-->save-->Transformation得到一个.xtr的文件
、打开.xtr文件,第一行找到"><SelectEach dest="DATAPACKET\ROWDATA\ROW" from="\Envelope\Body\……>
把‘soap:’、‘diffgr:’删除,保存
、XMLTransformProvider->transformRead->TransformationFile指向.xtr文件
、设置ClientDataSet1的ProviderName属性 =====客户端============================================================== 必需先 CEMAI.GetCEMAISoap; ============= procedure TMainfrm.Button1Click(Sender: TObject);
begin
Edit1.Text:=XTRPath ;
HttpRIO1.HTTPWebNode.Agent := 'Borland SOAP 1.2' ;
HttpRIO1.HTTPWebNode.UseUTF8InHeader := True;
HttpRIO1.Converter.Options := HttpRIO1.Converter.Options + [soUTF8InHeader, soUTF8EncodeXML];
HttpRIO1.Converter.Options := [soSendMultiRefObj, soTryAllSchema, soRootRefNodesToBody, soUTF8InHeader, soCacheMimeResponse, soUTF8EncodeXML];
HttpRio1.Converter.Encoding := 'utf-8' ;
HttpRIO1.URL := defURL;
(HTTPRIO1 as CEMAISoap).GetDataSet(Key,Ssql);
end; ========================= procedure TMainfrm.HTTPRIO1AfterExecute(const MethodName: String;
SOAPResponse: TStream);
var
XMLDoc: IXMLDocument;
begin
SOAPResponse.Position := ;
ClientDataset1.Active := FALSE;
SOAPResponse.Position := ; XMLDoc := NewXMLDocument;
XMLDoc.Encoding := 'UTF8';
SOAPResponse.Position := ;
XMLDoc.LoadFromStream(SOAPResponse);
xmlDoc.SaveToFile('c:\max.xml'); //保存xml文件到根目录 XMLTransformProvider1.TransformRead.SourceXmlDocument := XMLDoc.GetDOMDocument;
XMLTransformProvider1.TransformRead.TransformationFile := Edit1.Text;
ClientDataSet1.OPEN ;
ClientDataset1.Active := TRUE; end; =====服务单元,自动生成================================= 服务单元,必需在initialization处加一句。 initialization
InvRegistry.RegisterInvokeOptions(TypeInfo(CEMAISoap),ioDocument) ;
delphi调用webservice (.NET C#版)的更多相关文章
- delphi 调用 webservice (.NET C#版)
uses XMLIntf, XMLDoc; XML to XTR文件转换 .File-->open打开你要分析的XML文件 .在左边选择你要分析的接点,双击加到中间的转换列表中 .Create- ...
- Delphi调用webservice总结
Delphi调用webservice总结 Delphi调用C#写的webservice 用delphi的THTTPRIO控件调用了c#写的webservice. 下面是我调试时遇到的一些问题: ...
- delphi 调用Webservice 引入wsdl 报错 document empty
delphi 调用Webservice 引入wsdl 报错 document empty 直接引入wsdl 地址报错 document empty 解决办法:在浏览器里保存为xml文件,然后在开发环境 ...
- Delphi调用WebService(通过SoapHeader认证)经验总结
项目(Delphi开发)需要调用另一个系统的WebService.走了不少弯路,现记录总结一下经验.以下是WebService要求: 1.WebService概述 营销Webservice接口采用Ap ...
- 【转】Delphi调用webservice总结
原文:http://www.cnblogs.com/zhangzhifeng/archive/2013/08/15/3259084.html Delphi调用C#写的webservice 用delph ...
- delphi调用webservice 转
如今 Web Service 已越来越火了,在DotNet已开发的Web Service中,Delphi 7如何方便的调用DotNet写的Web Service呢?方法有两种,一种是在Delphi ...
- 03server平台delphi程序不支持直接调用webservice
经过多次测试和查证,发现03server平台用delphi7.0开发的应用程序就是不支持直接调用webservice,无论这个webservice是delphi开发的还是C#开发,抑或是java开发的 ...
- delphi调用java编写的webservice
delphi调用java编写的webservice JAVApojo: public class GroupInfo implements Serializable{ private stati ...
- Delphi调用JAVA的WebService上传XML文件(XE10.2+WIN764)
相关资料:1.http://blog.csdn.net/luojianfeng/article/details/512198902.http://blog.csdn.net/avsuper/artic ...
随机推荐
- k8s源码分析之kubelet
一.概述 二.Kubelet对象创建过程:(pkg/kubelet/kubelet.go ) NewMainKubelet 正如名字所示,主要的工作就是创建 Kubelet 这个对象,它包含了 kub ...
- 【java】解析java类加载与反射机制
目录结构: contents structure [+] 类的加载.连接和初始化 类的加载 类的连接 类的初始化 类加载器 类加载器机制 自定义类加载器 URLClassLoader类 反射的常规操作 ...
- Swift 表达式
前言 Swift 语言使用表达式来表示程序中的最小单位,通常一个表达式是由数字.字符.运算符.变量.常量.函数调用等可以求得值的有意义的排列组成的组合. 根据组合方式的不同,表达式可以分为基本表达式. ...
- OpenCV 学习笔记03 边界框、最小矩形区域和最小闭圆的轮廓
本节代码使用的opencv-python 4.0.1,numpy 1.15.4 + mkl 使用图片为 Mjolnir_Round_Car_Magnet_300x300.jpg 代码如下: impor ...
- linux\mac 日常入门命令行使用——搜索文件\文件夹
搜索文件或者文件夹,是一个常见的需求.我们可以用多种命令来实现我们的需求. find 命令实现搜索 find 是英文,寻找的意思.这个命令可以很方面的来搜索我们需要的内容. 标准命令如下: find ...
- 还没被玩坏的robobrowser(3)——简单的spider
背景 做一个简单的spider用来获取python selenium实战教程的一些基本信息.因为python selenium每年滚动开课,所以做这样一个爬虫随时更新最新的开课信息是很有必要的. 预备 ...
- Java Nashorn--Part 4
Nashorn 和 javax.script 包 Nashorn 并不是第一个在 Java 平台上运行的脚本语言.在Java 6 就提供了 javax.script java 包,它为脚本语言引擎提供 ...
- chrome 版本 29.0.1547.76 m 解决打开新标签页后的恶心页面的问题
个人非常不喜欢这个版本的新标签页的样子,特别是一再输入框中输入要搜索的东西,自动跑到标题栏中去了,比吃屎还恶心.下面是解决办法: 在地址栏输入:chrome://flags/ 按Ctrl+F,输入下面 ...
- Linux 密码过期(WARNING:Your password has expired )
最近遇到两次这个问题,我们公司用的是开源的堡垒机Jumpserver但是最近有两个同学遇到了 WARNING:Your password has expired 第一次遇到这个问题也没有往深了去查,当 ...
- ssh 反向代理和正向代理的文章
搜索原因是,我希望访问家里内网的机器 技术要点: ssh 反向代理,正向代理 隧道 文章摘自: https://my.oschina.net/leejun2005/blog/94401 https:/ ...