Marco Mendoza
Member
Hello,
I have an issue with a SOAP connection,
I get the error:
"Fallo en Secure Socket Layer (SSL). código de error 0: Unknown SSL error (9318) Falla en la conexón al host consultaqr.facturaelectronica.sat.gob.mx en el puerto 443 transporte TCP. (9407)"
Translated something like
"Fail in Secure Socket Layer (SSL). error code 0: Unknown SSL error (9318) Fail in connection to host consultaqr.facturaelectronica.sat.gob.mx on port 443 transport TCP. (9407)"
	
	
	
		
AIX
OpenEdge 11.6.3
Any ideas?
PS. I tested the SOAP on windows with Powershell, and it works fine,
	
	
	
		
				
			I have an issue with a SOAP connection,
I get the error:
"Fallo en Secure Socket Layer (SSL). código de error 0: Unknown SSL error (9318) Falla en la conexón al host consultaqr.facturaelectronica.sat.gob.mx en el puerto 443 transporte TCP. (9407)"
Translated something like
"Fail in Secure Socket Layer (SSL). error code 0: Unknown SSL error (9318) Fail in connection to host consultaqr.facturaelectronica.sat.gob.mx on port 443 transport TCP. (9407)"
		Code:
	
	USING OpenEdge.Core.*.
USING OpenEdge.Net.HTTP.*.
USING OpenEdge.Net.HTTP.IHttpClientLibrary.
USING OpenEdge.Net.HTTP.Lib.ClientLibraryBuilder.
USING OpenEdge.Net.URI.
DEFINE VARIABLE cDLC  AS CHARACTER NO-UNDO.
DEFINE VARIABLE oLib AS IHttpClientLibrary NO-UNDO.
DEFINE VARIABLE oRequest                 AS IHttpRequest                 NO-UNDO.
DEFINE VARIABLE oResponse                AS IHttpResponse                NO-UNDO.
DEFINE VARIABLE oURI                     AS URI                          NO-UNDO.
DEFINE VARIABLE oRequestBody             AS OpenEdge.Core.String         NO-UNDO.
DEFINE VARIABLE hXMLHandle               AS HANDLE                       NO-UNDO.
DEFINE VARIABLE lcXML                    AS LONGCHAR                     NO-UNDO.
/* Web Service based on this public WS http://www.dneonline.com/calculator.asmx . It consumes the WebService executing the Add Operation. */
oRequestBody =  NEW OpenEdge.Core.String(
'<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:tem="http://tempuri.org/">' +
'   <soapenv:Header/>' +
'   <soapenv:Body>' +
'      <tem:Consulta>' +
'         <tem:expresionImpresa>' +
'<![CDATA[?re=CBE070913344&rr=CCO0309098N8&tt=28903.17&id=04C979D3-2D0F-45A1-AD80-E4625B7C5192]]>' +
'         </tem:expresionImpresa>' +
'      </tem:Consulta>' +
'   </soapenv:Body>' +
'</soapenv:Envelope>'
).
oLib = ClientLibraryBuilder:Build()
        :sslVerifyHost(NO)
        :Library.
oURI = URI:Parse("https://consultaqr.facturaelectronica.sat.gob.mx/ConsultaCFDIService.svc").
oRequest = RequestBuilder:Post(oUri, oRequestBody)
                         :ContentType('text/xml;charset=UTF-8')
                         :AcceptAll()
 :AddHeader('SOAPAction', 'http://tempuri.org/IConsultaCFDIService/Consulta')
                         :Request.
oResponse = ClientBuilder:Build()
                          :UsingLibrary(oLib)
                          :Client
                          :Execute(oRequest).
IF oResponse:StatusCode <> 200 THEN
   DO:
    MESSAGE "http error: " oResponse:StatusCode VIEW-AS ALERT-BOX.
    RETURN ERROR "Request Error: " + STRING(oResponse:StatusCode).
   END.
ELSE
  DO:
    hXMLHandle = CAST(oResponse:Entity,WidgetHandle):Value.
    hXMLHandle:SAVE('LONGCHAR',lcXML).
    MESSAGE STRING(lcXML) VIEW-AS ALERT-BOX.
 END.AIX
OpenEdge 11.6.3
Any ideas?
PS. I tested the SOAP on windows with Powershell, and it works fine,
		Code:
	
	PS C:\Users\F62109A> $params = @{
>> "Content-type"="text/xml;charset=utf-8"
>> "SOAPAction"="http://tempuri.org/IConsultaCFDIService/Consulta"
>> };
PS C:\Users\F62109A> $body = '<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:tem="http://tempuri.org/"><soapenv:Header/><soapenv:Body><tem:Consulta><tem:expresionImpresa><![CDATA[?re=CBE070913344&rr=CCO0309098N8&tt=28903.17&id=04C979D3-2D0F-45A1-AD80-E4625B7C5192]]></tem:expresionImpresa></tem:Consulta></soapenv:Body></soapenv:Envelope>'
PS C:\Users\F62109A> $response = Invoke-WebRequest -Uri https://consultaqr.facturaelectronica.sat.gob.mx/ConsultaCFDIService.svc -Method POST -Body $body -Headers $params
PS C:\Users\F62109A> $response.Content
<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/"><s:Body><ConsultaResponse xmlns="http://tempuri.org/"><ConsultaResult xmlns:a="http://schemas.datacontract.org/2004/07/Sat.Cfdi.Negocio.ConsultaCfdi.Servicio" xmlns:i="http://www.w3.org/2001/XMLSchema-instance"><a:CodigoEstatus>S - Comprobante obtenido satisfactoriamente.</a:CodigoEstatus><a:EsCancelable>Cancelable con aceptación</a:EsCancelable><a:Estado>Vigente</a:Estado><a:EstatusCancelacion>En proceso</a:EstatusCancelacion><a:ValidacionEFOS>200</a:ValidacionEFOS></ConsultaResult></ConsultaResponse></s:Body></s:Envelope> 
	