PDA

View Full Version : اشکال در استفاده از وب سرویس (Error processing input)



hamid_14
جمعه 21 فروردین 1394, 17:20 عصر
سلام
من در زمان استفاده از وب سرویس با خطای زیر مواجه می شم.از سازنده پرسیدم میگه مشکل از من هست.البته این هم بگم که وب سرویس در دلفی import نمی شد انقدر گفتم بهشون که حالا جدیدا میشه تو دلفی 7 وارد کرد و unit ایجاد میشه ولی در دلفی های xe امتحان کردم خطا داد.
لطفا راهنمایی کنید که این مشکل از سمت من هست یا سازنده.تشکر

متن خطا:
Error processing input

آدرس وب سرویس:
http://smartcard.rmto.ir:7003/i/web_service/PKG_WEB_SERVICES.xml

(وب سرویس رایگان و در سایت http://www.nepaco.ir/)نام کاربری و کلمه عبور

USERNAME=tr_web_service
Password: tr_web_service123

نمونه کد ساده جهت استفاده


var d : PKG_WEB_SERVICESPortType;
begin
d := GetPKG_WEB_SERVICESPortType(true,'http://smartcard.rmto.ir:7003/i/web_service/PKG_WEB_SERVICES.xml?wsdl',nil);
Memo1.Lines.Clear;
Memo1.Lines.Text := d.GET_DRIVER_BY_SHC('2010110');

یوسف زالی
چهارشنبه 26 فروردین 1394, 10:40 صبح
سلام.
WSDL مربوطه رو بگذارید.

hamid_14
چهارشنبه 26 فروردین 1394, 14:30 عصر
سلام تشکر از جوابتون
http://smartcard.rmto.ir:7003/i/web_service/PKG_WEB_SERVICES.xml?wsdl


// ************************************************** ********************** //// The types declared in this file were generated from data read from the
// WSDL File described below:
// WSDL : http://smartcard.rmto.ir:7003/i/web_service/PKG_WEB_SERVICES.xml
// (04/10/2015 05:06:16 È.Ù - 1.33.2.5)
// ************************************************** ********************** //


unit PKG_WEB_SERVICES;


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.
// ************************************************** ********************** //
// !:double - "http://www.w3.org/2001/XMLSchema"
// !:string - "http://www.w3.org/2001/XMLSchema"






// ************************************************** ********************** //
// Namespace : http://xmlns.oracle.com/orawsv/TR_WEB_SERVICE/PKG_WEB_SERVICES
// soapAction: %operationName%
// transport : http://schemas.xmlsoap.org/soap/http
// style : document
// binding : PKG_WEB_SERVICESBinding
// service : PKG_WEB_SERVICESService
// port : PKG_WEB_SERVICESPort
// URL : http://smartcard.rmto.ir:9090/orawsv/TR_WEB_SERVICE/PKG_WEB_SERVICES
// ************************************************** ********************** //
PKG_WEB_SERVICESPortType = interface(IInvokable)
['{CF7E5277-3B83-6083-2BB5-ADE2335FE90F}']
function GET_TEDAD_NAVGAN_SEN(const IN_SAL_NUMBER_IN: Double): WideString; stdcall;
function GET_TARIKH_PAYAN_MOAYENE_FANNI(const IN_SERIAL_PLAQUE_NUMBER_IN: Double; const IN_PLAQUE_NUMBER_IN: Double): Double; stdcall;
function GET_TARIKH_PAYAN_KART(const IN_CODE_MELI_VARCHAR2_IN: WideString): WideString; stdcall;
function GET_PASSENGER_BY_VIN(const P_VIN_VARCHAR2_IN: WideString): WideString; stdcall;
function GET_PASSENGER_BY_SHP(const P_SHOMAREH_PARVANDEH_VARCHAR2_IN: WideString): WideString; stdcall;
function GET_PASSENGER_BY_SHC(const P_SHOMAREH_KART_VARCHAR2_IN: WideString): WideString; stdcall;
function GET_FREIGHTER_PLAQUE_BY_SHC(const P_SHOMAREH_KART_VARCHAR2_IN: WideString): WideString; stdcall;
function GET_FREIGHTER_BY_VIN(const P_VIN_VARCHAR2_IN: WideString): WideString; stdcall;
function GET_FREIGHTER_BY_SHP(const P_SHOMAREH_PARVANDEH_VARCHAR2_IN: WideString): WideString; stdcall;
function GET_FREIGHTER_BY_SHC(const P_SHOMAREH_KART_VARCHAR2_IN: WideString): WideString; stdcall;
function GET_DRIVER_BY_SHP(const P_SHOMAREH_PARVANDEH_VARCHAR2_IN: WideString): WideString; stdcall;
function GET_DRIVER_BY_SHM(const P_SHOMAREH_MELI_VARCHAR2_IN: WideString): WideString; stdcall;
function GET_DRIVER_BY_SHC(const P_SHOMAREH_KART_VARCHAR2_IN: WideString): WideString; stdcall;
function GET_AVG_SEN_NAVGAN: WideString; stdcall;
end;


function GetPKG_WEB_SERVICESPortType(UseWSDL: Boolean=System.False; Addr: string=''; HTTPRIO: THTTPRIO = nil): PKG_WEB_SERVICESPortType;




implementation


function GetPKG_WEB_SERVICESPortType(UseWSDL: Boolean; Addr: string; HTTPRIO: THTTPRIO): PKG_WEB_SERVICESPortType;
const
defWSDL = 'http://smartcard.rmto.ir:7003/i/web_service/PKG_WEB_SERVICES.xml';
defURL = 'http://smartcard.rmto.ir:9090/orawsv/TR_WEB_SERVICE/PKG_WEB_SERVICES';
defSvc = 'PKG_WEB_SERVICESService';
defPrt = 'PKG_WEB_SERVICESPort';
var
RIO: THTTPRIO;
begin
Result := nil;
if (Addr = '') then
begin
if UseWSDL then
Addr := defWSDL
else
Addr := defURL;
end;
if HTTPRIO = nil then
RIO := THTTPRIO.Create(nil)
else
RIO := HTTPRIO;
try
Result := (RIO as PKG_WEB_SERVICESPortType);
if UseWSDL then
begin
RIO.WSDLLocation := Addr;
RIO.Service := defSvc;
RIO.Port := defPrt;
end else
RIO.URL := Addr;
finally
if (Result = nil) and (HTTPRIO = nil) then
RIO.Free;
end;
end;




initialization
InvRegistry.RegisterInterface(TypeInfo(PKG_WEB_SER VICESPortType), 'http://xmlns.oracle.com/orawsv/TR_WEB_SERVICE/PKG_WEB_SERVICES', '');
InvRegistry.RegisterDefaultSOAPAction(TypeInfo(PKG _WEB_SERVICESPortType), '%operationName%');
InvRegistry.RegisterInvokeOptions(TypeInfo(PKG_WEB _SERVICESPortType), ioDocument);
InvRegistry.RegisterExternalParamName(TypeInfo(PKG _WEB_SERVICESPortType), 'GET_TEDAD_NAVGAN_SEN', 'IN_SAL_NUMBER_IN', 'IN_SAL-NUMBER-IN');
InvRegistry.RegisterExternalParamName(TypeInfo(PKG _WEB_SERVICESPortType), 'GET_TARIKH_PAYAN_MOAYENE_FANNI', 'IN_SERIAL_PLAQUE_NUMBER_IN', 'IN_SERIAL_PLAQUE-NUMBER-IN');
InvRegistry.RegisterExternalParamName(TypeInfo(PKG _WEB_SERVICESPortType), 'GET_TARIKH_PAYAN_MOAYENE_FANNI', 'IN_PLAQUE_NUMBER_IN', 'IN_PLAQUE-NUMBER-IN');
InvRegistry.RegisterExternalParamName(TypeInfo(PKG _WEB_SERVICESPortType), 'GET_TARIKH_PAYAN_KART', 'IN_CODE_MELI_VARCHAR2_IN', 'IN_CODE_MELI-VARCHAR2-IN');
InvRegistry.RegisterExternalParamName(TypeInfo(PKG _WEB_SERVICESPortType), 'GET_PASSENGER_BY_VIN', 'P_VIN_VARCHAR2_IN', 'P_VIN-VARCHAR2-IN');
InvRegistry.RegisterExternalParamName(TypeInfo(PKG _WEB_SERVICESPortType), 'GET_PASSENGER_BY_SHP', 'P_SHOMAREH_PARVANDEH_VARCHAR2_IN', 'P_SHOMAREH_PARVANDEH-VARCHAR2-IN');
InvRegistry.RegisterExternalParamName(TypeInfo(PKG _WEB_SERVICESPortType), 'GET_PASSENGER_BY_SHC', 'P_SHOMAREH_KART_VARCHAR2_IN', 'P_SHOMAREH_KART-VARCHAR2-IN');
InvRegistry.RegisterExternalParamName(TypeInfo(PKG _WEB_SERVICESPortType), 'GET_FREIGHTER_PLAQUE_BY_SHC', 'P_SHOMAREH_KART_VARCHAR2_IN', 'P_SHOMAREH_KART-VARCHAR2-IN');
InvRegistry.RegisterExternalParamName(TypeInfo(PKG _WEB_SERVICESPortType), 'GET_FREIGHTER_BY_VIN', 'P_VIN_VARCHAR2_IN', 'P_VIN-VARCHAR2-IN');
InvRegistry.RegisterExternalParamName(TypeInfo(PKG _WEB_SERVICESPortType), 'GET_FREIGHTER_BY_SHP', 'P_SHOMAREH_PARVANDEH_VARCHAR2_IN', 'P_SHOMAREH_PARVANDEH-VARCHAR2-IN');
InvRegistry.RegisterExternalParamName(TypeInfo(PKG _WEB_SERVICESPortType), 'GET_FREIGHTER_BY_SHC', 'P_SHOMAREH_KART_VARCHAR2_IN', 'P_SHOMAREH_KART-VARCHAR2-IN');
InvRegistry.RegisterExternalParamName(TypeInfo(PKG _WEB_SERVICESPortType), 'GET_DRIVER_BY_SHP', 'P_SHOMAREH_PARVANDEH_VARCHAR2_IN', 'P_SHOMAREH_PARVANDEH-VARCHAR2-IN');
InvRegistry.RegisterExternalParamName(TypeInfo(PKG _WEB_SERVICESPortType), 'GET_DRIVER_BY_SHM', 'P_SHOMAREH_MELI_VARCHAR2_IN', 'P_SHOMAREH_MELI-VARCHAR2-IN');
InvRegistry.RegisterExternalParamName(TypeInfo(PKG _WEB_SERVICESPortType), 'GET_DRIVER_BY_SHC', 'P_SHOMAREH_KART_VARCHAR2_IN', 'P_SHOMAREH_KART-VARCHAR2-IN');


end.

hamid_14
جمعه 28 فروردین 1394, 14:54 عصر
دوستان اگه وقت کردید یه امتحان کنید و راهنمایی بفرمایید با نرم افزار SOAPSonar امتحان کردم درسته.

این هم فایل xml هست.

ali_reza_nazari
شنبه 16 اسفند 1399, 17:55 عصر
دوستان اگه وقت کردید یه امتحان کنید و راهنمایی بفرمایید با نرم افزار SOAPSonar امتحان کردم درسته.

این هم فایل xml هست.

سلام
چون موقع کرک دلفی رو بلاک کردید که نتونه به اینترنت دسترسی داشته و خودش رو چک کنه. برای همین نمی تونه ایمپورت هم بکنه. از توی
etc/host
یک لحظه خارج کنید و بعد ایمپورت کنید