问一个sax解析xml的问题

oldearth oldearth 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
最近在看一个开源的项目jasperreport,在jasperreport工程中,src.net.sf.jasperreports.engine.xml.jrXmlDigesterFactory.java文件中,configureDigester()方法:


public static void configureDigester(Digester digester)
throws SAXException, ParserConfigurationException
{
String validation = System.getProperty
("jasper.reports.compile.xml.validation");
if (validation == null || validation.length() == 0)
{
validation = "true";
}
boolean validating = Boolean.valueOf(validation).booleanvalue();

digester.setErrorHandler(new ErrorHandlerImpl());
digester.setValidating(validating);
digester.setFeature("http://xml.org/sax/features/validation", validating);

/* */
digester.addFactoryCreate("jasperReport", JasperDesignFactory.class.getName());
digester.addSetNext("jasperReport", "setJasperDesign", JasperDesign.class.getName());

/* */
digester.addCallMethod("jasperReport/property", "setProperty", 2);
digester.addCallParam("jasperReport/property", 0, "name");
digester.addCallParam("jasperReport/property", 1, "value");

/* */
digester.addFactoryCreate("jasperReport/reportFont", JRReportFontFactory.class.getName());
digester.addSetNext("jasperReport/reportFont", "addFont", JRReportFont.class.getName());


这一段解析的程序,都是什么意思。特别是addSetNext()方法里,里面三个参数都是什么?当我解析到同样的节点时候,jasperreport里的哪个类哪个方法响应。在jasperreport工程里,我一直没有找到响应的类和响应的方法。
...全文

相关推荐

评论 4
收藏 已收藏
分享
返回顶部
oldearth
Java EE 67,535 成员 225,843 内容