You are on page 1of 3

// Decompiled by DJ v3.12.12.

98 Copyright 2014 Atanas Neshkov Date: 15/08/2014


11:39:03
// Home Page: http://www.neshkov.com/dj.html - Check often for new version!
// Decompiler options: packimports(3)
// Source File Name: ValidacionBasica.java
package ec.gob.sri.firmaxades.test;
import
import
import
import
import
import
import
import

es.mityc.firmaJava.libreria.xades.*;
java.io.*;
java.util.ArrayList;
java.util.Iterator;
javax.xml.parsers.*;
org.apache.log4j.*;
org.w3c.dom.Document;
org.xml.sax.SAXException;

public class ValidacionBasica


{
public ValidacionBasica()
{
}
public static void main(String args[])
{
BasicConfigurator.configure();
Logger.getRootLogger().setLevel(Level.ERROR);
ValidacionBasica validador = new ValidacionBasica();
if(validador.validarFichero(ec/gob/sri/firmaxades/test/ValidacionBasica.
getResourceAsStream("/repositorio/factura-XAdES-BES.xml")))
LOG.info("archivo valido");
}
public boolean validarArchivo(File archivo)
{
ValidacionBasica validador = new ValidacionBasica();
boolean esValido = false;
try
{
InputStream is = new FileInputStream(archivo);
esValido = validador.validarFichero(is);
}
catch(FileNotFoundException e)
{
LOG.error(e);
}
return esValido;
}
public boolean validarFichero(InputStream archivo)
{
boolean esValido = true;
ArrayList results = null;
Document doc = parseaDoc(archivo);
if(doc != null)
{
try
{
ValidarFirmaXML vXml = new ValidarFirmaXML();

results = vXml.validar(doc, "./", null);


}
catch(Exception e)
{
LOG.error(e);
}
ResultadoValidacion result = null;
for(Iterator it = results.iterator(); it.hasNext();)
{
result = (ResultadoValidacion)it.next();
esValido = result.isValidate();
if(esValido)
LOG.info((new StringBuilder()).append("La firma es valida =
").append(result.getNivelValido()).append("\nFirmado el: ").append(result.getDat
osFirma().getFechaFirma()).toString());
else
LOG.info((new StringBuilder()).append("La firma NO es valida
\n").append(result.getLog()).toString());
}
}
return esValido;
}
private Document parseaDoc(InputStream fichero)
{
DocumentBuilder db;
Document doc;
DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
dbf.setNamespaceAware(true);
db = null;
try
{
db = dbf.newDocumentBuilder();
}
catch(ParserConfigurationException ex)
{
LOG.error("Error interno al parsear la firma", ex);
return null;
}
doc = null;
Document document;
doc = db.parse(fichero);
document = doc;
DocumentBuilderFactory dbf = null;
db = null;
return document;
SAXException ex;
ex;
doc = null;
DocumentBuilderFactory dbf = null;
db = null;
break MISSING_BLOCK_LABEL_94;
ex;
LOG.error("Error interno al validar firma", ex);
DocumentBuilderFactory dbf = null;
db = null;
break MISSING_BLOCK_LABEL_94;
Exception exception;
exception;

DocumentBuilderFactory dbf = null;


db = null;
throw exception;
return null;
}
private static final Logger LOG = Logger.getLogger(ec/gob/sri/firmaxades/tes
t/ValidacionBasica);
private static final String ARCHIVO_XADES_VALIDO = "/repositorio/factura-XAd
ES-BES.xml";
}

You might also like