Я использовал jdom для проверки xml по схеме. Основная проблема в том, что выдает ошибку
FWK005 синтаксический анализ не может быть вызван при синтаксическом анализе
Основная причина заключалась в том, что несколько потоков работали для проверки Xerces одновременно. Итак, я получил решение, которое я должен заблокировать эту проверку. что не хорошо
Итак, я хочу знать, какой валидатор xml отлично работает для многопоточного проекта
public static HashMap<String, String> validate(String xmlString, Validator validator) {
HashMap<String, String> map = new HashMap<String, String>();
long t1 = System.currentTimeMillis();
DocumentBuilder builder = null;
try {
//obtain lock to proceed
// lock.lock();
try {
builder = DocumentBuilderFactory.newInstance().newDocumentBuilder();
// Source source = new DOMSource(builder.parse(new ByteArrayInputStream(xmlString.getBytes())));
validator.validate(new StreamSource(new StringReader(xmlString)));
map.put("ISVALID", "TRUE");
logger.info("We have successfuly validated the schema");
} catch (Exception ioe) {
ioe.printStackTrace();
logger.error("NOT2 VALID STRING IS :" + xmlString);
map.put("MSG", ioe.getMessage());
// logger.error("IOException while validating the input XML", ioe);
}
logger.info(map);
long t2 = System.currentTimeMillis();
logger.info("XML VALIDATION TOOK:::" + (t2 - t1));
} catch (Exception e) {
logger.error(e);
} finally {
//release lock
// lock.unlock();
builder = null;
}
return map;
}
Спасибо
Сунил Кумар Саху