FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin para Harbour/xHarbour XMLHTTP en Linux
Posts: 476
Joined: Sat Feb 03, 2007 06:36 AM
XMLHTTP en Linux
Posted: Wed Oct 07, 2020 01:44 PM
Hola a todos.
Alguno a trabajado con MSXML2.XMLHTTP en Linux? corriendo la aplicación con Wine en Linux Mint?
Tengo este código, que funciona correctamente en Windows

Code (fw): Select all Collapse
TRY
  oHttp := CreateObject( "MSXML2.ServerXMLHTTP" )
  lOle := .t.
CATCH
  oHttp := CreateObject( "MSXML2.XMLHTTP" )
  lOle := .t.
END

If !lOle 
   Return .f.
End 
  
TRY
    oHttp:open("POST",cUrl,.f.)
    oHttp:setrequestheader("SOAPAction","http://www.fact.com.mx/schema/ws/RequestTransaction")
    oHttp:setrequestheader("content-type","text/xml")
    oHttp:Send(cXML)

catch oError
    MsgStop( "Error" + CRLF  + "Error: " + cValToChar( oError:GenCode) + CRLF + ;
               "SubC: " + cValToChar( oError:SubCode ) + CRLF + "OSCode: " + cValToChar( oError:OsCode ) + CRLF + ;
               "SubSystem: " + cValToChar( oError:SubSystem ) + CRLF + "Envio de SOAP: " + oError:Description )

   return .f.
end


Pero en Linux no funciona, después del :Send(), me da el siguiente error:
Code (fw): Select all Collapse
GenCode: 1
SubCode: 1007
OSCode: -2147352567
SubSystem: WINOLE
Description: (0x800C0019)


Según veo es un error de WinOle?
Cualquier ayuda se las agradecería.

Saludos

Carlos.
Posts: 817
Joined: Sun Jun 15, 2008 07:47 PM
Re: XMLHTTP en Linux
Posted: Sat Oct 10, 2020 09:47 AM

Hola Carlos.
Soy Manu Expósito. Me alegra muchísimo saber de ti!!!

No sé mucho sobre el tema que preguntas, pero por lo que sé OLE está basado en DCOM tecnología propietaria de Micro Soft.
Wine no sé si eso lo clona totalmente o si lo clona es compatible al 100 X 100. Por tus pruebas se ve que no.

Habría que usar algo similar pero que sea universal o sea la tecnología CORBA. Que es compatible en todos los sistemas operativo MS, Linux o iOS.

Tanto DCOM como CORBA nos ofrecen la posibilidad de usar objetos binarios, es decir, la de compartir objetos hecho en diferentes lenguajes.

Realmente este post sólo lo quería usar para aprovechar y saludarte.

______________________________________________________________________________

Sevilla - Andalucía
Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
Re: XMLHTTP en Linux
Posted: Sat Oct 10, 2020 11:02 AM
https://stackoverflow.com/questions/51742121/certificate-required-to-access-this-resource-is-invalid

XMLHttpRequest: Network Error 0x800c0019, Security certificate required to access this resource is invalid
regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 476
Joined: Sat Feb 03, 2007 06:36 AM
Re: XMLHTTP en Linux
Posted: Sat Oct 10, 2020 12:09 PM
Hola Manu!! igualmente, gusto de poder hablar contigo por este medio
Si, lamentablemente ya me di cuenta que Wine no tiene tan compatible el tema de OLE en Linux.
Solo es un cliente que tiene sus computadoras con Linux, funcionando mi sistema, y todo bien, conectando con MySQL con Eagle1 :-)
Pero ahora, tiene que empezar a trabajar con facturas electrónicas, que con Windows no hay problema.
Seguire investigando, y si encuentro la forma de trabajar esto con Linux les cuento por aca.

Por cierto, sigo pendiente con HDO, no he podido hacer el tiempo para probarla bien.

Gusto de saludarte.

Carlos

xmanuel wrote:Hola Carlos.
Soy Manu Expósito. Me alegra muchísimo saber de ti!!!

No sé mucho sobre el tema que preguntas, pero por lo que sé OLE está basado en DCOM tecnología propietaria de Micro Soft.
Wine no sé si eso lo clona totalmente o si lo clona es compatible al 100 X 100. Por tus pruebas se ve que no.

Habría que usar algo similar pero que sea universal o sea la tecnología CORBA. Que es compatible en todos los sistemas operativo MS, Linux o iOS.

Tanto DCOM como CORBA nos ofrecen la posibilidad de usar objetos binarios, es decir, la de compartir objetos hecho en diferentes lenguajes.

Realmente este post sólo lo quería usar para aprovechar y saludarte.
Posts: 476
Joined: Sat Feb 03, 2007 06:36 AM
Re: XMLHTTP en Linux
Posted: Sat Oct 10, 2020 12:15 PM
Hola Antonio
Gracias por el link, que según leo, tiene que ver con crear un certificado SSL para poder hacer una llamada XMLHttp :-)
Seguire estudiando esto.

Saludos cordiales.

Carlos.

Antonio Linares wrote:https://stackoverflow.com/questions/51742121/certificate-required-to-access-this-resource-is-invalid

XMLHttpRequest: Network Error 0x800c0019, Security certificate required to access this resource is invalid
Posts: 17
Joined: Tue Oct 06, 2015 07:06 AM
Re: XMLHTTP en Linux
Posted: Fri Oct 16, 2020 06:25 AM

Hola, no he usado nunca wine, pero si pudieras llamar a comandos de linux desde wine, podrías hacer la llamada usando CURL en vez de MSXML2.ServerXMLHTTP.

Aquí algo de información sobre llamadas a comandos de linux desde wine:

https://stackoverflow.com/questions/600 ... ng-in-wine

Te lo digo como idea, desconozco por completo los problemas o complejidad de hacerlo así.

Un saludo.

Posts: 476
Joined: Sat Feb 03, 2007 06:36 AM
Re: XMLHTTP en Linux
Posted: Fri Oct 16, 2020 12:06 PM
Hola Darío, gracias por la idea, voy a leer también el articulo.
El cliente en cuestión usa mi aplicación en Linux sin problema, en bastantes puntos de sucursales de su empresa, pero ahora, tiene que certificar factura electrónica, y ahí se complico la cosa en Linux, ya que por el tema de licenciamiento de Windows el quiere seguir utilizando Linux.

Por el momento lo solucioné de esta forma: En las terminales con Linux, al momento de certificar envío el XML a una base de datos en la nube, y en la oficina central del cliente, hay una aplicación con una computadora con Windows, que esta siempre monitoreando si hay alguna petición para certificar, cuando la encuentra, realiza la certificación con el XML enviado, y coloca en otro registro la firma electrónica recibida y en la terminal de Linux, la toma y ya guarda correctamente la factura. No es muy elegante la solución pero funciona, y solo se demora entre 2 a 3 segundos mas del proceso normal de certificación-

Igual seguiré investigando como poder hacerlo directamente desde Linux con Wine.

Saludos.

Carlos Sincuir

darioflores wrote:Hola, no he usado nunca wine, pero si pudieras llamar a comandos de linux desde wine, podrías hacer la llamada usando CURL en vez de MSXML2.ServerXMLHTTP.

Aquí algo de información sobre llamadas a comandos de linux desde wine:
https://stackoverflow.com/questions/600 ... ng-in-wine

Te lo digo como idea, desconozco por completo los problemas o complejidad de hacerlo así.

Un saludo.

Continue the discussion