Delphi 7.0编写程序访问JAX-WS提供的WebService问题
2015-12-19 17:20
405 查看
用Delphi 7编写程序访问AXIS提供的WebService都是正常的,其他语言的也是正常的
但是遇到Java上的JAX-WS提供的WebService就不行。
WebService里的函数生成了xsd文件,在Delphi 7里自动import wsdl时候,无法对应xsd文件,自动生成的接口函数居然无法编译通过!
需要用一个TRemotable类来对应函数的各个参数值,这样传过去。
后来又发现值虽然传过去了,但是Java控制台上看到是空的,也就是说通讯已经没问题了,但是传送的内容接口没对。
有人说:
JAVA不支持Delphi传递的ioDocument格式,需要把
InvRegistry.RegisterInvokeOptions(TypeInfo(SaveData), ioDocument);
改为:
InvRegistry.RegisterInvokeOptions(TypeInfo(SaveData), ioHasNamespace);
SaveData是WebService接口。
这个没试过。因为后面直接升级用XE8了,用了XE8,import了wsdl,一下子就对了,在函数的参数里多了很多对应的东西。
程序也正常存入数据到WebService了。
D7对JAX-WS编写的WebService的确不是很好,建议大家在遇到这种情况之下,直接升级到XE8,就正常了。
但是遇到Java上的JAX-WS提供的WebService就不行。
WebService里的函数生成了xsd文件,在Delphi 7里自动import wsdl时候,无法对应xsd文件,自动生成的接口函数居然无法编译通过!
需要用一个TRemotable类来对应函数的各个参数值,这样传过去。
后来又发现值虽然传过去了,但是Java控制台上看到是空的,也就是说通讯已经没问题了,但是传送的内容接口没对。
有人说:
JAVA不支持Delphi传递的ioDocument格式,需要把
InvRegistry.RegisterInvokeOptions(TypeInfo(SaveData), ioDocument);
改为:
InvRegistry.RegisterInvokeOptions(TypeInfo(SaveData), ioHasNamespace);
SaveData是WebService接口。
这个没试过。因为后面直接升级用XE8了,用了XE8,import了wsdl,一下子就对了,在函数的参数里多了很多对应的东西。
程序也正常存入数据到WebService了。
D7对JAX-WS编写的WebService的确不是很好,建议大家在遇到这种情况之下,直接升级到XE8,就正常了。
相关文章推荐
- delphi7的快捷键
- delphi ide插件大全
- WM_SYSCOMMAND包括很多功能,比如:拖动左边框、拖动标题栏、滚动条滚动、点击最小化、双击标题栏——Delphi 通过事件代替了大部分常用的消息,所以Delphi 简单、易用、高效
- Delphi ClientDataSet复制记录
- Delphi 子界类型定义
- Delphi BMP-JPG
- delphi TADOQuery 第二次查询,即使用Filter在结果集中再次筛选
- Delphi与Windows 7下的用户账户控制(UAC)机制
- 字符串-delphi
- delphi 屏蔽任务栏,屏蔽热键
- Delphi程序调用C#.Net编译的DLL并打开窗体(详解)
- delphi 中 image 控件加载bmp、JPG、GIF、PNG等图片的办法
- Delphi属性Property学习应用总结
- 运行Delphi 2007 IDE提示无法打开"EditorLineEnds.ttr"文件
- Delphi使用TryStrToDate判断字符串是否为日期格式
- 如何让Delphi程序启动自动“以管理员身份运行"
- Delphi 重启应用程序(创建Bat文件的Process)
- Delphi内存操作API函数(备查,并一一学习)
- 重温delphi之:如何将Bitmap位图与base64字符串相互转换
- delphi 正则表达式