FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
Uno aunque sea un Ejemplo de como enviar xml con soap
Buenos Días Señores:
Hace un tiempo un cliente me pidió que trabaje sobre webservices ya desarrollados al principio para mi era chino básico ya que nunca trabaje sobre ello, leyendo en el foro y tambien el libro la cara oculta de delphi 6 de martenns el explica como realizar un cliente sobre soap, todo bien lo entendi bastante bien es mas hice un ejemplo bajando los wsdl de la pagina xmethods entendi el ejemplo como trabaja con thttprio etc. pero no entiendo como enviar realmente un archivo xml a través de soap, no quiero utilizar componentes de terceros se que delphi tiene sus xmldocument y necesito un ejemplo real para el envio el archivo xml de ser posible que trabaje con xmldocument el archivo a enviar es algo asi: Código:
<Estados> <ListaEstados > <Estado> <Codigo>(Código del Estado)</ Codigo > < Nombre >( Nombre del Estado)</ Nombre > </ Estado > </ ListaEstados > </ Estados > Última edición por Casimiro Notevi fecha: 26-03-2012 a las 15:04:32. |
#2
|
|||
|
|||
No entiendo muy bien tu pregunta, pero veamos: un servicio soap lo que hace es publicar un API, delphi tiene un asistente que te permite hacer el wraper para consumir ese API, y nosotros, como programadores, lo que podemos utilizar son esas clases, interfaces o métodos que nos ofrece ese servicio.
Por lo que, si lo que quieres es enviar un archivo al servicio, debes de comprobar si el api del servicio tiene algún interface para hacerlo. Mira este hilo y los enlaces que lleva, al igual te ayudan más que yo: http://www.clubdelphi.com/foros/showthread.php?t=71490 Dicho esto, ¿porqué no explicas mejor cuál es tu problema? |
#3
|
|||
|
|||
Este es el archivo wsdl
Estimado csie, pasa que estaba leyendo desde varias paginas mucha bibliografia y me marie, en fin cuando veo el wsdl y la funcion que quiere mi cliente, a ver si me corriges, llama a una funcion execute donde como uno de los parametros va Readfilexmls del tipo widestring, ¿es ahi donde mando el xml?, saque parte del codigo porque no me permiten poner enlaces web solo fue una linea
unit aupload_editar_cliente; interface uses InvokeRegistry, SOAPHTTPClient, Types, XSBuiltIns; type upload_editar_clienteSoapPort = interface(IInvokable) ['{DA9A95AB-8E31-9087-54FC-02AD2AF06C5C}'] function Execute(const Idcompra: Integer; const Readfilexmls: WideString): WideString; stdcall; end; function Getupload_editar_clienteSoapPort(UseWSDL: Boolean=System.False; Addr: string=''; HTTPRIO: THTTPRIO = nil): upload_editar_clienteSoapPort; implementation function Getupload_editar_clienteSoapPort(UseWSDL: Boolean; Addr: string; HTTPRIO: THTTPRIO): upload_editar_clienteSoapPort; const defWSDL = 'C:\Documents and Settings\Administrador\Escritorio\webservice\aupload_editar_cliente.xml'; defSvc = 'upload_editar_cliente'; defPrt = 'upload_editar_clienteSoapPort'; 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 upload_editar_clienteSoapPort); 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(upload_editar_clienteSoapPort), 'SGTallerWeb', 'UTF-8'); InvRegistry.RegisterDefaultSOAPAction(TypeInfo(upload_editar_clienteSoapPort), 'SGTallerWebaction/AUPLOAD_EDITAR_CLIENTE.Execute'); InvRegistry.RegisterInvokeOptions(TypeInfo(upload_editar_clienteSoapPort), ioDocument); end. |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
como asignar el tamaño a un fichero aunque este sea de 0 kb | kenychy | C++ Builder | 9 | 19-11-2010 16:45:15 |
Como listo el grupo de administradores, aunque le cambien el nombre | l30 | API de Windows | 0 | 03-12-2007 21:56:47 |
enviar fichero a servidor https con SOAP | felixgo | Internet | 3 | 14-02-2005 20:35:42 |
Enviar un attachment DIME con SOAP | jcrodriguez | Internet | 0 | 16-09-2004 08:57:54 |
Obtener Todo El Registro De Una Tabla Aunque Aunque Este Agrupado Por 2 Campos | agova | SQL | 6 | 11-08-2004 15:48:14 |
|