博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Delphi调用JAVA的WebService上传XML文件(XE10.2+WIN764)
阅读量:6864 次
发布时间:2019-06-26

本文共 2760 字,大约阅读时间需要 9 分钟。

相关资料:

1.http://blog.csdn.net/luojianfeng/article/details/51219890
2.http://blog.csdn.net/avsuper/article/details/8764165

 

注意事项:

1.生成WSDL文件时,D7可能有的无法生成,用XE版本可以全部生成。

 

返回字节流:

1   function GetByte(AString: string): TByteDynArray;2   var3     sByte: TByteDynArray;4   begin5     SetLength(sByte, Length(AString));6     Move(AString[1], sbyte[0], Length(AString));7     Result := sByte;8   end;
View Code

 

实例代码:DELPHI以TByteDynArray(Bytes)方式传递图片到JAVA的WEBSERVICE保存

1 procedure TForm1.btn17Click(Sender: TObject); 2 var 3   strm : TMemoryStream; 4   AFileData: TByteDynArray; 5   fsize:Integer; 6 begin 7     strm := TMemoryStream.Create; 8     img1.Picture.Graphic.SaveToStream(strm);//把图片转化成内存流 9     strm.Position:=0;//切记,操作图片前一定要这句,否则错误10     //把内存流转化成TByteDynArray11     fsize:=strm.Size;12     SetLength(AFileData,fsize);13     strm.Read(AFileData[0],fsize);14     addResult:=ServiceHello1.addUser_Byte(edt4.Text, AFileData);15   if (addResult='ok') then16   begin17     ShowMessage('添加成功');18   end;19 end;
View Code

 

实例代码:在delPhi中怎么通过webservice上传文件,比较

1 var filename:string; 2     x:string; 3   MStream: TMemoryStream; 4   c: array of TByteDynArray; 5 begin 6     HTTPRIO1.HTTPWebNode.UseUTF8InHeader:=true; 7     HTTPRIO1.WSDLLocation:='http://localhost/grsb/pswService.asmx'; 8     HTTPRIO1.Service:='pswService'; 9     HTTPRIO1.Port:='pswServiceSoap';10     HTTPDeclare:=HTTPRIO1 as pswServiceSoap;11  12   MStream := TMemoryStream.Create;13   try14   if OpenDialog1.Execute then15   begin16   filename:=OpenDialog1.FileName;17   MStream.LoadFromFile(filename);18   MStream.Position := 0;19   SetLength(c, MStream.size);20   MStream.ReadBuffer(c[0], MStream.size);21   x:=HTTPDeclare.zlUploadFile(c[0]);22   //ShowMessage(x);23   end;24   finally25     MStream.Free;26   end;27 end;
View Code

 

实例代码:Delphi调用JAVA的WebService上传XML文件

1 procedure TForm1.Button2Click(Sender: TObject); 2 const 3   sName = 'name'; 4   sPassWord = 'pass'; 5   sDateTime = '2017-11-12 19:41:00'; 6   sCode = '610101'; 7   sCode2 = '060611882'; 8 var 9   iRTJSServicePortType: RTJSServicePortType;10   ST:String;11   sInfo: TByteDynArray;12   P: PChar;13   s: string;14   oStream: TMemoryStream;15 begin16   //内存流方法17   oStream := TMemoryStream.Create;18   try19     begin20       oStream.LoadFromFile('aaa.xml');21       oStream.Position := 0;22       SetLength(sInfo, oStream.size);23 //      MStream.ReadBuffer(sInfo[0], MStream.size);24       oStream.Read(sInfo[0], oStream.size);25       iRTJSServicePortType := GetRTJSServicePortType;26       s := iRTJSServicePortType.uploadInpRegister(sName, sPassWord, sDateTime, sCode, sCode2, sInfo);27       ShowMessage(s);28     end;29   finally30     oStream.Free;31   end;32 end;
View Code

 

转载于:https://www.cnblogs.com/FKdelphi/p/7822852.html

你可能感兴趣的文章
Cesium官方教程8-- 几何体和外观效果
查看>>
Nginx常见的错误及解决方法
查看>>
我的友情链接
查看>>
linux 命令篇 -- 新建用户
查看>>
基于python的大数据分析实战学习笔记-pandas(数据分析包)
查看>>
火狐访问HTTPS网站显示连接不安全的解决方法
查看>>
nGrinder中快速编写groovy脚本03-在GET请求中发送参数
查看>>
转盘抽奖
查看>>
Dubbo中基于权重的随机算法
查看>>
<问题解决10>使用带有框架的页面跳转到登录页面时,登录页面只显示在子框架中,未能铺满整个浏览器--解决方案如下:...
查看>>
oracle 锁表
查看>>
UML关系说明文档
查看>>
如何去除My97 DatePicker控件上右键弹出官网的链接 - 如何debug混淆过的代码
查看>>
dedecms织梦移站后替换数据库中文件路径命令
查看>>
openssl
查看>>
《深入浅出Mysql》學習筆記--日志
查看>>
maven笔记(3)
查看>>
C#面向对象(一) 封装
查看>>
前序遍历与中序遍历确定后序遍历
查看>>
在Centos6.5下安装AR8161网卡驱动
查看>>