use of net.n3.nanoxml.IXMLParser in project jwt by emweb.
the class WXmlLocalizedStrings method readXmlResource.
private void readXmlResource(String bundleName) {
WApplication app = WApplication.getInstance();
InputStream stream = null;
for (String path : StringUtils.expandLocales(bundleName, app.getLocale().toString())) {
try {
stream = FileUtils.getResourceAsStream(path + ".xml");
} catch (IOException e) {
}
if (stream != null)
break;
}
if (stream == null) {
logger.warn("Could not find resource \"" + bundleName + "\"");
return;
}
try {
XmlMessageParser xmlParser = new XmlMessageParser();
IXMLParser parser = XMLParserFactory.createDefaultXMLParser();
parser.setBuilder(xmlParser);
parser.setResolver(xmlParser);
IXMLReader reader = new StdXMLReader(stream);
parser.setReader(reader);
parser.parse();
keyValues.putAll(xmlParser.getKeyValues());
} catch (ClassNotFoundException e) {
e.printStackTrace();
} catch (InstantiationException e) {
e.printStackTrace();
} catch (IllegalAccessException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
} catch (XMLException e) {
e.printStackTrace();
}
}
use of net.n3.nanoxml.IXMLParser in project jwt by emweb.
the class WStdLocalizedStrings method checkForValidXml.
private static LocalizedString checkForValidXml(LocalizedString s) {
/* FIXME, we should do this only once for every key ... */
if (s.format != TextFormat.Plain) {
try {
IXMLParser parser = XMLParserFactory.createDefaultXMLParser();
IXMLReader reader = StdXMLReader.stringReader("<span>" + s.value + "</span>");
parser.setReader(reader);
parser.parse();
return s;
} catch (Exception e) {
throw new RuntimeException("WStdLocalizedStrings: no valid xml: \"" + s.value + "\"");
}
} else
return s;
}
use of net.n3.nanoxml.IXMLParser in project jwt by emweb.
the class XSSFilter method removeScript.
static boolean removeScript(CharSequence text) {
try {
WString wText = WString.toWString(text);
XSSFilter filter = new XSSFilter();
IXMLParser parser = XMLParserFactory.createDefaultXMLParser();
parser.setBuilder(filter);
parser.setResolver(filter);
IXMLReader reader = StdXMLReader.stringReader("<span>" + wText.getValue() + "</span>");
parser.setReader(reader);
parser.parse();
String filtered = filter.result();
// 6 and 7 correct for respectively <span> and </span>
wText.set(filtered.substring(6, filtered.length() - 7));
return true;
} catch (ClassNotFoundException e) {
logger.error("ClassNotFoundException", e);
} catch (InstantiationException e) {
logger.error("InstantiationException", e);
} catch (IllegalAccessException e) {
logger.error("IllegalAccessException", e);
} catch (XMLException e) {
logger.error("Error reading XHTML string: " + e.getMessage() + ": line " + e.getLineNr() + " in '" + text + "'", e);
}
return false;
}
use of net.n3.nanoxml.IXMLParser in project freeplane by freeplane.
the class FilterController method loadConditions.
void loadConditions(final DefaultComboBoxModel filterConditionModel, final String pathToFilterFile, final boolean showPopupOnError) throws IOException {
try {
final IXMLParser parser = XMLParserFactory.createDefaultXMLParser();
File filterFile = new File(pathToFilterFile);
final IXMLReader reader = new StdXMLReader(new BufferedInputStream(new FileInputStream(filterFile)));
parser.setReader(reader);
reader.setSystemID(filterFile.toURL().toString());
final XMLElement loader = (XMLElement) parser.parse();
final Vector<XMLElement> conditions = loader.getChildren();
for (int i = 0; i < conditions.size(); i++) {
final ASelectableCondition condition = getConditionFactory().loadCondition(conditions.get(i));
if (condition != null) {
filterConditionModel.addElement(condition);
}
}
} catch (final FileNotFoundException e) {
} catch (final AccessControlException e) {
} catch (final Exception e) {
LogUtils.warn(e);
if (showPopupOnError) {
UITools.errorMessage(TextUtils.getText("filters_not_loaded"));
}
}
}
use of net.n3.nanoxml.IXMLParser in project freeplane by freeplane.
the class ExportController method createXSLTExportActions.
private void createXSLTExportActions(final String xmlDescriptorFile) {
InputStream xmlDescriptorStream = null;
try {
final IXMLParser parser = XMLParserFactory.createDefaultXMLParser();
final URL resource = ResourceController.getResourceController().getResource(xmlDescriptorFile);
xmlDescriptorStream = resource.openStream();
final IXMLReader reader = new StdXMLReader(xmlDescriptorStream);
parser.setReader(reader);
final XMLElement xml = (XMLElement) parser.parse();
final Enumeration<XMLElement> actionDescriptors = xml.enumerateChildren();
while (actionDescriptors.hasMoreElements()) {
final XMLElement descriptor = actionDescriptors.nextElement();
final String name = descriptor.getAttribute("name", null);
final XMLElement xmlProperties = descriptor.getFirstChildNamed("properties");
final Properties properties = xmlProperties.getAttributes();
final ExportWithXSLT action = new ExportWithXSLT(name, properties);
addExportEngine(action.getFileFilter(), action);
}
} catch (final Exception e) {
LogUtils.severe(e);
} finally {
FileUtils.silentlyClose(xmlDescriptorStream);
}
}
Aggregations