Example usage for org.xml.sax SAXParseException getPublicId

List of usage examples for org.xml.sax SAXParseException getPublicId

Introduction

In this page you can find the example usage for org.xml.sax SAXParseException getPublicId.

Prototype

public String getPublicId() 

Source Link

Document

Get the public identifier of the entity where the exception occurred.

Usage

From source file:Main.java

/**
 * Builds a prettier exception message.//from www  . j  av a2  s.c om
 *
 * @param ex the SAXParseException
 * @return an easier to read exception message
 */
public static String getPrettyParseExceptionInfo(SAXParseException ex) {

    final StringBuilder sb = new StringBuilder();

    if (ex.getSystemId() != null) {
        sb.append("systemId=").append(ex.getSystemId()).append(", ");
    }
    if (ex.getPublicId() != null) {
        sb.append("publicId=").append(ex.getPublicId()).append(", ");
    }
    if (ex.getLineNumber() > 0) {
        sb.append("Line=").append(ex.getLineNumber());
    }
    if (ex.getColumnNumber() > 0) {
        sb.append(", Column=").append(ex.getColumnNumber());
    }
    sb.append(": ").append(ex.getMessage());

    return sb.toString();
}

From source file:Main.java

private void printInfo(SAXParseException e) {
    System.out.println("   Public ID: " + e.getPublicId());
    System.out.println("   System ID: " + e.getSystemId());
    System.out.println("   Line number: " + e.getLineNumber());
    System.out.println("   Column number: " + e.getColumnNumber());
    System.out.println("   Message: " + e.getMessage());
}

From source file:javasnack.snacks.xml.sax2.DebugPrinter.java

void saxerr(String level, SAXParseException e) {
    oops("%s : SAXParserException(line:%d, column:%d, publicId:%s, systemId:%s)", level, e.getLineNumber(),
            e.getColumnNumber(), e.getPublicId(), e.getSystemId());
    oops(e.toString());/* w  w  w  . ja  v  a2 s  .co m*/
    oops("...continue");
}

From source file:org.openmrs.module.sync.SyncUtil.java

public static Collection<SyncItem> getSyncItemsFromPayload(String payload) throws HibernateException {
    Collection<SyncItem> items = null;
    Package pkg = new Package();
    try {/*from  w w w. ja  v  a2  s  .co m*/
        Record record = pkg.createRecordFromString(payload);
        Item root = record.getRootItem();
        List<Item> itemsToDeSerialize = record.getItems(root);
        if (itemsToDeSerialize != null && itemsToDeSerialize.size() > 0) {
            items = new LinkedList<SyncItem>();
            for (Item i : itemsToDeSerialize) {
                SyncItem syncItem = new SyncItem();
                syncItem.load(record, i);
                items.add(syncItem);
            }
        }
    } catch (SAXParseException e) {
        log.error("Error processing XML at column " + e.getColumnNumber() + ", and line number "
                + e.getLineNumber() + "; public ID of entity causing error: " + e.getPublicId()
                + "; system id of entity causing error: " + e.getSystemId() + "; contents: "
                + payload.toString());
        throw new HibernateException("Error processing XML while deserializing object from storage", e);
    } catch (Exception e) {
        log.error("Could not deserialize object from storage", e);
        throw new HibernateException("Could not deserialize object from storage", e);
    }
    return items;
}

From source file:net.sourceforge.fullsync.fs.connection.SyncFileBufferedConnection.java

protected void loadFromBuffer() throws IOException {
    File fsRoot = fs.getRoot();/*from   w w w .  j  a v a2s.c o m*/
    File f = fsRoot.getChild(BUFFER_FILENAME);

    root = new AbstractBufferedFile(this, fsRoot, null, true, true);
    if ((null == f) || !f.exists() || f.isDirectory()) {
        if (isMonitoringFileSystem()) {
            updateFromFileSystem(root);
        }
        return;
    }
    ByteArrayOutputStream out = new ByteArrayOutputStream((int) f.getSize());
    try (InputStream in = new GZIPInputStream(f.getInputStream())) {
        int i;
        byte[] block = new byte[4096];
        while ((i = in.read(block)) > 0) {
            out.write(block, 0, i);
        }
    }
    try {
        SAXParser sax = SAXParserFactory.newInstance().newSAXParser();
        sax.parse(new ByteArrayInputStream(out.toByteArray()), new SyncFileDefaultHandler(this));
    } catch (SAXParseException spe) {
        StringBuilder sb = new StringBuilder(spe.toString());
        sb.append("\n Line number: " + spe.getLineNumber()); //$NON-NLS-1$
        sb.append("\n Column number: " + spe.getColumnNumber()); //$NON-NLS-1$
        sb.append("\n Public ID: " + spe.getPublicId()); //$NON-NLS-1$
        sb.append("\n System ID: " + spe.getSystemId() + "\n"); //$NON-NLS-1$ //$NON-NLS-2$
        System.err.println(sb.toString());
    } catch (IOException | SAXException | ParserConfigurationException | FactoryConfigurationError e) {
        ExceptionHandler.reportException(e);
    }

    if (isMonitoringFileSystem()) {
        updateFromFileSystem(root);
    }
}

From source file:org.apache.uima.ruta.resource.TreeWordList.java

public void readXML(InputStream stream, String encoding) throws IOException {
    try {/*www  .  j  ava  2  s.  co m*/
        InputStream is = new BufferedInputStream(stream); // adds mark/reset support
        boolean isXml = MultiTreeWordListPersistence.isSniffedXmlContentType(is);
        if (!isXml) { // MTWL is encoded
            is = new ZipInputStream(is);
            ((ZipInputStream) is).getNextEntry(); // zip must contain a single entry
        }
        InputStreamReader streamReader = new InputStreamReader(is, encoding);
        this.root = new TextNode();
        XMLEventHandler handler = new XMLEventHandler(root);
        SAXParserFactory factory = SAXParserFactory.newInstance();
        SAXParser parser = factory.newSAXParser();
        XMLReader reader = parser.getXMLReader();
        // XMLReader reader = XMLReaderFactory.createXMLReader();
        reader.setContentHandler(handler);
        reader.setErrorHandler(handler);
        reader.parse(new InputSource(streamReader));
    } catch (SAXParseException spe) {
        StringBuffer sb = new StringBuffer(spe.toString());
        sb.append("\n  Line number: " + spe.getLineNumber());
        sb.append("\n Column number: " + spe.getColumnNumber());
        sb.append("\n Public ID: " + spe.getPublicId());
        sb.append("\n System ID: " + spe.getSystemId() + "\n");
        System.out.println(sb.toString());
    } catch (SAXException se) {
        System.out.println("loadDOM threw " + se);
        se.printStackTrace(System.out);
    } catch (ParserConfigurationException e) {
        e.printStackTrace();
    }
}

From source file:com.cablelabs.sim.PCSim2.java

/**
 * This method determines whether the global presence server needs to be started
 * /* w ww . j av  a2 s . c om*/
 */
private boolean configPresenceServer() {
    presenceServerEnabled = SystemSettings.getBooleanSetting("Presence Server");
    if (presenceServerEnabled) {
        Properties platform = SystemSettings.getSettings(SettingConstants.PLATFORM);
        String psName = platform.getProperty(SettingConstants.PRESENCE_SERVER_FSM);
        if (presenceServerFile == null) {
            presenceServerFile = psName;
        } else if (presenceServerFile.equals(psName)) {
            return true;
        } else {
            if (stacks != null)
                stacks.shutdownPresenceServer();
            presenceServerFile = psName;
        }
        if (presenceServerFile != null) {
            File ps = new File(presenceServerFile);
            if (ps != null && ps.exists() && ps.canRead() && ps.isFile()) {
                TSParser tsp = new TSParser(false);
                try {
                    logger.info(PC2LogCategory.Parser, subCat,
                            "Parsing document " + presenceServerFile + " for PresenceServer processing.");
                    TSDocument psDoc = tsp.parse(presenceServerFile);
                    LinkedList<FSM> fsms = psDoc.getFsms();
                    if (fsms.size() == 1) {
                        FSM f = fsms.getFirst();
                        if (f.getModel() instanceof PresenceModel) {
                            PresenceModel model = (PresenceModel) f.getModel();
                            // Initialize the settings that can be overwritten from
                            // within the document 
                            setExtensions(fsms);
                            PresenceServer server = PresenceServer.getInstance(f, model.getElements());
                            if (server != null) {
                                Stacks.setPresenceServer(server);
                                server.init();
                                return true;
                            }
                        }

                    }
                } catch (PC2XMLException pe) {
                    String err = "\n** Parsing error in file \n    " + pe.getFileName() + " at line "
                            + pe.getLineNumber();
                    if (pe.getSystemId() != null) {
                        err += ", uri " + pe.getSystemId();
                    }
                    if (pe.getPublicId() != null) {
                        err += ", public " + pe.getPublicId();
                    }
                    err += "\n";

                    logger.fatal(PC2LogCategory.Parser, subCat, err, pe);
                } catch (SAXParseException spe) {
                    String err = "\n** Parsing error in file \n    " + presenceServerFile + " at line "
                            + spe.getLineNumber();
                    if (spe.getSystemId() != null) {
                        err += ", uri " + spe.getSystemId();
                    }
                    if (spe.getPublicId() != null) {
                        err += ", public " + spe.getPublicId();
                    }
                    err += "\n";

                    logger.fatal(PC2LogCategory.Parser, subCat, err, spe);
                } catch (Exception e) {
                    e.printStackTrace();
                }
            } else {
                //               if (ps == null) {
                //                  logger.fatal(PC2LogCategory.Parser, subCat,
                //                        "The platform configuration file doesn't appear to have a " 
                //                        + "value for the \"Presence Server FSM\" setting.");
                //               }
                if (!ps.exists()) {
                    logger.fatal(PC2LogCategory.Parser, subCat, "The \"Presence Server FSM\" setting=[" + ps
                            + "] doesn't appear to define a valid path or file name.");
                }
                if (!ps.canRead()) {
                    logger.fatal(PC2LogCategory.Parser, subCat,
                            "The \"Presence Server FSM\" setting=[" + ps + "] can not be read by the system.");
                }
                if (!ps.isFile()) {
                    logger.fatal(PC2LogCategory.Parser, subCat, "The \"Presence Server FSM\" setting=[" + ps
                            + "] doesn't appear to define a file.");
                }
            }
        }
    }
    return false;
}

From source file:com.cablelabs.sim.PCSim2.java

/**
 * This method determines whether the global registration needs to be started
 * /*ww w . j  a  v a  2  s .  c  om*/
 */
private boolean configGlobalRegistrar() {
    globalRegEnabled = SystemSettings.getBooleanSetting("Global Registrar");
    if (globalRegEnabled) {
        Properties platform = SystemSettings.getSettings(SettingConstants.PLATFORM);
        String grName = platform.getProperty(SettingConstants.GLOBAL_REGISTRAR_FSM);
        if (globalRegFile == null) {
            globalRegFile = grName;
        } else if (globalRegFile.equals(grName)) {
            return true;
        } else {
            if (stacks != null)
                stacks.shutdownGlobalRegistrars();
            globalRegFile = grName;
        }
        if (globalRegFile != null) {
            File gr = new File(globalRegFile);
            if (gr != null && gr.exists() && gr.canRead() && gr.isFile()) {
                TSParser tsp = new TSParser(false);
                try {
                    logger.info(PC2LogCategory.Parser, subCat,
                            "Parsing document " + globalRegFile + " for GlobalRegistrar processing.");
                    TSDocument grDoc = tsp.parse(globalRegFile);
                    LinkedList<FSM> fsms = grDoc.getFsms();
                    if (fsms.size() == 1) {
                        // Initialize the settings that can be overwritten from
                        // within the document 
                        setExtensions(fsms);
                        FSM grFsm = fsms.getFirst();
                        String transport = grFsm.getModel().getProperty(SettingConstants.TRANSPORT_PROTOCOL);
                        Transport t = Transport.UDP;
                        if (transport != null) {
                            if (transport.equals(Transport.UDP.toString()))
                                t = Transport.UDP;
                            else if (transport.equals(Transport.TCP.toString()))
                                t = Transport.TCP;
                            else if (transport.equals(Transport.TLS.toString()))
                                t = Transport.TLS;
                        } else {
                            if (platform != null) {
                                transport = platform.getProperty(SettingConstants.SIP_DEF_TRANPORT_PROTOCOL);
                                if (transport != null) {
                                    if (transport.equals(Transport.UDP.toString()))
                                        t = Transport.UDP;
                                    else if (transport.equals(Transport.TCP.toString()))
                                        t = Transport.TCP;
                                    else if (transport.equals(Transport.TLS.toString()))
                                        t = Transport.TLS;
                                }
                            }
                        }
                        GlobalRegistrar.setMasterFSM(grFsm, t);

                        return true;

                    }
                } catch (PC2XMLException pe) {
                    String err = "\n** Parsing error in file \n    " + pe.getFileName() + " at line "
                            + pe.getLineNumber();
                    if (pe.getSystemId() != null) {
                        err += ", uri " + pe.getSystemId();
                    }
                    if (pe.getPublicId() != null) {
                        err += ", public " + pe.getPublicId();
                    }
                    err += "\n";

                    logger.fatal(PC2LogCategory.Parser, subCat, err, pe);
                } catch (SAXParseException spe) {
                    String err = "\n** Parsing error in file \n    " + globalRegFile + " at line "
                            + spe.getLineNumber();
                    if (spe.getSystemId() != null) {
                        err += ", uri " + spe.getSystemId();
                    }
                    if (spe.getPublicId() != null) {
                        err += ", public " + spe.getPublicId();
                    }
                    err += "\n";

                    logger.fatal(PC2LogCategory.Parser, subCat, err, spe);
                } catch (Exception e) {
                    e.printStackTrace();
                }
            } else {
                //               if (gr == null) {
                //                  logger.fatal(PC2LogCategory.Parser, subCat,
                //                        "The platform configuration file doesn't appear to have a " 
                //                        + "value for the \"Global Registrar FSM\" setting.");
                //               }
                if (!gr.exists()) {
                    logger.fatal(PC2LogCategory.Parser, subCat, "The \"Global Registrar FSM\" setting=[" + gr
                            + "] doesn't appear to define a valid path or file name.");
                }
                if (!gr.canRead()) {
                    logger.fatal(PC2LogCategory.Parser, subCat,
                            "The \"Global Registrar FSM\" setting=[" + gr + "] can not be read by the system.");
                }
                if (!gr.isFile()) {
                    logger.fatal(PC2LogCategory.Parser, subCat, "The \"Global Registrar FSM\" setting=[" + gr
                            + "] doesn't appear to define a file.");
                }
            }

        }
    }
    return false;
}

From source file:com.cablelabs.sim.PCSim2.java

/**
 * Parses the XML Document passed into the application.
 * /*from w w  w .  j av  a2s .co  m*/
 * @param args - the fully-qualified name of the test
 *          script document.
 * @return - true if the document parsed successfully, 
 *          false otherwise.
 */
protected boolean parseAndStart() {
    //String ts = testScriptFiles.getFirst(); 
    File f = new File(activeTestScriptFile);
    if (f != null) {
        logger.info(PC2LogCategory.Parser, subCat, "Using input document " + activeTestScriptFile);

        TSParser tsp = new TSParser(true);
        try {
            doc = tsp.parse(activeTestScriptFile);
            logPackage();
            logger.info(PC2LogCategory.Parser, subCat,
                    "Using input document " + activeTestScriptFile + " v." + doc.getVersion());

            Stacks.logStackSocketInformation();
            ss.setDynamicPlatformSettings(doc.getProperties());
            ss.logSettings();

            // Now see if we are running a test for an UE and if so
            // See if we should auto provision the device?
            ProvisioningData pd = autoProvision(doc.getName());
            if (pd != null) {
                String macAddr = autoGenerate(pd);
                if (macAddr != null) {
                    // doc.setAutoProv(pd);
                    logger.info(PC2LogCategory.PCSim2, subCat,
                            "Updating the global registrar's that the DUT is rebooting");

                    ProvListener pl = new ProvListener(pd);
                    if (pl != null) {
                        logger.debug(PC2LogCategory.PCSim2, subCat,
                                "Starting the provisioning listener operation.");
                        autoProvisioned = pl.run();
                        if (!autoProvisioned) {
                            logger.error(PC2LogCategory.PCSim2, subCat,
                                    "Auto provisioning did not occur as expected, test is terminating.");
                            provDB.clearIssuedData(macAddr);
                            return false;
                        } else {
                            Properties dut = SystemSettings.getSettings(SettingConstants.DUT);
                            String pui = dut.getProperty(SettingConstants.PUI);
                            if (pui != null)
                                Stacks.generateAutoRebootEvent(pui);
                            String pui2 = dut.getProperty(SettingConstants.PUI2);
                            if (pui2 != null)
                                Stacks.generateAutoRebootEvent(pui2);
                            logger.info(PC2LogCategory.PCSim2, subCat,
                                    "Test execution pausing while resetting the DUT.");
                            Thread.sleep(5000);
                            logger.info(PC2LogCategory.PCSim2, subCat, "Pause complete.");
                        }
                    }
                } else {
                    logger.info(PC2LogCategory.PCSim2, subCat,
                            "Auto generate didn't return an updated data file for provisioning.");
                }
            } else {
                logger.info(PC2LogCategory.PCSim2, subCat,
                        "Auto provisioning did not return a data file for the device.");
            }

            LinkedList<FSM> fsms = doc.getFsms();
            // Initialize the settings that can be overwritten from
            // within the document 
            setExtensions(fsms);
            if (doc.getInspector())
                ss.enableInspector();

            for (int i = 0; i < fsms.size(); i++) {
                FSM fsm = fsms.get(i);
                PC2Models testModel = null;
                String modelName = fsm.getModel().getName();
                if (modelName.equalsIgnoreCase("session")) {
                    testModel = new Session(fsm);
                    if (testModel != null)
                        testModel.init();
                    try {
                        fsm.getNetworkElements().certify();
                    } catch (PC2Exception e) {

                    }
                } else if (modelName.equalsIgnoreCase(MsgRef.STUN_MSG_TYPE)) {
                    testModel = new Stun(fsm);
                    if (testModel != null)
                        testModel.init();
                    //if (!fsm.getNetworkElements().certify())
                    //   return false;
                } else if (modelName.equalsIgnoreCase("registrar")) {
                    Properties dut = SystemSettings.getSettings("DUT");
                    String pui = dut.getProperty(SettingConstants.PUI);
                    Properties platform = SystemSettings.getSettings(SettingConstants.PLATFORM);
                    String destIP = platform.getProperty(SettingConstants.IP);
                    if (pui != null) {
                        testModel = new Registrar(fsm, pui, destIP);
                        if (testModel != null)
                            testModel.init();
                        try {
                            fsm.getNetworkElements().certify();
                        } catch (PC2Exception e) {

                        }
                    } else
                        return false;
                }
                if (modelName.equalsIgnoreCase("register")) {
                    testModel = new Register(fsm);
                    if (testModel != null)
                        testModel.init();
                    try {
                        fsm.getNetworkElements().certify();
                    } catch (PC2Exception e) {

                    }
                }

                if (testModel != null) {
                    testModel.start();
                    activeModels.add(testModel);
                }
            }
            return true;
        } catch (PC2XMLException pe) {
            String err = "\n** Parsing error in file \n    " + pe.getFileName() + " at line "
                    + pe.getLineNumber();
            if (pe.getSystemId() != null) {
                err += ", uri " + pe.getSystemId();
            }
            if (pe.getPublicId() != null) {
                err += ", public " + pe.getPublicId();
            }
            err += "\n";

            logger.fatal(PC2LogCategory.Parser, subCat, err, pe);
        } catch (SAXParseException spe) {
            String err = "\n** Parsing error in file \n    " + activeTestScriptFile + " at line "
                    + spe.getLineNumber();
            if (spe.getSystemId() != null) {
                err += ", uri " + spe.getSystemId();
            }
            if (spe.getPublicId() != null) {
                err += ", public " + spe.getPublicId();
            }
            err += "\n";

            logger.fatal(PC2LogCategory.Parser, subCat, err, spe);
        } catch (Exception e) {
            e.printStackTrace();
        }
    }

    return false;
}

From source file:org.exist.validation.ValidationReport.java

private ValidationReportItem createValidationReportItem(int type, SAXParseException exception) {

    final ValidationReportItem vri = new ValidationReportItem();
    vri.setType(type);//from  ww  w.j  a  va 2s .c o  m
    vri.setLineNumber(exception.getLineNumber());
    vri.setColumnNumber(exception.getColumnNumber());
    vri.setMessage(exception.getMessage());
    vri.setPublicId(exception.getPublicId());
    vri.setSystemId(exception.getSystemId());
    return vri;
}