Dav*_*can 5 delphi wsdl delphi-7
我正在尝试使用WSDLImporter(以及WSDLImp命令行)将WSDL导入Delphi 7.
使用WSDLImporter时,Delphi的内存使用量开始增加,直到它崩溃(没有错误)或者我收到堆栈溢出错误.
使用命令行工具时,我得到以下内容
Borland WSDLIMP Version 2.2 - $Rev: 10138 $
Copyright (c) 2007 Borland Software Corporation
Reading: https://api.demo.ezidebit.com.au/v3-3/nonpci?wsdl
Import : https://api.demo.ezidebit.com.au/v3-3/nonpci?wsdl:0
*Error*: http://api.demo.ezidebit.com.au/v3-3/nonpci?xsd=xsd0
*Error*: http://api.demo.ezidebit.com.au/v3-3/nonpci?xsd=xsd1
*Error*: http://api.demo.ezidebit.com.au/v3-3/nonpci?xsd=xsd2
Import : http://api.demo.ezidebit.com.au/v3-3/nonpci?wsdl=wsdl0
Import : http://api.demo.ezidebit.com.au/v3-3/nonpci?wsdl
Import : http://api.demo.ezidebit.com.au/v3-3/nonpci?wsdl=wsdl0
Import : http://api.demo.ezidebit.com.au/v3-3/nonpci?wsdl
Run Code Online (Sandbox Code Playgroud)
然后一遍又一遍地循环最后两行.显然这显示错误,但没有关于该错误可能的进一步细节.
我在Microsoft Visual Studio中创建了一个C#项目,并将其作为Web引用添加而没有任何问题,但由于遗留代码,我需要在Delphi 7中使用它.
WSDL的地址是
https://api.demo.ezidebit.com.au/v3-3/nonpci?wsdl
我也尝试使用soapUI加载它,没有任何错误.
编辑 我已经下载了Delphi XE2的试用版(在另一个问题中提到可能的解决方案),它在我的PAS文件的顶部给了我以下内容.(如果需要,我可以上传整个代码)
我假设Delphi不喜欢的WSDL文件存在问题.关于我可以要求WSDL开发人员改变以便导入的任何线索?
// ************************************************************************ //
// The types declared in this file were generated from data read from the
// WSDL File described below:
// WSDL : https://api.demo.ezidebit.com.au/v3-3/nonpci?wsdl
// >Import : http://api.demo.ezidebit.com.au/v3-3/nonpci?wsdl=wsdl0
// >Import : http://api.demo.ezidebit.com.au/v3-3/nonpci?wsdl
// >Import : https://api.demo.ezidebit.com.au/v3-3/nonpci?wsdl>0
// >Import : http://api.demo.ezidebit.com.au/v3-3/nonpci?wsdl>0
// Encoding : utf-8
// Version : 1.0
// (9/02/2012 2:32:14 PM - - $Rev: 37707 $)
// ************************************************************************ //
unit nonpci;
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 Embarcadero types; however, they could also
// indicate incorrect WSDL documents that failed to declare or import a schema type.
// ************************************************************************ //
// !:CreateScheduleResponse - "https://px.ezidebit.com.au/"[Lit][]
// !:CreateSchedule - "https://px.ezidebit.com.au/"[Lit][]
// !:ClearScheduleResponse - "https://px.ezidebit.com.au/"[Lit][]
// !:ClearSchedule - "https://px.ezidebit.com.au/"[Lit][]
// !:ChangeScheduledAmountResponse - "https://px.ezidebit.com.au/"[Lit][]
// !:GetPayments - "https://px.ezidebit.com.au/"[Lit][]
// !:GetPaymentDetailPlusNextPaymentInfoResponse - "https://px.ezidebit.com.au/"[Lit][]
// !:ChangeScheduledAmount - "https://px.ezidebit.com.au/"[Lit][]
// !:GetPaymentsResponse - "https://px.ezidebit.com.au/"[Lit][]
// !:ChangeScheduledDate - "https://px.ezidebit.com.au/"[Lit][]
// !:IsSystemLockedResponse - "https://px.ezidebit.com.au/"[Lit][]
// !:IsSystemLocked - "https://px.ezidebit.com.au/"[Lit][]
// !:PaymentExchangeVersionResponse - "https://px.ezidebit.com.au/"[Lit][]
// !:PaymentExchangeVersion - "https://px.ezidebit.com.au/"[Lit][]
// !:IsBsbValidResponse - "https://px.ezidebit.com.au/"[Lit][]
// !:TestFunction - "https://px.ezidebit.com.au/"[Lit][]
// !:ChangeScheduledDateResponse - "https://px.ezidebit.com.au/"[Lit][]
// !:IsBsbValid - "https://px.ezidebit.com.au/"[Lit][]
// !:TestFunctionResponse - "https://px.ezidebit.com.au/"[Lit][]
// !:GetCustomerDetails - "https://px.ezidebit.com.au/"[Lit][]
// !:ChangeCustomerStatusResponse - "https://px.ezidebit.com.au/"[Lit][]
// !:AddPayment - "https://px.ezidebit.com.au/"[Lit][]
// !:GetCustomerDetailsResponse - "https://px.ezidebit.com.au/"[Lit][]
// !:ChangeCustomerStatus - "https://px.ezidebit.com.au/"[Lit][]
// !:AddCustomerResponse - "https://px.ezidebit.com.au/"[Lit][]
// !:AddCustomer - "https://px.ezidebit.com.au/"[Lit][]
// !:EditCustomerDetailsResponse - "https://px.ezidebit.com.au/"[Lit][]
// !:EditCustomerDetails - "https://px.ezidebit.com.au/"[Lit][]
// !:AddPaymentResponse - "https://px.ezidebit.com.au/"[Lit][]
// !:GetPaymentDetail - "https://px.ezidebit.com.au/"[Lit][]
// !:GetPaymentStatusResponse - "https://px.ezidebit.com.au/"[Lit][]
// !:GetPaymentDetailPlusNextPaymentInfo - "https://px.ezidebit.com.au/"[Lit][]
// !:GetPaymentDetailResponse - "https://px.ezidebit.com.au/"[Lit][]
// !:GetPaymentStatus - "https://px.ezidebit.com.au/"[Lit][]
// !:DeletePaymentResponse - "https://px.ezidebit.com.au/"[Lit][]
// !:DeletePayment - "https://px.ezidebit.com.au/"[Lit][]
// !:GetScheduledPaymentsResponse - "https://px.ezidebit.com.au/"[Lit][]
// !:GetScheduledPayments - "https://px.ezidebit.com.au/"[Lit][]
Run Code Online (Sandbox Code Playgroud)
没有回答这个问题,但可能有帮助:Free Pascal 有一个 Web 服务工具包,它也有一个 WSDL 导入器。文档说它也适用于 Delphi。
\n\n\n\n\n“Web Service Toolkit\xe2\x80\x9d 是用于 FPC、Lazarus 和\n Delphi 的 Web 服务包;\xe2\x80\x9cWeb Service Toolkit\xe2\x80\x9d 旨在简化 Web 服务\n 的使用和创建FPC、Lazarus 和 Delphi 用户。
\n
http://wiki.freepascal.org/Web_Service_Toolkit
\n| 归档时间: |
|
| 查看次数: |
1321 次 |
| 最近记录: |