sábado, octubre 24, 2015
Verificar servicios web de SRI si estan o no en Linea
Con esta funcion en Java es posible revisar si los servicios web del SRI estan activos o no:
Es posible que a futuro se modifique las URL de los servicios web, en ese caso se tendria que actualizar.
package com.sri.;
import java.io.IOException;
import java.io.OutputStream;
import java.net.HttpURLConnection;
import java.net.MalformedURLException;
import java.net.URL;
import javax.xml.bind.DatatypeConverter;
public class RevisarSwSri
{
public RevisarSwSri()
{
}
public static void main(String[] args)
{
String url0 = "https://celcer.sri.gob.ec/comprobantes-electronicos-ws/RecepcionComprobantes?wsdl";
String url1 = "https://celcer.sri.gob.ec/comprobantes-electronicos-ws/AutorizacionComprobantes?wsdl";
String url2 = "https://cel.sri.gob.ec/comprobantes-electronicos-ws/RecepcionComprobantes?wsdl";
String url3 = "https://cel.sri.gob.ec/comprobantes-electronicos-ws/AutorizacionComprobantes?wsdl";
try {
VerificarUrl(url0, 0);
VerificarUrl(url1, 1);
VerificarUrl(url2, 0);
VerificarUrl(url3, 1);
}
catch (Exception ex)
{
}
}
public static boolean VerificarUrl(String url, int recEnv)
{
String claveAcceso = "";
String cadenaBytes = "";
String xmlEnviar = "";
String xmlRecibir = "";
String xml = "";
boolean retorno = false;
try {
cadenaBytes = DatatypeConverter.printBase64Binary(cadenaBytes.getBytes("UTF-8"));
xmlEnviar = "<soapenv:Envelope xmlns:soapenv='http://schemas.xmlsoap.org/soap/envelope/' xmlns:ec='http://ec.gob.sri.ws.recepcion'>"+
"<soapenv:Header/>"+
"<soapenv:Body>"+
"<ec:validarComprobante>"+
"<xml>"+ cadenaBytes +"</xml>"+
"</ec:validarComprobante>"+
"</soapenv:Body>"+
"</soapenv:Envelope>";
xmlRecibir = "<soapenv:Envelope xmlns:soapenv='http://schemas.xmlsoap.org/soap/envelope/' xmlns:ec='http://ec.gob.sri.ws.autorizacion'>"+
"<soapenv:Header/>"+
"<soapenv:Body>"+
"<ec:autorizacionComprobante>"+
"<claveAccesoComprobante>"+ claveAcceso+"</claveAccesoComprobante>"+
"</ec:autorizacionComprobante>"+
"</soapenv:Body>"+
"</soapenv:Envelope>";
if(recEnv <= 0)
xml = xmlEnviar;
else
xml = xmlRecibir;
if(RevisarEstadoSw(url, xml))
{
System.out.println("EN LINEA URL-->" + url);
retorno = true;
}
else
{
System.out.println("FUERA DE LINEA URL-->" + url);
retorno = false;
}
}
catch (Exception ex)
{
retorno = false;
}
return retorno;
}
public static boolean RevisarEstadoSw(String url, String xml)
{
URL oURL;
boolean retorno;
try {
oURL = new URL(url);
HttpURLConnection con = null;
con = (HttpURLConnection) oURL.openConnection();
con.setDoOutput(true);
con.setRequestMethod("POST");
con.setRequestProperty("Content-type", "text/xml; charset=utf-8");
con.setRequestProperty("SOAPAction", "");
con.setRequestProperty("Host", "celcer.sri.gob.ec");
OutputStream reqStreamOut = con.getOutputStream();
reqStreamOut.write(xml.getBytes());
System.out.println("Codito HTTP--> " + String.valueOf(con.getResponseCode()) + " Mensaje--> " +con.getResponseMessage());
if(con.getResponseCode() > 200)
return false;
return true;
}
catch (MalformedURLException e)
{
retorno = false;
}
catch (Exception ex)
{
retorno = false;
}
return retorno;
}
}
Suscribirse a:
Enviar comentarios (Atom)
1 comentario:
Estimado Buenas Tardes ,
Esta viendo en aporte y me pregunte si usted tiene conocimientos de como recibir los mensajes que envia los Web de SRI ayudeme en eso estimado..
Publicar un comentario