delphi 调用 webservice 问题,问题高手请进(50分)

  • 主题发起人 主题发起人 【清风】
  • 开始时间 开始时间

【清风】

Unregistered / Unconfirmed
GUEST, unregistred user!
JAVA写的webservices 服务,用delphi 7 调用,用delphi 的导入向导来导入,
// ************************************************************************ //
// The following types, referred to in the WSDL document are not being represented
// in this file. They are either aliases[@] of other types represented or were referred
// to but never[!] declared in the document. The types from the latter category
// typically map to predefined/known XML or Borland types; however, they could also
// indicate incorrect WSDL documents that failed to declare or import a schema type.
// ************************************************************************ //

文件里提示了如下错误,接口一个也没有导入进来,请高手指点一下,什么原因,成功了再加100分
 
Unit uIdfwService;

interface

uses Types, XSBuiltIns;
type

IdfwService = interface(IInvokable)
['{CB53105D-A482-49DC-AE13-F662BBB00859}']
function getUserID(username:string): integer; stdcall;
end;


implementation

uses InvokeRegistry;

initialization
InvRegistry.RegisterInterface(TypeInfo(IdfwService), 'urn:WebServiceIntf-IdfwService', '');

end.

放入这个单元里,主程序引用该单元里的函数就行啊function getUserID(username:string): integer; stdcall;这个是个webservice里的函数例子
 
// ************************************************************************ //
// The types declared in this file were generated from data read from the
// WSDL File described below:
// WSDL : F:/Sso_Service.xml
// (2008-7-1 19:12:25 - 1.33.2.5)
// ************************************************************************ //

unit Sso_Service;

interface

uses InvokeRegistry, SOAPHTTPClient, Types, XSBuiltIns;

type

// ************************************************************************ //
// The following types, referred to in the WSDL document are not being represented
// in this file. They are either aliases[@] of other types represented or were referred
// to but never[!] declared in the document. The types from the latter category
// typically map to predefined/known XML or Borland types; however, they could also
// indicate incorrect WSDL documents that failed to declare or import a schema type.
// ************************************************************************ //




implementation

initialization

end.
我通过wsdl importer 导入完成的生成的 .pas 就是这样,接口一个也没导入过来,我不知道什么原因,是对方的 webservice 有问题,还是我导入的有问题,我以前调 webservice 接口也是用这个工具,生成的 .pas 里那些接口都有了,我直接调用就行了,这个就不行,高手帮忙了。谢谢!!!
 
没有高手知道吗? 再补充一下,JAVA写的webservices 用的中axis2这个框架,我前面调用过 xfire 框架的就没问题,我不知道这两个有什么区,用 delphi 7调一个能用一个不能
 
高手帮忙了,没有人碰到过这样的问题吗?
 
你把WSDL修改一下就可以了,只保留一个<wsdl:binding name="...." type="axis2:..."></wsdl:binding>
 
换了delphi 2007,出现了新的问题,能装入类,但是看不到接口和下面的方法,是吧对方的web services 服务写得有问题呀?
有类似这样的东西
getPerson_Sso_jzgResponse = class(TRemotable)
private
Freturn: WideString;
published
property return: WideString Index (IS_NLBL) read Freturn write Freturn;
end;
没有接口,类似这样的代码
IObjectAttributeSetServicePortType = interface(IInvokable)
['{2EC98984-480A-8E7B-315F-F700E8BD8FAF}']
function findByObjectID(const in0: WideString): WideString; stdcall;
function enumerate: WideString; stdcall;
end;

高手帮忙了。
 
你在Explorer里先看看,能看到了在用wsdl importer 导导看,导了还不行,自己解析属性和方法,至于程序中调用的话,你可以用原生接口来,delphi的那个动动有时候发惦的!·~~~~
 
在IE中能看到WSDL描述文件,在d2007中用wsdl importer导入后只有类,没有接口和方法,我把接口和方法手工写到那个单元中,编译没问题,但调用时报错误: 后面大概是这样的错误信息 ’ interface not supported ‘,不知道怎么解决,请高手指点
 
这块不熟,听说wsdl(D7)有bug,有个补丁叫24535_delphi_soap_runtime_and_importer_update.ZIP,你搜嗖
 
出了几天差,没上网,也没人回复我的问题,没人碰到过类似的问题吗?请高手帮忙了,成了加200分。就是我上面说的那咱情况,找了好多资料也的得到解决,急呀!!![:(]
 
高手帮忙了,没有一个知道吗?
 
高手帮忙了,没有一个知道吗?
知道的给提个醒
 

Similar threads

S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
I
回复
0
查看
738
import
I
I
回复
0
查看
596
import
I
I
回复
0
查看
720
import
I
后退
顶部