List of usage examples for javax.xml.parsers SAXParserFactory setValidating
public void setValidating(boolean validating)
From source file:nl.armatiek.xslweb.configuration.WebApp.java
public XsltExecutable tryTemplatesCache(String transformationPath, ErrorListener errorListener) throws Exception { String key = FilenameUtils.normalize(transformationPath); XsltExecutable templates = templatesCache.get(key); if (templates == null) { logger.info("Compiling and caching stylesheet \"" + transformationPath + "\" ..."); try {//ww w. jav a 2 s. c o m SAXParserFactory spf = SAXParserFactory.newInstance(); spf.setNamespaceAware(true); spf.setXIncludeAware(true); spf.setValidating(false); SAXParser parser = spf.newSAXParser(); XMLReader reader = parser.getXMLReader(); Source source = new SAXSource(reader, new InputSource(transformationPath)); XsltCompiler comp = processor.newXsltCompiler(); comp.setErrorListener(errorListener); templates = comp.compile(source); } catch (Exception e) { logger.error("Could not compile stylesheet \"" + transformationPath + "\"", e); throw e; } if (!developmentMode) { templatesCache.put(key, templates); } } return templates; }
From source file:com.seajas.search.contender.service.modifier.ArchiveModifierService.java
/** * Handle the given archive's content by sending each entry to the given handler. * /*w w w.java2 s. co m*/ * @param archive * @param handler * @throws Exception */ public void handleArchive(final Archive archive, final ArchiveResultHandler handler) throws Exception { // Create a validating SAX parser final SAXParserFactory parserFactory = SAXParserFactory.newInstance(); parserFactory.setValidating(true); parserFactory.setNamespaceAware(true); // Create a common transformer per thread Transformer transformer = null; try { transformer = transformerCache.getTransformer(archive.getId(), "archive", archive.getModificationDate()); if (transformer == null) transformer = transformerCache.putContent(archive.getId(), "archive", archive.getModificationDate(), archive.getTransformerContent()); } catch (TransformerConfigurationException e) { logger.error("Unable to generate a (cached) transformer from the given content", e); return; } catch (TransformerFactoryConfigurationError e) { logger.error("Unable to generate a (cached) transformer from the given content", e); return; } // Store and process the files try { Map<File, String> storedResults = storeAndDecompressFiles(archive); List<String> deletedLinks = new ArrayList<String>(); // Only process deletes when a deletion expression has been provided if (StringUtils.hasText(archive.getDeletionExpression())) { // Process all entries beforehand, so to exclude deletes from the final result for (Map.Entry<File, String> storedResult : storedResults.entrySet()) { File storedResultsFolder = storedResult.getKey(); for (File entryLocation : storedResultsFolder.listFiles()) if (entryLocation.getName().matches(archive.getDeletionExpression())) { String deleteLink = entryLocation.getName().replaceAll(archive.getDeletionExpression(), archive.getInternalLink()); deletedLinks.add(deleteLink); // Delete the actual link cacheService .addDeleted(new CacheService.DeletedEntry(archive.getCollection(), deleteLink)); } } } // Now process the stored results themselves for (Map.Entry<File, String> storedResult : storedResults.entrySet()) { File storedResultsFolder = storedResult.getKey(); // Create the descriptions folder if it doesn't already exist File descriptionsFolderLocation = new File(storedResultsFolder, "descriptions"); if (!descriptionsFolderLocation.exists()) descriptionsFolderLocation.mkdirs(); for (File entryLocation : storedResultsFolder.listFiles()) { if (entryLocation.isDirectory()) { if (!entryLocation.getName().equals("descriptions")) logger.warn("Unknown folder '" + entryLocation.getName() + "'found in decompressed archive folder '" + storedResultsFolder.getAbsolutePath() + "'"); continue; } else if (StringUtils.hasText(archive.getDeletionExpression()) && entryLocation.getName().matches(archive.getDeletionExpression())) continue; InputStream transformationInputStream = null; try { transformationInputStream = new BufferedInputStream(new FileInputStream(entryLocation)); // Now determine the content type and create a reader in case of structured content MediaType entryMediaType = autoDetectParser.getDetector().detect(transformationInputStream, new Metadata()); if (!(entryMediaType.getSubtype().equals("xml") || entryMediaType.getSubtype().endsWith("+xml"))) { logger.warn("Archive entry " + entryLocation.getAbsolutePath() + " contains " + entryMediaType + " data which is unstructured, ignoring"); continue; } } catch (IOException e) { logger.error("Could not close input stream during archive processing", e); if (transformationInputStream != null) transformationInputStream.close(); continue; } // Process it as (semi-)structured content XmlReader transformationReader = new XmlReader(transformationInputStream, true); StringWriter transformationWriter = new StringWriter(); try { transformer.setOutputProperty(OutputKeys.ENCODING, "UTF8"); // Use a SAX reader for entity resolution XMLReader xmlReader = parserFactory.newSAXParser().getXMLReader(); InputSource inputSource = new InputSource(transformationReader); xmlReader.setEntityResolver(transformerCache.getEntityResolver()); inputSource.setSystemId("file://" + transformerCache.getDtdImportPath() + "/template.xsl"); // Perform the actual transformation transformer.setParameter("substituteUrl", archive.getInternalLink()); transformer.transform(new SAXSource(xmlReader, inputSource), new StreamResult(transformationWriter)); } catch (TransformerException e) { logger.error("Unable to perform content transformation for entry " + entryLocation.getAbsolutePath()); continue; } catch (SAXException e) { logger.error("Unable to perform content transformation for entry " + entryLocation.getAbsolutePath()); continue; } catch (ParserConfigurationException e) { logger.error("Unable to perform content transformation for entry " + entryLocation.getAbsolutePath()); continue; } finally { transformationInputStream.close(); transformationReader.close(); } // Create a syndication feed from the given result String resultContent = transformationWriter.toString(); SyndFeed resultFeed = null; try { SyndFeedInput feedInput = new SyndFeedInput(); resultFeed = feedInput.build(new StringReader(resultContent)); } catch (FeedException e) { logger.error("Could not parse the feed resulting from the archive entry transformation"); continue; } finally { transformationWriter.close(); } // Write the <description> content to a separate file and add it as an <enclosure> if (resultFeed.getEntries().size() > 0) { Integer entryNumber = 0; for (SyndEntry feedEntry : (Collection<SyndEntry>) resultFeed.getEntries()) { if (!deletedLinks.contains(feedEntry.getLink())) { String description = feedEntry.getDescription().getValue().trim(); File descriptionLocation = new File(descriptionsFolderLocation, stripExtension(entryLocation.getName()) + "-" + entryNumber++ + (feedEntry.getDescription().getType().equals("text/html") ? ".html" : ".xml")); Writer descriptionWriter = new OutputStreamWriter( new FileOutputStream(descriptionLocation), "UTF-8"); if (!description.endsWith("</html>")) descriptionWriter.write("<html>\n<head>\n\t<title>" + feedEntry.getTitle() + "</title>\n</head>\n<body>\n"); descriptionWriter.write(description); if (!description.endsWith("</html>")) descriptionWriter.write("\n</body>\n</html>"); descriptionWriter.flush(); descriptionWriter.close(); // Remove the link from the processed cache should it already be in there, taking care of updates cacheService.deleteElement(feedEntry.getLink()); // Then offer it up to the handler if (logger.isDebugEnabled()) logger.debug("Adding result content (" + entryNumber + ") for archive entry with path " + entryLocation.getAbsolutePath()); try { // NOTE: The encoding of 'UTF-8' is implied for archive-related files handler.process(new URI(feedEntry.getLink()), archive.getHostname(), feedEntry, resultFeed); } catch (FeedException e) { logger.error(String.format( "Could not offer feed entry with link '%s' - invalid entry", feedEntry.getLink()), e); } catch (URISyntaxException e) { logger.error(String.format( "Could not offer feed entry with link '%s' - invalid link", feedEntry.getLink()), e); } } else logger.info("Skipping over feed entry with link '" + feedEntry.getLink() + "' - marked for deletion"); } } else if (logger.isDebugEnabled()) logger.debug("No entries were found in archive entry with path " + entryLocation.getAbsolutePath()); } logger.info("Finished processing archive with name " + storedResult.getValue()); // Now archive the entry in the cache cacheService.addArchived(storedResult.getValue()); } logger.info("Finishing archive populator thread"); } catch (IOException e) { logger.error("Could not close input stream during archive processing", e); } }
From source file:se.lu.nateko.edca.svc.GeoHelper.java
/** * Parses an XML response from a WFS Transaction (Insert) request and * reports if the response contains a Service Exception. * @param xmlResponse String containing the XML response from a DescribeFeatureType request. *///from w w w . j a v a 2 s. c o m protected boolean parseXMLResponse(InputStream xmlResponse) { Log.d(TAG, "parseXMLResponse(InputStream) called."); mInsertedIDs = new ArrayList<Long>(); try { SAXParserFactory spfactory = SAXParserFactory.newInstance(); // Make a SAXParser factory. spfactory.setValidating(false); // Tell the factory not to make validating parsers. SAXParser saxParser = spfactory.newSAXParser(); // Use the factory to make a SAXParser. XMLReader xmlReader = saxParser.getXMLReader(); // Get an XML reader from the parser, which will send event calls to its specified event handler. XMLEventHandler xmlEventHandler = new XMLEventHandler(); xmlReader.setContentHandler(xmlEventHandler); // Set which event handler to use. xmlReader.setErrorHandler(xmlEventHandler); // Also set where to send error calls. InputSource source = new InputSource(xmlResponse); // Make an InputSource from the XML input to give to the reader. xmlReader.parse(source); // Start parsing the XML. } catch (Exception e) { Log.e(TAG, e.toString()); return false; } return true; }
From source file:com.silverwrist.venice.core.impl.ConferencingImporter.java
final List importMessages(InputStream xmlstm) throws DataException { try { // create a SAX parser and let it loose on the input data with our listener SAXParserFactory fact = SAXParserFactory.newInstance(); fact.setNamespaceAware(false);/*from w w w . j a v a 2 s .com*/ fact.setValidating(false); SAXParser parser = fact.newSAXParser(); parser.parse(xmlstm, new Listener()); } // end try catch (ParserConfigurationException e) { // configuration error throw new DataException("Error configuring XML parser for message import: " + e.getMessage(), e); } // end catch catch (SAXException e) { // give an error message throw new DataException("Error importing messages: " + e.getMessage(), e); } // end catch catch (IOException e) { // I/O error in parsing! throw new DataException("Error importing messages: " + e.getMessage(), e); } // end catch if (m_events == null) return Collections.EMPTY_LIST; ArrayList rc = new ArrayList(m_events); m_events = null; return Collections.unmodifiableList(rc); }
From source file:com.g2inc.scap.library.domain.SCAPContentManager.java
public List<File> getOvalFiles(File dir) { ArrayList<File> ovalFileList = new ArrayList<File>(); // get list of all xml files in dir File[] xmlFiles = dir.listFiles(new FilenameFilter() { @Override/*ww w . ja v a 2 s . co m*/ public boolean accept(File dir, String name) { return name.toLowerCase().endsWith(".xml"); } }); if (xmlFiles != null && xmlFiles.length > 0) { try { SAXParserFactory saxfactory = SAXParserFactory.newInstance(); saxfactory.setValidating(false); saxfactory.setFeature("http://apache.org/xml/features/nonvalidating/load-external-dtd", false); saxfactory.setFeature("http://xml.org/sax/features/validation", false); for (int i = 0; i < xmlFiles.length; i++) { SAXParser saxparser = saxfactory.newSAXParser(); XMLReader xmlReader = saxparser.getXMLReader(); OvalParser ovalParser = new OvalParser(); xmlReader.setContentHandler(ovalParser); FileInputStream inStream = new FileInputStream(xmlFiles[i]); xmlReader.parse(new InputSource(inStream)); if (ovalParser.isOval()) { ovalFileList.add(xmlFiles[i]); } } } catch (Exception e) { throw new IllegalStateException( "Caught an error trying list oval files in directory " + dir.getAbsolutePath(), e); } } return ovalFileList; }
From source file:com.silverpeas.importExport.control.ImportExport.java
/** * Mthode retournant l'arbre des objets mapps sur le fichier xml pass en paramtre. * * @param xmlFileName le fichier xml interprt par Castor * @return Un objet SilverPeasExchangeType contenant le mapping d'un fichier XML Castor * @throws ImportExportException/*from w w w . j av a 2s. c o m*/ */ SilverPeasExchangeType loadSilverpeasExchange(String xmlFileName) throws ImportExportException { SilverTrace.debug("importExport", "ImportExportSessionController.loadSilverpeasExchange", "root.MSG_GEN_ENTER_METHOD", "xmlFileName = " + xmlFileName); try { InputSource xmlInputSource = new InputSource(xmlFileName); String xsdPublicId = settings.getString("xsdPublicId"); String xsdSystemId = settings.getString("xsdDefaultSystemId"); // Load and parse default XML schema for import/export SchemaFactory schemaFactory = SchemaFactory.newInstance("http://www.w3.org/2001/XMLSchema", "com.sun.org.apache.xerces.internal.jaxp.validation.XMLSchemaFactory", null); Schema schema = schemaFactory.newSchema(new StreamSource(xsdSystemId)); // Create an XML parser for loading XML import file SAXParserFactory factory = SAXParserFactory .newInstance("com.sun.org.apache.xerces.internal.jaxp.SAXParserFactoryImpl", null); factory.setValidating(false); factory.setNamespaceAware(true); factory.setSchema(schema); SAXParser parser = factory.newSAXParser(); // First try to determine to load the XML file using the default // XML-Schema ImportExportErrorHandler errorHandler = new ImportExportErrorHandler(); XMLReader xmlReader = parser.getXMLReader(); xmlReader.setErrorHandler(errorHandler); try { xmlReader.parse(xmlInputSource); } catch (SAXException ex) { SilverTrace.debug("importExport", "ImportExportSessionController.loadSilverpeasExchange", "root.MSG_GEN_PARAM_VALUE", (new StringBuilder("XML File ")).append(xmlFileName) .append(" is not valid according to default schema").toString()); // If case the default schema is not the one specified by the // XML import file, try to get the right XML-schema and // namespace (this is done by parsing without validation) ImportExportNamespaceHandler nsHandler = new ImportExportNamespaceHandler(); factory.setSchema(null); parser = factory.newSAXParser(); xmlReader = parser.getXMLReader(); xmlReader.setContentHandler(nsHandler); xmlReader.setFeature("http://xml.org/sax/features/namespace-prefixes", true); xmlReader.parse(xmlInputSource); // If OK, extract the name and location of the schema String nsSpec = nsHandler.getNsSpec(); if (nsSpec == null || xsdPublicId.equals(nsSpec)) { throw ex; } String nsVersion = extractUriNameIndex(nsSpec); if (nsVersion.length() == 0) { throw ex; } String altXsdSystemId = settings.getStringWithParam("xsdSystemId", nsVersion); if ((altXsdSystemId == null) || (altXsdSystemId.equals(xsdSystemId))) { throw ex; } SilverTrace.debug("importExport", "ImportExportSessionController.loadSilverpeasExchange", "root.MSG_GEN_PARAM_VALUE", (new StringBuilder("Trying again using schema specification located at ")) .append(altXsdSystemId).toString()); // Try again to load, parse and validate the XML import file, // using the new schema specification schema = schemaFactory.newSchema(new StreamSource(altXsdSystemId)); factory.setSchema(schema); parser = factory.newSAXParser(); xmlReader = parser.getXMLReader(); xmlReader.setErrorHandler(errorHandler); xmlReader.parse(xmlInputSource); } SilverTrace.debug("importExport", "ImportExportSessionController.loadSilverpeasExchange", "root.MSG_GEN_PARAM_VALUE", "XML Validation complete"); // Mapping file for Castor String mappingDir = settings.getString("mappingDir"); String mappingFileName = settings.getString("importExportMapping"); String mappingFile = mappingDir + mappingFileName; Mapping mapping = new Mapping(); // Load mapping and instantiate a Unmarshaller mapping.loadMapping(mappingFile); Unmarshaller unmar = new Unmarshaller(SilverPeasExchangeType.class); unmar.setMapping(mapping); unmar.setValidation(false); // Unmarshall the process model SilverPeasExchangeType silverpeasExchange = (SilverPeasExchangeType) unmar.unmarshal(xmlInputSource); SilverTrace.debug("importExport", "ImportExportSessionController.loadSilverpeasExchange", "root.MSG_GEN_PARAM_VALUE", "Unmarshalling complete"); return silverpeasExchange; } catch (MappingException me) { throw new ImportExportException("ImportExport.loadSilverpeasExchange", "importExport.EX_LOADING_XML_MAPPING_FAILED", "XML Filename " + xmlFileName + ": " + me.getLocalizedMessage(), me); } catch (MarshalException me) { throw new ImportExportException("ImportExport.loadSilverpeasExchange", "importExport.EX_UNMARSHALLING_FAILED", "XML Filename " + xmlFileName + ": " + me.getLocalizedMessage(), me); } catch (ValidationException ve) { throw new ImportExportException("ImportExport.loadSilverpeasExchange", "importExport.EX_PARSING_FAILED", "XML Filename " + xmlFileName + ": " + ve.getLocalizedMessage(), ve); } catch (IOException ioe) { throw new ImportExportException("ImportExport.loadSilverpeasExchange", "importExport.EX_LOADING_XML_MAPPING_FAILED", "XML Filename " + xmlFileName + ": " + ioe.getLocalizedMessage(), ioe); } catch (ParserConfigurationException ex) { throw new ImportExportException("ImportExport.loadSilverpeasExchange", "importExport.EX_PARSING_FAILED", "XML Filename " + xmlFileName + ": " + ex.getLocalizedMessage(), ex); } catch (SAXNotRecognizedException snre) { throw new ImportExportException("ImportExport.loadSilverpeasExchange", "importExport.EX_PARSING_FAILED", "XML Filename " + xmlFileName + ": " + snre.getLocalizedMessage(), snre); } catch (SAXNotSupportedException snse) { throw new ImportExportException("ImportExport.loadSilverpeasExchange", "importExport.EX_PARSING_FAILED", "XML Filename " + xmlFileName + ": " + snse.getLocalizedMessage(), snse); } catch (SAXException se) { throw new ImportExportException("ImportExport.loadSilverpeasExchange", "importExport.EX_PARSING_FAILED", "XML Filename " + xmlFileName + ": " + se.getLocalizedMessage(), se); } }
From source file:forseti.admon.JAdmCFDDlg.java
@SuppressWarnings({ "rawtypes", "unchecked" }) public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { super.doPost(request, response); String adm_cfdi_dlg = ""; request.setAttribute("adm_cfdi_dlg", adm_cfdi_dlg); String mensaje = ""; short idmensaje = -1; if (request.getContentType() != null && request.getContentType().toLowerCase().indexOf("multipart/form-data") > -1) { if (!getSesion(request).getRegistrado()) { irApag("/forsetiweb/errorAtributos.jsp", request, response); return; } else {// ww w.ja v a 2 s. co m if (!getSesion(request).getPermiso("ADM_CFDI_AGREGAR")) { idmensaje = 3; mensaje += MsjPermisoDenegado(request, "CEF", "ADM_CFDI_AGREGAR"); getSesion(request).setID_Mensaje(idmensaje, mensaje); RDP("CEF", getSesion(request).getConBD(), "NA", getSesion(request).getID_Usuario(), "ADM_CFDI_AGREGAR", "ACFD||||", mensaje); irApag("/forsetiweb/caja_mensajes.jsp", request, response); return; } try { Vector archivos = new Vector(); DiskFileUpload fu = new DiskFileUpload(); List items = fu.parseRequest(request); Iterator iter = items.iterator(); while (iter.hasNext()) { FileItem item = (FileItem) iter.next(); if (!item.isFormField()) archivos.addElement(item); } SubirArchivosCFD(request, response, archivos); return; } catch (FileUploadException e) { e.printStackTrace(); return; } } } if (request.getParameter("proceso") != null && !request.getParameter("proceso").equals("")) { if (request.getParameter("proceso").equals("VERIFICAR_CFD")) { // Verificacion if (!getSesion(request).getPermiso("ADM_CFDI_AGREGAR")) { idmensaje = 3; mensaje += MsjPermisoDenegado(request, "CEF", "ADM_CFDI_AGREGAR"); getSesion(request).setID_Mensaje(idmensaje, mensaje); RDP("CEF", getSesion(request).getConBD(), "NA", getSesion(request).getID_Usuario(), "ADM_CFDI_AGREGAR", "ACFD||||", mensaje); irApag("/forsetiweb/caja_mensajes.jsp", request, response); return; } if (VerificarCertificados(request, response)) AgregarCertificado(request, response); return; } else if (request.getParameter("proceso").equals("CAMBIAR_EMISOR")) { System.out.println(request.getParameter("cfd_regimenfiscal")); // Revisa si tiene permisos if (!getSesion(request).getPermiso("ADM_CFDI_AGREGAR")) { idmensaje = 3; mensaje += MsjPermisoDenegado(request, "CEF", "ADM_CFDI_AGREGAR"); getSesion(request).setID_Mensaje(idmensaje, mensaje); RDP("CEF", getSesion(request).getConBD(), "NA", getSesion(request).getID_Usuario(), "ADM_CFDI_AGREGAR", "ACFD||||", mensaje); irApag("/forsetiweb/caja_mensajes.jsp", request, response); return; } if (request.getParameter("subproceso") != null && request.getParameter("subproceso").equals("ENVIAR")) { // Verificacion if (VerificarParametros(request, response)) { Cambiar(request, response); return; } irApag("/forsetiweb/administracion/adm_cfd_dlg.jsp", request, response); return; } else if (request.getParameter("subproceso") != null && request.getParameter("subproceso").equals("ACTUALIZAR")) { irApag("/forsetiweb/administracion/adm_cfd_dlg.jsp", request, response); return; } else // Como el subproceso no es ENVIAR, abre la ventana del proceso de CAMBIADO para cargar el cambio { getSesion(request).setID_Mensaje(idmensaje, mensaje); irApag("/forsetiweb/administracion/adm_cfd_dlg.jsp", request, response); return; } } else if (request.getParameter("proceso").equals("AGREGAR_CERTIFICADO")) { // Revisa si tiene permisos if (!getSesion(request).getPermiso("ADM_CFDI_AGREGAR")) { idmensaje = 3; mensaje += MsjPermisoDenegado(request, "CEF", "ADM_CFDI_AGREGAR"); getSesion(request).setID_Mensaje(idmensaje, mensaje); RDP("CEF", getSesion(request).getConBD(), "NA", getSesion(request).getID_Usuario(), "ADM_CFDI_AGREGAR", "ACFD||||", mensaje); irApag("/forsetiweb/caja_mensajes.jsp", request, response); return; } Integer subir_archivos = new Integer(2); request.setAttribute("subir_archivos", subir_archivos); getSesion(request).setID_Mensaje(idmensaje, mensaje); irApag("/forsetiweb/subir_archivos.jsp?verif=/servlet/CEFAdmCFDDlg&archivo_1=cer&archivo_2=key&proceso=AGREGAR_CERTIFICADO&subproceso=ENVIAR", request, response); return; } else if (request.getParameter("proceso").equals("AGREGAR_EXPEDITOR")) { // Revisa si tiene permisos if (!getSesion(request).getPermiso("ADM_CFDI_AGREGAR")) { idmensaje = 3; mensaje += MsjPermisoDenegado(request, "CEF", "ADM_CFDI_AGREGAR"); getSesion(request).setID_Mensaje(idmensaje, mensaje); RDP("CEF", getSesion(request).getConBD(), "NA", getSesion(request).getID_Usuario(), "ADM_CFDI_AGREGAR", "ACFD||||", mensaje); irApag("/forsetiweb/caja_mensajes.jsp", request, response); return; } if (request.getParameter("subproceso") != null && request.getParameter("subproceso").equals("ENVIAR")) { // Verificacion if (VerificarParametrosExpRec(request, response)) { AgregarCambiarExpRec(request, response, JForsetiApl.AGREGAR, "EXP"); return; } irApag("/forsetiweb/administracion/adm_cfd_dlg_exprec.jsp", request, response); return; } else if (request.getParameter("subproceso") != null && request.getParameter("subproceso").equals("ACTUALIZAR")) { irApag("/forsetiweb/administracion/adm_cfd_dlg_exprec.jsp", request, response); return; } else // Como el subproceso no es ENVIAR, abre la ventana del proceso de CAMBIADO para cargar el cambio { getSesion(request).setID_Mensaje(idmensaje, mensaje); irApag("/forsetiweb/administracion/adm_cfd_dlg_exprec.jsp", request, response); return; } } else if (request.getParameter("proceso").equals("CAMBIAR_EXPEDITOR")) { // Revisa si tiene permisos if (!getSesion(request).getPermiso("ADM_CFDI_AGREGAR")) { idmensaje = 3; mensaje += MsjPermisoDenegado(request, "CEF", "ADM_CFDI_AGREGAR"); getSesion(request).setID_Mensaje(idmensaje, mensaje); RDP("CEF", getSesion(request).getConBD(), "NA", getSesion(request).getID_Usuario(), "ADM_CFDI_AGREGAR", "ACFD||||", mensaje); irApag("/forsetiweb/caja_mensajes.jsp", request, response); return; } if (request.getParameter("id") != null) { String[] valoresParam = request.getParameterValues("id"); if (valoresParam.length == 1) { if (request.getParameter("subproceso") != null && request.getParameter("subproceso").equals("ENVIAR")) { // Verificacion if (VerificarParametrosExpRec(request, response)) { AgregarCambiarExpRec(request, response, JForsetiApl.CAMBIAR, "EXP"); return; } irApag("/forsetiweb/administracion/adm_cfd_dlg_exprec.jsp", request, response); return; } else if (request.getParameter("subproceso") != null && request.getParameter("subproceso").equals("ACTUALIZAR")) { irApag("/forsetiweb/administracion/adm_cfd_dlg_exprec.jsp", request, response); return; } else // Como el subproceso no es ENVIAR, abre la ventana del proceso de CAMBIADO para cargar el cambio { getSesion(request).setID_Mensaje(idmensaje, mensaje); irApag("/forsetiweb/administracion/adm_cfd_dlg_exprec.jsp", request, response); return; } } else { idmensaje = 1; mensaje += JUtil.Msj("GLB", "VISTA", "GLB", "SELEC-PROC", 2); getSesion(request).setID_Mensaje(idmensaje, mensaje); irApag("/forsetiweb/caja_mensajes.jsp", request, response); return; } } else { idmensaje = 3; mensaje += JUtil.Msj("GLB", "VISTA", "GLB", "SELEC-PROC", 1); getSesion(request).setID_Mensaje(idmensaje, mensaje); irApag("/forsetiweb/caja_mensajes.jsp", request, response); return; } } else if (request.getParameter("proceso").equals("AGREGAR_RECEPTOR")) { // Revisa si tiene permisos if (!getSesion(request).getPermiso("ADM_CFDI_AGREGAR")) { idmensaje = 3; mensaje += MsjPermisoDenegado(request, "CEF", "ADM_CFDI_AGREGAR"); getSesion(request).setID_Mensaje(idmensaje, mensaje); RDP("CEF", getSesion(request).getConBD(), "NA", getSesion(request).getID_Usuario(), "ADM_CFDI_AGREGAR", "ACFD||||", mensaje); irApag("/forsetiweb/caja_mensajes.jsp", request, response); return; } if (request.getParameter("subproceso") != null && request.getParameter("subproceso").equals("ENVIAR")) { // Verificacion if (VerificarParametrosExpRec(request, response)) { AgregarCambiarExpRec(request, response, JForsetiApl.AGREGAR, "REC"); return; } irApag("/forsetiweb/administracion/adm_cfd_dlg_exprec.jsp", request, response); return; } else // Como el subproceso no es ENVIAR, abre la ventana del proceso de CAMBIADO para cargar el cambio { getSesion(request).setID_Mensaje(idmensaje, mensaje); irApag("/forsetiweb/administracion/adm_cfd_dlg_exprec.jsp", request, response); return; } } else if (request.getParameter("proceso").equals("CAMBIAR_RECEPTOR")) { // Revisa si tiene permisos if (!getSesion(request).getPermiso("ADM_CFDI_AGREGAR")) { idmensaje = 3; mensaje += MsjPermisoDenegado(request, "CEF", "ADM_CFDI_AGREGAR"); getSesion(request).setID_Mensaje(idmensaje, mensaje); RDP("CEF", getSesion(request).getConBD(), "NA", getSesion(request).getID_Usuario(), "ADM_CFDI_AGREGAR", "ACFD||||", mensaje); irApag("/forsetiweb/caja_mensajes.jsp", request, response); return; } if (request.getParameter("id") != null) { String[] valoresParam = request.getParameterValues("id"); if (valoresParam.length == 1) { if (request.getParameter("subproceso") != null && request.getParameter("subproceso").equals("ENVIAR")) { // Verificacion if (VerificarParametrosExpRec(request, response)) { AgregarCambiarExpRec(request, response, JForsetiApl.CAMBIAR, "REC"); return; } irApag("/forsetiweb/administracion/adm_cfd_dlg_exprec.jsp", request, response); return; } else // Como el subproceso no es ENVIAR, abre la ventana del proceso de CAMBIADO para cargar el cambio { getSesion(request).setID_Mensaje(idmensaje, mensaje); irApag("/forsetiweb/administracion/adm_cfd_dlg_exprec.jsp", request, response); return; } } else { idmensaje = 1; mensaje += JUtil.Msj("GLB", "VISTA", "GLB", "SELEC-PROC", 2); getSesion(request).setID_Mensaje(idmensaje, mensaje); irApag("/forsetiweb/caja_mensajes.jsp", request, response); return; } } else { idmensaje = 3; mensaje += JUtil.Msj("GLB", "VISTA", "GLB", "SELEC-PROC", 1); getSesion(request).setID_Mensaje(idmensaje, mensaje); irApag("/forsetiweb/caja_mensajes.jsp", request, response); return; } } else if (request.getParameter("proceso").equals("GENERAR_CE")) { // Revisa si tiene permisos if (!getSesion(request).getPermiso("ADM_CFDI_GCEXML")) { idmensaje = 3; mensaje += MsjPermisoDenegado(request, "CEF", "ADM_CFDI_GCEXML"); getSesion(request).setID_Mensaje(idmensaje, mensaje); RDP("CEF", getSesion(request).getConBD(), "NA", getSesion(request).getID_Usuario(), "ADM_CFDI_GCEXML", "ACFD||||", mensaje); irApag("/forsetiweb/caja_mensajes.jsp", request, response); return; } if (request.getParameter("id") != null) { String[] valoresParam = request.getParameterValues("id"); if (valoresParam.length == 1) { if (request.getParameter("subproceso") != null && request.getParameter("subproceso").equals("ENVIAR")) { int ano = Integer.parseInt(JUtil.Elm(request.getParameter("id"), 1)); int mes = Integer.parseInt(JUtil.Elm(request.getParameter("id"), 2)); JAdmPeriodosSet set = new JAdmPeriodosSet(request); set.m_Where = "Ano = '" + ano + "' and Mes = '" + mes + "'"; set.Open(); if (!set.getAbsRow(0).getCerrado()) { idmensaje = 1; mensaje = "PRECAUCION: No se pueden generar los archivos XML de la Contabilidada Electrnica, porque el mes seleccionado no esta cerrado aun."; getSesion(request).setID_Mensaje(idmensaje, mensaje); irApag("/forsetiweb/caja_mensajes.jsp", request, response); return; } GenerarXMLCE(request, response, ano, mes); return; } else { getSesion(request).setID_Mensaje(idmensaje, mensaje); irApag("/forsetiweb/administracion/adm_cfd_dlg_cegen.jsp", request, response); return; } } else { idmensaje = 1; mensaje += JUtil.Msj("GLB", "VISTA", "GLB", "SELEC-PROC", 2); getSesion(request).setID_Mensaje(idmensaje, mensaje); irApag("/forsetiweb/caja_mensajes.jsp", request, response); return; } } else { idmensaje = 3; mensaje += JUtil.Msj("GLB", "VISTA", "GLB", "SELEC-PROC", 1); getSesion(request).setID_Mensaje(idmensaje, mensaje); irApag("/forsetiweb/caja_mensajes.jsp", request, response); return; } } else if (request.getParameter("proceso").equals("CONSULTAR_ST")) { // Revisa si tiene permisos if (!getSesion(request).getPermiso("ADM_CFDI_GCEXML")) { idmensaje = 3; mensaje += MsjPermisoDenegado(request, "CEF", "ADM_CFDI_GCEXML"); getSesion(request).setID_Mensaje(idmensaje, mensaje); RDP("CEF", getSesion(request).getConBD(), "NA", getSesion(request).getID_Usuario(), "ADM_CFDI_GCEXML", "ACFD||||", mensaje); irApag("/forsetiweb/caja_mensajes.jsp", request, response); return; } if (request.getParameter("id") != null) { String[] valoresParam = request.getParameterValues("id"); if (valoresParam.length == 1) { int ano = Integer.parseInt(JUtil.Elm(request.getParameter("id"), 1)); int mes = Integer.parseInt(JUtil.Elm(request.getParameter("id"), 2)); JContCEModuloSet set = new JContCEModuloSet(request, getSesion(request).getSesion("ADM_CFDI").getEspecial()); set.m_Where = "Ano = '" + ano + "' and Mes = '" + mes + "'"; set.Open(); if (set.getAbsRow(0).getGenerado().equals("N")) { idmensaje = 1; mensaje = "PRECAUCION: No se puede consultar el registro de estatus porque no existe el archivo generado en este mes."; getSesion(request).setID_Mensaje(idmensaje, mensaje); irApag("/forsetiweb/caja_mensajes.jsp", request, response); return; } irApag("/forsetiweb/administracion/adm_cfd_dlg_cons.jsp", request, response); return; } else { idmensaje = 1; mensaje += JUtil.Msj("GLB", "VISTA", "GLB", "SELEC-PROC", 2); getSesion(request).setID_Mensaje(idmensaje, mensaje); irApag("/forsetiweb/caja_mensajes.jsp", request, response); return; } } else { idmensaje = 3; mensaje += JUtil.Msj("GLB", "VISTA", "GLB", "SELEC-PROC", 1); getSesion(request).setID_Mensaje(idmensaje, mensaje); irApag("/forsetiweb/caja_mensajes.jsp", request, response); return; } } else if (request.getParameter("proceso").equals("CONSULTAR_ARCHIVOS")) { // Revisa si tiene permisos if (!getSesion(request).getPermiso("ADM_CFDI_GCEXML")) { idmensaje = 3; mensaje += MsjPermisoDenegado(request, "CEF", "ADM_CFDI_GCEXML"); getSesion(request).setID_Mensaje(idmensaje, mensaje); RDP("CEF", getSesion(request).getConBD(), "NA", getSesion(request).getID_Usuario(), "ADM_CFDI_GCEXML", "ACFD||||", mensaje); irApag("/forsetiweb/caja_mensajes.jsp", request, response); return; } if (request.getParameter("id") != null) { String[] valoresParam = request.getParameterValues("id"); if (valoresParam.length == 1) { int ano = Integer.parseInt(JUtil.Elm(request.getParameter("id"), 1)); int mes = Integer.parseInt(JUtil.Elm(request.getParameter("id"), 2)); JContCEModuloSet set = new JContCEModuloSet(request, getSesion(request).getSesion("ADM_CFDI").getEspecial()); set.m_Where = "Ano = '" + ano + "' and Mes = '" + mes + "'"; set.Open(); if (set.getAbsRow(0).getGenerado().equals("N")) { idmensaje = 1; mensaje = "PRECAUCION: No se puede consultar el archivo porque este mes no esta generado aun."; getSesion(request).setID_Mensaje(idmensaje, mensaje); irApag("/forsetiweb/caja_mensajes.jsp", request, response); return; } String nomArchFech; if (mes < 10) nomArchFech = "-" + ano + "-0" + mes; else nomArchFech = "-" + ano + "-" + mes; String nomArch = "/usr/local/forseti/emp/" + getSesion(request).getBDCompania() + "/CE/" + JUtil.getSesion(request).getSesion("ADM_CFDI").getEspecial() + nomArchFech + ".xml"; String salida = ""; File f = new File(nomArch); FileReader fr = null; BufferedReader br = null; try { fr = new FileReader(f); br = new BufferedReader(fr); String s; while ((s = br.readLine()) != null) { salida += s + "\n"; } br.close(); } catch (IOException e1) { salida += e1; } response.setContentType("application/xml"); PrintWriter out = response.getWriter(); out.print(salida); /* String nombres[] = { nomArch + "catalogo" + nomArchFech + ".xml", nomArch + "balanza" + nomArchFech + ".xml", nomArch + "polizas" + nomArchFech + ".xml", nomArch + "CE" + nomArchFech + ".log"}; String destinos[] = { "catalogo" + nomArchFech + ".xml", "balanza" + nomArchFech + ".xml", "polizas" + nomArchFech + ".xml", "CE" + nomArchFech + ".log" }; JBajarArchivo fd = new JBajarArchivo(); fd.doDownloadMultipleFilesInZip(response, getServletConfig().getServletContext(), ("CE" + nomArchFech + ".zip"), nombres, destinos); */ return; } else { idmensaje = 1; mensaje += JUtil.Msj("GLB", "VISTA", "GLB", "SELEC-PROC", 2); getSesion(request).setID_Mensaje(idmensaje, mensaje); irApag("/forsetiweb/caja_mensajes.jsp", request, response); return; } } else { idmensaje = 3; mensaje += JUtil.Msj("GLB", "VISTA", "GLB", "SELEC-PROC", 1); getSesion(request).setID_Mensaje(idmensaje, mensaje); irApag("/forsetiweb/caja_mensajes.jsp", request, response); return; } } else if (request.getParameter("proceso").equals("VALIDAR_ARCHIVOS")) { // Revisa si tiene permisos if (!getSesion(request).getPermiso("ADM_CFDI_GCEXML")) { idmensaje = 3; mensaje += MsjPermisoDenegado(request, "CEF", "ADM_CFDI_GCEXML"); getSesion(request).setID_Mensaje(idmensaje, mensaje); RDP("CEF", getSesion(request).getConBD(), "NA", getSesion(request).getID_Usuario(), "ADM_CFDI_GCEXML", "ACFD||||", mensaje); irApag("/forsetiweb/caja_mensajes.jsp", request, response); return; } if (request.getParameter("id") != null) { String[] valoresParam = request.getParameterValues("id"); if (valoresParam.length == 1) { int ano = Integer.parseInt(JUtil.Elm(request.getParameter("id"), 1)); int mes = Integer.parseInt(JUtil.Elm(request.getParameter("id"), 2)); JContCEModuloSet set = new JContCEModuloSet(request, getSesion(request).getSesion("ADM_CFDI").getEspecial()); set.m_Where = "Ano = '" + ano + "' and Mes = '" + mes + "'"; set.Open(); if (set.getAbsRow(0).getGenerado().equals("N")) { idmensaje = 1; mensaje = "PRECAUCION: No se puede validar el archivo porque este mes no esta generado aun."; getSesion(request).setID_Mensaje(idmensaje, mensaje); irApag("/forsetiweb/caja_mensajes.jsp", request, response); return; } String nomArchFech; if (mes < 10) nomArchFech = "-" + ano + "-0" + mes; else nomArchFech = "-" + ano + "-" + mes; String nomArch = "/usr/local/forseti/emp/" + getSesion(request).getBDCompania() + "/CE/" + JUtil.getSesion(request).getSesion("ADM_CFDI").getEspecial() + nomArchFech + ".xml"; //Validacin String ERROR = "", archivoXML = ""; boolean NAME_SPACE_AWARE = true; boolean VALIDATING = true; String SCHEMA_LANGUAGE = "http://java.sun.com/xml/jaxp/properties/schemaLanguage"; String SCHEMA_LANGUAGE_VAL = "http://www.w3.org/2001/XMLSchema"; String SCHEMA_SOURCE = "http://java.sun.com/xml/jaxp/properties/schemaSource"; String sFichXsd = "/usr/local/forseti/rec/"; if (JUtil.getSesion(request).getSesion("ADM_CFDI").getEspecial().equals("CECAT")) sFichXsd += "CatalogoCuentas_1_1.xsd"; else if (JUtil.getSesion(request).getSesion("ADM_CFDI").getEspecial().equals("CEBAL")) sFichXsd += "BalanzaComprobacion_1_1.xsd"; else sFichXsd += "PolizasPeriodo_1_1.xsd"; try { FileReader file = new FileReader(nomArch); BufferedReader buff = new BufferedReader(file); boolean eof = false; while (!eof) { String line = buff.readLine(); if (line == null) eof = true; else archivoXML += line + "\n"; } InputStream is = new ByteArrayInputStream(archivoXML.getBytes()); Reader xsdReader = new FileReader(sFichXsd); //System.out.println("xmlReader:" + pathxml + "\n" + "xsdReader:" + sFichXsd + "\n" + "xsdReader2:" + sFichXsd2); SAXParserFactory factory = SAXParserFactory.newInstance(); factory.setNamespaceAware(NAME_SPACE_AWARE); factory.setValidating(VALIDATING); SAXParser parser = factory.newSAXParser(); parser.setProperty(SCHEMA_LANGUAGE, SCHEMA_LANGUAGE_VAL); parser.setProperty(SCHEMA_SOURCE, new InputSource(xsdReader)); DefaultHandler handler = new XmlDefaultHandler(); //parser.parse(new InputSource(xmlReader), handler); parser.parse(is, handler); } catch (FactoryConfigurationError e) { e.printStackTrace(); ERROR += "FactoryConfiguration: " + e.getMessage() + "<br>"; } catch (ParserConfigurationException e) { e.printStackTrace(); ERROR += "ParserConfiguration: " + e.getMessage() + "<br>"; } catch (SAXException e) { e.printStackTrace(); ERROR += "SAX: " + e.getMessage() + "<br>"; } catch (IOException e) { e.printStackTrace(); ERROR += "IO: " + e.getMessage() + "<br>"; } if (!ERROR.equals("")) { idmensaje = 3; mensaje = "ERROR: Al verificar sintaxis del XML:" + "<br>" + ERROR; getSesion(request).setID_Mensaje(idmensaje, mensaje); } else { idmensaje = 0; mensaje = "El XML se verific y paso las pruebas de sintaxis"; getSesion(request).setID_Mensaje(idmensaje, mensaje); } irApag("/forsetiweb/caja_mensajes.jsp", request, response); return; } else { idmensaje = 1; mensaje += JUtil.Msj("GLB", "VISTA", "GLB", "SELEC-PROC", 2); getSesion(request).setID_Mensaje(idmensaje, mensaje); irApag("/forsetiweb/caja_mensajes.jsp", request, response); return; } } else { idmensaje = 3; mensaje += JUtil.Msj("GLB", "VISTA", "GLB", "SELEC-PROC", 1); getSesion(request).setID_Mensaje(idmensaje, mensaje); irApag("/forsetiweb/caja_mensajes.jsp", request, response); return; } } else if (request.getParameter("proceso").equals("DESCARGAR_ARCHIVOS")) { // Revisa si tiene permisos if (!getSesion(request).getPermiso("ADM_CFDI_GCEXML")) { idmensaje = 3; mensaje += MsjPermisoDenegado(request, "CEF", "ADM_CFDI_GCEXML"); getSesion(request).setID_Mensaje(idmensaje, mensaje); RDP("CEF", getSesion(request).getConBD(), "NA", getSesion(request).getID_Usuario(), "ADM_CFDI_GCEXML", "ACFD||||", mensaje); irApag("/forsetiweb/caja_mensajes.jsp", request, response); return; } if (request.getParameter("id") != null) { String[] valoresParam = request.getParameterValues("id"); if (valoresParam.length == 1) { int ano = Integer.parseInt(JUtil.Elm(request.getParameter("id"), 1)); int mes = Integer.parseInt(JUtil.Elm(request.getParameter("id"), 2)); JContCEModuloSet set = new JContCEModuloSet(request, getSesion(request).getSesion("ADM_CFDI").getEspecial()); set.m_Where = "Ano = '" + ano + "' and Mes = '" + mes + "'"; set.Open(); if (set.getAbsRow(0).getGenerado().equals("N")) { idmensaje = 1; mensaje = "PRECAUCION: No se puede descargar el archivo porque este mes no esta generado aun."; getSesion(request).setID_Mensaje(idmensaje, mensaje); irApag("/forsetiweb/caja_mensajes.jsp", request, response); return; } String nomArchFech; if (mes < 10) nomArchFech = "-" + ano + "-0" + mes; else nomArchFech = "-" + ano + "-" + mes; SAXBuilder builder = new SAXBuilder(); File xmlFile = new File("/usr/local/forseti/emp/" + getSesion(request).getBDCompania() + "/CE/" + JUtil.getSesion(request).getSesion("ADM_CFDI").getEspecial() + nomArchFech + ".xml"); try { Document document = (Document) builder.build(xmlFile); Element CEGeneral = document.getRootElement(); String nomArchZIP = CEGeneral.getAttributeValue("RFC") + CEGeneral.getAttributeValue("Anio") + CEGeneral.getAttributeValue("Mes"); String destino = CEGeneral.getAttributeValue("RFC") + CEGeneral.getAttributeValue("Anio") + CEGeneral.getAttributeValue("Mes"); if (JUtil.getSesion(request).getSesion("ADM_CFDI").getEspecial().equals("CECAT")) // es de egresos (Compras. Gastos) { nomArchZIP += "CT.zip"; destino += "CT.xml"; } else if (JUtil.getSesion(request).getSesion("ADM_CFDI").getEspecial() .equals("CEBAL")) { nomArchZIP += "B" + CEGeneral.getAttributeValue("TipoEnvio") + ".zip"; destino += "B" + CEGeneral.getAttributeValue("TipoEnvio") + ".xml"; } else { nomArchZIP += "PL.zip"; destino += "PL.xml"; } String nombres[] = { "/usr/local/forseti/emp/" + getSesion(request).getBDCompania() + "/CE/" + JUtil.getSesion(request).getSesion("ADM_CFDI").getEspecial() + nomArchFech + ".xml" }; String destinos[] = { destino }; JBajarArchivo fd = new JBajarArchivo(); fd.doDownloadMultipleFilesInZip(response, getServletConfig().getServletContext(), nomArchZIP, nombres, destinos); return; } catch (JDOMException e) { idmensaje = 1; mensaje = "PRECAUCION: No se puede descargar el archivo porque este mes no esta generado aun."; getSesion(request).setID_Mensaje(idmensaje, mensaje); irApag("/forsetiweb/caja_mensajes.jsp", request, response); return; } } else { idmensaje = 1; mensaje += JUtil.Msj("GLB", "VISTA", "GLB", "SELEC-PROC", 2); getSesion(request).setID_Mensaje(idmensaje, mensaje); irApag("/forsetiweb/caja_mensajes.jsp", request, response); return; } } else { idmensaje = 3; mensaje += JUtil.Msj("GLB", "VISTA", "GLB", "SELEC-PROC", 1); getSesion(request).setID_Mensaje(idmensaje, mensaje); irApag("/forsetiweb/caja_mensajes.jsp", request, response); return; } } else if (request.getParameter("proceso").equals("DESENLAZAR_DOCUMENTO")) { // Revisa si tiene permisos if (!getSesion(request).getPermiso("ADM_CFDI_DESENLAZAR")) { idmensaje = 3; mensaje += MsjPermisoDenegado(request, "CEF", "ADM_CFDI_DESENLAZAR"); getSesion(request).setID_Mensaje(idmensaje, mensaje); RDP("CEF", getSesion(request).getConBD(), "NA", getSesion(request).getID_Usuario(), "ADM_CFDI_DESENLAZAR", "ACFD||||", mensaje); irApag("/forsetiweb/caja_mensajes.jsp", request, response); return; } if (request.getParameter("id") != null) { String[] valoresParam = request.getParameterValues("id"); if (valoresParam.length == 1) { String status = JUtil.getSesion(request).getSesion("ADM_CFDI").getStatus(); if (!status.equals("OTROS")) { JCFDCompViewSet set = new JCFDCompViewSet(request, status); set.m_Where = "ID_CFD = '" + p(request.getParameter("id")) + "'"; set.Open(); if (set.getNumRows() < 1) { idmensaje = 3; mensaje = "ERROR: No se puede desenlazar el registro porque no existe"; getSesion(request).setID_Mensaje(idmensaje, mensaje); irApag("/forsetiweb/caja_mensajes.jsp", request, response); return; } if (set.getAbsRow(0).getFSI_Tipo().equals("ENT")) { idmensaje = 1; mensaje = "PRECAUCION: No se puede desenlazar el documento porque aun no se encuentra enlazado a ningn registro."; getSesion(request).setID_Mensaje(idmensaje, mensaje); irApag("/forsetiweb/caja_mensajes.jsp", request, response); return; } } else { JCFDCompOtrSet set = new JCFDCompOtrSet(request); set.m_Where = "ID_CFD = '" + p(request.getParameter("id")) + "'"; set.Open(); if (set.getAbsRow(0).getFSI_Tipo().equals("ENT")) { idmensaje = 1; mensaje = "PRECAUCION: No se puede desenlazar el documento porque aun no se encuentra enlazado a ningn registro."; getSesion(request).setID_Mensaje(idmensaje, mensaje); irApag("/forsetiweb/caja_mensajes.jsp", request, response); return; } } DesenlazarDocumento(request, response); return; } else { idmensaje = 1; mensaje += JUtil.Msj("GLB", "VISTA", "GLB", "SELEC-PROC", 2); getSesion(request).setID_Mensaje(idmensaje, mensaje); irApag("/forsetiweb/caja_mensajes.jsp", request, response); return; } } else { idmensaje = 3; mensaje += JUtil.Msj("GLB", "VISTA", "GLB", "SELEC-PROC", 1); getSesion(request).setID_Mensaje(idmensaje, mensaje); irApag("/forsetiweb/caja_mensajes.jsp", request, response); return; } } else if (request.getParameter("proceso").equals("ELIMINAR_DOCUMENTO")) { // Revisa si tiene permisos if (!getSesion(request).getPermiso("ADM_CFDI_CARGAR")) { idmensaje = 3; mensaje += MsjPermisoDenegado(request, "CEF", "ADM_CFDI_CARGAR"); getSesion(request).setID_Mensaje(idmensaje, mensaje); RDP("CEF", getSesion(request).getConBD(), "NA", getSesion(request).getID_Usuario(), "ADM_CFDI_CARGAR", "ACFD||||", mensaje); irApag("/forsetiweb/caja_mensajes.jsp", request, response); return; } if (request.getParameter("id") != null) { String[] valoresParam = request.getParameterValues("id"); if (valoresParam.length == 1) { String status = JUtil.getSesion(request).getSesion("ADM_CFDI").getStatus(); if (!status.equals("OTROS")) { JCFDCompViewSet set = new JCFDCompViewSet(request, status); set.m_Where = "ID_CFD = '" + p(request.getParameter("id")) + "'"; set.Open(); if (set.getNumRows() < 1) { idmensaje = 3; mensaje = "ERROR: No se puede eliminar el registro porque no existe"; getSesion(request).setID_Mensaje(idmensaje, mensaje); irApag("/forsetiweb/caja_mensajes.jsp", request, response); return; } if (!set.getAbsRow(0).getFSI_Tipo().equals("ENT")) { idmensaje = 1; mensaje = "PRECAUCION: No se puede eliminar el documento porque ya se encuentra enlazado a un registro."; getSesion(request).setID_Mensaje(idmensaje, mensaje); irApag("/forsetiweb/caja_mensajes.jsp", request, response); return; } } else { JCFDCompOtrSet set = new JCFDCompOtrSet(request); set.m_Where = "ID_CFD = '" + p(request.getParameter("id")) + "'"; set.Open(); if (!set.getAbsRow(0).getFSI_Tipo().equals("ENT")) { idmensaje = 1; mensaje = "PRECAUCION: No se puede eliminar el documento porque ya se encuentra enlazado a un registro."; getSesion(request).setID_Mensaje(idmensaje, mensaje); irApag("/forsetiweb/caja_mensajes.jsp", request, response); return; } } EliminarDocumento(request, response); return; } else { idmensaje = 1; mensaje += JUtil.Msj("GLB", "VISTA", "GLB", "SELEC-PROC", 2); getSesion(request).setID_Mensaje(idmensaje, mensaje); irApag("/forsetiweb/caja_mensajes.jsp", request, response); return; } } else { idmensaje = 3; mensaje += JUtil.Msj("GLB", "VISTA", "GLB", "SELEC-PROC", 1); getSesion(request).setID_Mensaje(idmensaje, mensaje); irApag("/forsetiweb/caja_mensajes.jsp", request, response); return; } } else // si no se mandan parametros, manda a error { idmensaje = 3; mensaje += JUtil.Msj("GLB", "VISTA", "GLB", "SELEC-PROC", 3); getSesion(request).setID_Mensaje(idmensaje, mensaje); irApag("/forsetiweb/caja_mensajes.jsp", request, response); return; } } else { idmensaje = 3; mensaje += JUtil.Msj("GLB", "VISTA", "GLB", "SELEC-PROC", 3); getSesion(request).setID_Mensaje(idmensaje, mensaje); irApag("/forsetiweb/caja_mensajes.jsp", request, response); return; } }
From source file:nl.coinsweb.sdk.FileManager.java
public static String getXmlBaseOrxmlns(File xmlFile) { final ArrayList<String> baseUriDropHere = new ArrayList<>(); final ArrayList<String> xmlnsDropHere = new ArrayList<>(); DefaultHandler handler = new DefaultHandler() { @Override//from ww w .j a v a 2 s. c o m public void startElement(String uri, String localName, String qName, Attributes attributes) throws SAXException { if ("rdf:RDF".equals(qName)) { for (int i = 0; i < attributes.getLength(); i++) { if ("xml:base".equals(attributes.getQName(i))) { baseUriDropHere.add(attributes.getValue(i)); } if ("xmlns".equals(attributes.getQName(i))) { xmlnsDropHere.add(attributes.getValue(i)); } } return; } } }; try { SAXParserFactory factory = SAXParserFactory.newInstance(); factory.setValidating(false); SAXParser parser = factory.newSAXParser(); parser.parse(xmlFile, handler); } catch (ParserConfigurationException e) { // do not print this, this is supposed to crash for non-xml files } catch (SAXException e) { // do not print this, this is supposed to crash for non-xml files } catch (IOException e) { log.error("problem reading xml file", e); } if (baseUriDropHere.isEmpty()) { if (xmlnsDropHere.isEmpty()) { return null; } else { return xmlnsDropHere.get(0); } } else { return baseUriDropHere.get(0); } }
From source file:nl.nn.adapterframework.validation.JavaxXmlValidator.java
@Override public XMLReader createValidatingParser(IPipeLineSession session, ValidationContext context) throws XmlValidatorException, PipeRunException { SAXParser parser;//from w w w . j a va 2 s . co m try { SAXParserFactory parserFactory = SAXParserFactory.newInstance(); parserFactory.setValidating(false); parserFactory.setNamespaceAware(true); parserFactory.setFeature(PARSING_FEATURE_SECURE, true); //parserFactory.setFeature(PARSING_FEATURE_EXTERNAL_GENERAL_ENTITIES, false); //parserFactory.setFeature(PARSING_FEATURE_EXTERNAL_PARAMETER_ENTITIES, false); //parserFactory.setFeature(PARSING_FEATURE_DISALLOW_INLINE_DOCTYPE, true); Schema schema = getSchemaObject(context.getSchemasId(), schemasProvider.getSchemas(session)); parserFactory.setSchema(schema); parser = parserFactory.newSAXParser(); return parser.getXMLReader(); } catch (ParserConfigurationException e) { throw new XmlValidatorException(logPrefix + "cannot configure parser", e); } catch (ConfigurationException e) { throw new XmlValidatorException(logPrefix + "cannot configure parser", e); } catch (SAXException e) { throw new XmlValidatorException(logPrefix + "cannot create parser", e); } }
From source file:org.apache.fop.accessibility.AccessibilityPreprocessor.java
/** {@inheritDoc} */ public void endDocument() throws SAXException { super.endDocument(); // do the second transform to struct try {//www.jav a 2 s . c om //TODO this must be optimized, no buffering (ex. SAX-based tee-proxy) byte[] enrichedFO = enrichedFOBuffer.toByteArray(); Source src = new StreamSource(new ByteArrayInputStream(enrichedFO)); DOMResult res = new DOMResult(); reduceFOTree.transform(src, res); StructureTree structureTree = new StructureTree(); NodeList pageSequences = res.getNode().getFirstChild().getChildNodes(); for (int i = 0; i < pageSequences.getLength(); i++) { structureTree.addPageSequenceStructure(pageSequences.item(i).getChildNodes()); } userAgent.setStructureTree(structureTree); SAXParserFactory saxParserFactory = SAXParserFactory.newInstance(); saxParserFactory.setNamespaceAware(true); saxParserFactory.setValidating(false); SAXParser saxParser = saxParserFactory.newSAXParser(); InputStream in = new ByteArrayInputStream(enrichedFO); saxParser.parse(in, fopHandler); } catch (Exception e) { throw new SAXException(e); } }