FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin para Harbour/xHarbour Ayuda con WEBSERVICE
Posts: 336
Joined: Wed May 16, 2007 09:40 PM
Ayuda con WEBSERVICE
Posted: Mon Nov 15, 2010 07:42 PM
Cuando trato de conectarme me da el siguiente error

ERROR DESCRIPTION:ERROR MSXML2.DOMDocument/3 DISP_E_MEMBERNOTFOUND: CXML

STACK CALLS

CALLED FROM: SOURCE\RTL\WIN32OLE.PRG=> TOLEAUTO.CXML(0)
CALLED FROM: SVE201.PRG=> CONWS (1203)


ESTE ES UNA PRTE DEL PROGRAMA

FUNCTION CONWS()
// osoapclient:=createobject("mssoap.soapclient")
// osoapclient:=nil
LOCAL oHttp,doc
LOCAL cLocation:="http://<hostSVE>svePerfilacionWSN/Sesion?WSDL"
LOCAL cXml:=""+;
'<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:cl="cl.zofri.sve" xmlns:wsn="http://cl/zofri/sve/prf/wsn" xmlns:java="java:cl.zofri.sve.app.eo">'+;
'<soapenv:Header>'+;
'<cl:token></cl:token>'+;
'</soapenv:Header>'+;
'<soapenv:Body>'+;
'<wsn:login>'+;
'<wsn:usuario>90000059-0</wsn:usuario>'+;
'<wsn:clave>cy6u8ftS</wsn:clave>'+;
'<wsn:rutEmpresa>'+;
'<java:Dv>0</java:Dv>'+;
'<java:Nro>90000059</java:Nro>'+;
'</wsn:rutEmpresa>'+;
'<wsn:rutAgencia></wsn:rutAgencia>'+;
'</wsn:login>'+;
'</soapenv:Body>'+;
'</soapenv:Envelope>'
?cxml
// doc =createobject("MSXML2.DOMDocument")
// ohttp=createobject("MSXML2.XMLHTTP")
// ohttp:open("POST",clocation,.f.)
// ohttp:setrequestheader("soapaction","ws_graf")
// ohttp:setrequestheader("content-type","text/xml")
// doc:loadxml(cxml)
// ohttp:Send( cxml )
// ?ohttp:responsetext

doc = toleauto():new("MSXML2.DOMDocument")
ohttp=toleauto():new("MSXML2.XMLHTTP")

ohttp:open("POST",clocation,.f.)
ohttp:setrequestheader("soapaction","enviararchivowebservice")
ohttp:setrequestheader("content-type","text/xml")

doc:loadXML(cxml)
ohttp:Send(doc:cxml ) LINEA 1203
// ?ohttp:responsetext

RETURN .T.
Fivewin-Xharbour 24.09, Iquique, Chile
Posts: 989
Joined: Thu Nov 24, 2005 03:01 PM
Re: Ayuda con WEBSERVICE
Posted: Tue Nov 16, 2010 07:58 AM
La traducci贸n al 'cristiano' de ERROR DESCRIPTION:ERROR MSXML2.DOMDocument/3 DISP_E_MEMBERNOTFOUND: CXML ser铆a que no existe la variable de instancia cXml.
Est谩s llamando a Send usando Dom:cXml... 驴Y si pruebas usando directamente cXml? Es decir:

Code (fw): Select all Collapse
ohttp:Send(cXml)


Creo que los objetos del tipo DOMDocument no tienen la variable cXml.
Una pregunta de puro curioso 驴Para que necesitas crear un objeto DOMDocument? S茅 que se usa mucho cuando haces Ajax con Javascript, porque manipulas los elementos y nodos del html para recoger y proyectar los resultados, pero probablemente en este caso te resulte suficiente con usar texto simple.
Saludos
Carlos Mora
http://harbouradvisor.blogspot.com/
StackOverflow http://stackoverflow.com/users/549761/carlos-mora
鈥淚f you think education is expensive, try ignorance"
Posts: 336
Joined: Wed May 16, 2007 09:40 PM
Re: Ayuda con WEBSERVICE
Posted: Tue Nov 16, 2010 01:38 PM

Ya probe de esa forma y me da el mismo error,

Con respecto a tu pregunta es un ejemplo que esta aca en el foro y para que sirve lo desconozco, la verdad es primera vez que trabajo con webservices y no se nada como hacer la comunicacion con este y tampoco las repuestas, espo eso que copie le ejemplo.

Lo unico que necesito es comunicarme con el y que me de una respuesta

agradeceria tu ayuda

saludos

Fivewin-Xharbour 24.09, Iquique, Chile
Posts: 111
Joined: Sat Jan 30, 2010 08:35 AM
Re: Ayuda con WEBSERVICE
Posted: Tue Nov 16, 2010 03:17 PM
Hola,

Has probado con el programa soapUI: http://www.soapui.org

A mi me fu茅 muy bien para depurar errores.

Pere
Posts: 989
Joined: Thu Nov 24, 2005 03:01 PM
Re: Ayuda con WEBSERVICE
Posted: Tue Nov 16, 2010 04:47 PM

Hola Pere,

la herramienta que recomendaste tiene una MUY buena pinta. Creo que la a帽adimos a la lista de utilidades, me viene de perlas.
Much铆simas gracias

Saludos
Carlos Mora
http://harbouradvisor.blogspot.com/
StackOverflow http://stackoverflow.com/users/549761/carlos-mora
鈥淚f you think education is expensive, try ignorance"
Posts: 111
Joined: Sat Jan 30, 2010 08:35 AM
Re: Ayuda con WEBSERVICE
Posted: Tue Nov 16, 2010 06:04 PM
Hola Carlos,

de nada, estamos para ayudarnos.

Una cosa que he visto, supongo que esta direccion esta cambiada, porque sino, es normal que de error.
Code (fw): Select all Collapse
LOCAL cLocation:="http://<hostSVE>svePerfilacionWSN/Sesion?WSDL"


Esto <hostSVE> tiene que ser nombre de servidor.

Pere.
Posts: 336
Joined: Wed May 16, 2007 09:40 PM
Re: Ayuda con WEBSERVICE
Posted: Tue Nov 16, 2010 07:00 PM

Hola Pere

Tenias Razon, me faltaba el nombre del servidor y con eso se soluciono mi problema hasta ahora, gracias por la ayuda.

logre comunicarme con el servidor y consumir de este mismo

y otra cosa muy buena herramienta la que acabas de publicar

Fivewin-Xharbour 24.09, Iquique, Chile
Posts: 336
Joined: Wed May 16, 2007 09:40 PM
Re: Ayuda con WEBSERVICE
Posted: Wed Nov 24, 2010 09:14 PM

Una Consulta
para buscar el resultado de un tag dentro del XML, lo busco de la siguiente manera

txt= res:selectsinglenode("//java:resmensaje")
tj1:=txt:text

cuendo existe el tag no hay problemas y almacena en tj1 el resultado, pero cuando no existe el programa se cae

como puedo hacer o validar de que exista ese tag

saludos

Fivewin-Xharbour 24.09, Iquique, Chile
Posts: 336
Joined: Wed May 16, 2007 09:40 PM
Re: Ayuda con WEBSERVICE
Posted: Sat Nov 27, 2010 07:50 PM

Ya lo solucione

if txt ! = NIL

Fivewin-Xharbour 24.09, Iquique, Chile
Posts: 336
Joined: Wed May 16, 2007 09:40 PM
Re: Ayuda con WEBSERVICE
Posted: Sat Nov 27, 2010 07:52 PM
<env:Envelope xmlns:env="http://schemas.xmlsoap.org/soap/envelope/">
<env:Header>
<cl:token xmlns:cl="cl.zofri.sve">fb27a2004f1fa9052--ceb1fac1-34-6-c213-7b12 5ff1-d860-3:6442daa2485:42432-b6792206f0fc915d-0c-b-f3c1-a4162c-17-2bd275df -e810b36674:d9a24352464:2</cl:token>
<cl:respuesta xmlns:cl="cl.zofri.sve">
<java:resCodigo xmlns:java="java:cl.zofri.sve.utl.bo">0</java:resCodigo>
<java:resMensaje xmlns:java="java:cl.zofri.sve.utl.bo">Se ejecut贸 correctamente el servicio.</java:resMensaje>
<java:resSeveridad xmlns:java="java:cl.zofri.sve.utl.bo">O</java:resSeveridad>
</cl:respuesta>
</env:Header>
<env:Body>
<m:obtenerCausalesRechazoResponse xmlns:m="http://cl/zofri/sve/cns/wsn">
<m:return><![CDATA[<srv alias="" id="executeSrvDataMultiple" knaToken="&lt;header&gt;&lt;token&gt;fb27a2004f1fa9052--ceb1fac1-34-6-c213-7b12 5ff1-d860-3:6442daa2485:42432-b6792206f0fc915d-0c-b-f3c1-a4162c-17-2bd275df -e810b36674:d9a24352464:2&lt;/token&gt;&lt;idUsuario&gt;elmo.ceballos&lt;/idUsuario&gt;&lt;CodigoTipoUsuario&gt;TUSU3&lt;/CodigoTipoUsuario&gt;&lt;RutUsuario&gt;90000008-0&lt;/RutUsuario&gt;&lt;RutEmpresa&gt;90000008-0&lt;/RutEmpresa&gt;&lt;RutAgencia&gt;&lt;/RutAgencia&gt;&lt;/header&gt;"><result><srvs result="ok" rowCount="1"><data TTotal="14" id="consultarCausalesRechazo" result="ok" rowCount="3" rowCountTotal="3"><row CODI_TDOC="101" CONT_VALI="Validaci贸n de Negocio" CREC_CODI="201" CRMD_FECH_CREA="2010-11-20 00:00:00.0" CRMD_MENS="ERROR: Debe Ingresar Tipo de Adjunto &quot;Nota de gasto&quot;,o completar los datos Nro y Fecha, -" CRMD_NRO_ITEM="0" LTIP_NOMB="Upload" MDOC_FECH_INGR="2010-11-20 21:08:51.0" MDOC_ID="201060739" MDOC_NDOC_USUA="000001" NUME_PROV="101-20108956" RUT="90000008-0" USUA_ID="elmo.ceballos"/><row CODI_TDOC="101" CONT_VALI="Validaci贸n de Negocio" CREC_CODI="200" CRMD_FECH_CREA="2010-11-20 00:00:00.0" CRMD_MENS="ERROR: Debe Ingresar Tipo de Adjunto &quot;Reconocimiento de reembalaje y divisi贸n&quot;,o completar los datos Nro, Fecha y Emisor. , -" CRMD_NRO_ITEM="0" LTIP_NOMB="Upload" MDOC_FECH_INGR="2010-11-20 21:08:51.0" MDOC_ID="201060739" MDOC_NDOC_USUA="000001" NUME_PROV="101-20108956" RUT="90000008-0" USUA_ID="elmo.ceballos"/><row CODI_TDOC="101" CONT_VALI="Validaci贸n de Negocio" CREC_CODI="323" CRMD_FECH_CREA="2010-11-20 00:00:00.0" CRMD_MENS="ERROR: El tipo de bulto informado no existe, 022" CRMD_NRO_ITEM="0" LTIP_NOMB="Upload" MDOC_FECH_INGR="2010-11-20 21:08:51.0" MDOC_ID="201060739" MDOC_NDOC_USUA="000001" NUME_PROV="101-20108956" RUT="90000008-0" USUA_ID="elmo.ceballos"/><statics TExecuteSQL="2" TGetConnection="0" TPopulate="2" TSQLParser="7" TXMLParser="0"/><prmsQuery><prm NRO_ATENCION="&lt;srvs&gt;&lt;row nume_aten='201060739'/&gt;&lt;/srvs&gt;" NRO_PROVISORIO="&lt;srvs&gt;&lt;row nume_prov='20108956'/&gt;&lt;/srvs&gt;"/></prmsQuery><query authentication="true" authenticationKey="consulta" con="zofriDesa" id="consultarCausalesRechazo" method="query" viewAcc="edit, del">

<params/>
</query></data></srvs></result></srv>]]></m:return>

</m:obtenerCausalesRechazoResponse>
</env:Body>
</env:Envelope>



Como Puedo leer lo que esta en rojo, por tag , ya que es solo una linea por el CDATA, puede ser por un AT(x,y)o hay alguna otra forma de leerlo
agradeceria la ayuda
Fivewin-Xharbour 24.09, Iquique, Chile
Posts: 132
Joined: Sun Oct 23, 2005 04:09 PM
Re: Ayuda con WEBSERVICE
Posted: Mon Jan 24, 2011 04:02 PM

Ya baje el soapUI pero la verdad , ni idea de como seguirle, podrian ayudarme con un ejemplo, desde ya gracias mil

Posts: 111
Joined: Sat Jan 30, 2010 08:35 AM
Re: Ayuda con WEBSERVICE
Posted: Mon Jan 24, 2011 04:43 PM

Hola Miguel,

A lo mejor te puedo echar una mano con Soapui, en que punto te encuentras ??

Hola elmiquique,

En que harbour estas trabajando, yo lo hago con xharbour comercial, este tiene unas clases Txmldocument, txmlnode, .. que funcionan muy bien.
En este caso te podr铆a echar una mano.

Un saludo.
Pere

Posts: 132
Joined: Sun Oct 23, 2005 04:09 PM
Re: Ayuda con WEBSERVICE
Posted: Mon Jan 24, 2011 05:03 PM

es 1.1.0 , open source, la vdd te lo agradecer铆a bastante pq no tengo npi de como hacer esto,

saludos

Posts: 111
Joined: Sat Jan 30, 2010 08:35 AM
Re: Ayuda con WEBSERVICE
Posted: Mon Jan 24, 2011 05:19 PM

Hola Miguel,

Primero de todo tienes que saber la url del servicio web.

Tienes que crear un proyecto nuevo
Como es obvio "Project Name" es el nombre de proyecto.

Donde pone "initial WSDL/WADL" va la url anterior.

Y despues desmarcar totas las opciones y pulsar OK.

Pere.

Posts: 132
Joined: Sun Oct 23, 2005 04:09 PM
Re: Ayuda con WEBSERVICE
Posted: Tue Jan 25, 2011 05:22 PM

Gracias Pere

me esta marcando "erroe importin g wsdl" ya cheque con varias url y sigue. 驴?
saludos