List of usage examples for org.apache.commons.digester Digester setRuleNamespaceURI
public void setRuleNamespaceURI(String ruleNamespaceURI)
Rule objects. From source file:net.sf.jasperreports.customvisualization.xml.CVDigester.java
protected static void addExpressionRules(Digester digester, String expressionPattern, String setterMethod, boolean jrNamespace) { String originalNamespace = digester.getRuleNamespaceURI(); if (jrNamespace) { digester.setRuleNamespaceURI(JRXmlWriter.JASPERREPORTS_NAMESPACE.getNamespaceURI()); }/*from w w w . jav a2s.com*/ digester.addFactoryCreate(expressionPattern, JRExpressionFactory.class); digester.addCallMethod(expressionPattern, "setText", 0); digester.addSetNext(expressionPattern, setterMethod, JRExpression.class.getName()); if (jrNamespace) { digester.setRuleNamespaceURI(originalNamespace); } }
From source file:net.sf.jasperreports.customvisualization.xml.CVDigester.java
protected static void addCVItemDataRules(Digester digester, String pattern, String namespace) { digester.addObjectCreate(pattern, StandardItemData.class); digester.addSetNext(pattern, "addItemData", StandardItemData.class.getName()); String itemPattern = pattern + "/item"; digester.addObjectCreate(itemPattern, StandardItem.class); digester.addSetNext(itemPattern, "addItem", Item.class.getName()); addItemPropertieyRules(digester, itemPattern + "/itemProperty", namespace); digester.setRuleNamespaceURI(JRXmlWriter.JASPERREPORTS_NAMESPACE.getNamespaceURI()); digester.addFactoryCreate(pattern + "/dataset", CVItemDatasetFactory.class.getName()); digester.addSetNext(pattern + "/dataset", "setDataset", JRElementDataset.class.getName()); digester.setRuleNamespaceURI(namespace); }
From source file:net.sf.jasperreports.components.sort.SortComponentDigester.java
public static void addSortComponentRules(Digester digester) { String componentNamespace = digester.getRuleNamespaceURI(); String sortComponentPattern = "*/componentElement/sort"; digester.addObjectCreate(sortComponentPattern, SortComponent.class.getName()); digester.addSetProperties(sortComponentPattern, new String[] { SortComponent.PROPERTY_EVALUATION_TIME, }, new String[0]); digester.addRule(sortComponentPattern, new XmlConstantPropertyRule(SortComponent.PROPERTY_EVALUATION_TIME, EvaluationTimeEnum.values())); digester.addFactoryCreate(sortComponentPattern + "/symbol", SortComponentSymbolFactory.class.getName()); digester.setRuleNamespaceURI(JRXmlConstants.JASPERREPORTS_NAMESPACE); digester.addFactoryCreate(sortComponentPattern + "/symbol/font", SortComponentSymbolFontFactory.class.getName()); digester.addSetNext(sortComponentPattern + "/symbol/font", "setSymbolFont", JRFont.class.getName()); digester.setRuleNamespaceURI(componentNamespace); }
From source file:net.sf.jasperreports.forms.textinput.TextInputComponentDigester.java
public static void addTextInputComponentRules(Digester digester) { String componentNamespace = digester.getRuleNamespaceURI(); String textInputComponentPattern = "*/componentElement/textInput"; // digester.addObjectCreate(textInputComponentPattern, TextInputComponent.class.getName()); digester.addFactoryCreate(textInputComponentPattern, TextInputComponentFactory.class.getName()); digester.addSetProperties(textInputComponentPattern); // digester.addSetProperties(textInputComponentPattern, // //properties to be ignored by this rule // new String[]{JRXmlConstants.ATTRIBUTE_evaluationTime, StandardBarbecueComponent.PROPERTY_ROTATION}, // new String[0]); digester.setRuleNamespaceURI(JRXmlConstants.JASPERREPORTS_NAMESPACE); digester.addFactoryCreate(textInputComponentPattern + "/textField", TextInputTextFieldFactory.class.getName()); digester.setRuleNamespaceURI(componentNamespace); }
From source file:net.sf.jasperreports.components.spiderchart.SpiderChartDigester.java
@SuppressWarnings("deprecation") public static void addSpiderChartRules(Digester digester) { String componentNamespace = digester.getRuleNamespaceURI(); String jrNamespace = JRXmlConstants.JASPERREPORTS_NAMESPACE; String spiderChartPattern = "*/componentElement/spiderChart"; digester.addFactoryCreate(spiderChartPattern, SpiderChartXmlFactory.class.getName()); String chartSettingsPattern = spiderChartPattern + "/chartSettings"; digester.addFactoryCreate(chartSettingsPattern, ChartSettingsXmlFactory.class.getName()); digester.addSetNext(chartSettingsPattern, "setChartSettings", ChartSettings.class.getName()); digester.setRuleNamespaceURI(jrNamespace); String chartTitlePattern = chartSettingsPattern + "/chartTitle"; digester.addFactoryCreate(chartTitlePattern, ChartSettingsXmlFactory.ChartTitleFactory.class.getName()); digester.addFactoryCreate(chartTitlePattern + "/font", JRFontFactory.ChartFontFactory.class.getName()); digester.addSetNext(chartTitlePattern + "/font", "setTitleFont", JRFont.class.getName()); digester.addFactoryCreate(chartTitlePattern + "/titleExpression", JRExpressionFactory.StringExpressionFactory.class); digester.addSetNext(chartTitlePattern + "/titleExpression", "setTitleExpression", JRDesignExpression.class.getName()); digester.addCallMethod(chartTitlePattern + "/titleExpression", "setText", 0); String chartSubtitlePattern = chartSettingsPattern + "/chartSubtitle"; digester.addFactoryCreate(chartSubtitlePattern, ChartSettingsXmlFactory.ChartSubtitleFactory.class.getName()); digester.addFactoryCreate(chartSubtitlePattern + "/font", JRFontFactory.ChartFontFactory.class.getName()); digester.addSetNext(chartSubtitlePattern + "/font", "setSubtitleFont", JRFont.class.getName()); digester.addFactoryCreate(chartSubtitlePattern + "/subtitleExpression", JRExpressionFactory.StringExpressionFactory.class); digester.addSetNext(chartSubtitlePattern + "/subtitleExpression", "setSubtitleExpression", JRDesignExpression.class.getName()); digester.addCallMethod(chartSubtitlePattern + "/subtitleExpression", "setText", 0); digester.addFactoryCreate(chartSettingsPattern + "/chartLegend", ChartSettingsXmlFactory.ChartLegendFactory.class.getName()); digester.addFactoryCreate(chartSettingsPattern + "/chartLegend/font", JRFontFactory.ChartFontFactory.class.getName()); digester.addSetNext(chartSettingsPattern + "/chartLegend/font", "setLegendFont", JRFont.class.getName()); digester.setRuleNamespaceURI(componentNamespace); String spiderDatasetPattern = spiderChartPattern + "/spiderDataset"; digester.addFactoryCreate(spiderDatasetPattern, SpiderDatasetXmlFactory.class.getName()); digester.addSetNext(spiderDatasetPattern, "setDataset", SpiderDataset.class.getName()); digester.setRuleNamespaceURI(jrNamespace); String datasetPattern = spiderDatasetPattern + "/dataset"; digester.addFactoryCreate(datasetPattern, JRElementDatasetFactory.class.getName()); String datasetIncrementWhenExpressionPath = datasetPattern + JRXmlConstants.ELEMENT_incrementWhenExpression; digester.addFactoryCreate(datasetIncrementWhenExpressionPath, JRExpressionFactory.BooleanExpressionFactory.class.getName()); digester.addSetNext(datasetIncrementWhenExpressionPath, "setIncrementWhenExpression", JRExpression.class.getName()); digester.addCallMethod(datasetIncrementWhenExpressionPath, "setText", 0); String seriesPattern = spiderDatasetPattern + "/categorySeries"; digester.addFactoryCreate(seriesPattern, JRCategorySeriesFactory.class.getName()); digester.addSetNext(seriesPattern, "addCategorySeries", JRDesignCategorySeries.class.getName()); digester.addFactoryCreate(seriesPattern + "/seriesExpression", JRExpressionFactory.ComparableExpressionFactory.class); digester.addSetNext(seriesPattern + "/seriesExpression", "setSeriesExpression", JRDesignExpression.class.getName()); digester.addCallMethod(seriesPattern + "/seriesExpression", "setText", 0); digester.addFactoryCreate(seriesPattern + "/categoryExpression", JRExpressionFactory.ComparableExpressionFactory.class); digester.addSetNext(seriesPattern + "/categoryExpression", "setCategoryExpression", JRDesignExpression.class.getName()); digester.addCallMethod(seriesPattern + "/categoryExpression", "setText", 0); digester.addFactoryCreate(seriesPattern + "/labelExpression", JRExpressionFactory.StringExpressionFactory.class); digester.addSetNext(seriesPattern + "/labelExpression", "setLabelExpression", JRDesignExpression.class.getName()); digester.addCallMethod(seriesPattern + "/labelExpression", "setText", 0); digester.addFactoryCreate(seriesPattern + "/valueExpression", JRExpressionFactory.NumberExpressionFactory.class); digester.addSetNext(seriesPattern + "/valueExpression", "setValueExpression", JRDesignExpression.class.getName()); digester.addCallMethod(seriesPattern + "/valueExpression", "setText", 0); digester.setRuleNamespaceURI(componentNamespace); String plotPattern = spiderChartPattern + "/spiderPlot"; digester.addFactoryCreate(plotPattern, SpiderPlotXmlFactory.class.getName()); digester.addSetNext(plotPattern, "setPlot", SpiderPlot.class.getName()); digester.setRuleNamespaceURI(jrNamespace); String labelFontPattern = plotPattern + "/labelFont/font"; digester.addFactoryCreate(labelFontPattern, JRFontFactory.ChartFontFactory.class.getName()); digester.addSetNext(labelFontPattern, "setLabelFont", JRFont.class.getName()); digester.setRuleNamespaceURI(componentNamespace); String maxValueExpressionPattern = plotPattern + "/maxValueExpression"; digester.addFactoryCreate(maxValueExpressionPattern, JRExpressionFactory.DoubleExpressionFactory.class); digester.addSetNext(maxValueExpressionPattern, "setMaxValueExpression", JRDesignExpression.class.getName()); digester.addCallMethod(maxValueExpressionPattern, "setText", 0); }
From source file:com.discursive.jccook.xml.bean.XMLNamespaceDigest.java
public void testDigest() throws IOException, SAXException { Pages pages = new Pages(); Digester digester = new Digester(); digester.setNamespaceAware(true);/*w w w. j ava 2s .c o m*/ digester.setRuleNamespaceURI("http://discursive.com/page"); URL pageRules = getClass().getResource("./page-rules.xml"); digester.addRuleSet(new FromXmlRuleSet(pageRules)); digester.setRuleNamespaceURI("http://discursive.com/person"); URL personRules = getClass().getResource("./person-rules.xml"); digester.addRuleSet(new FromXmlRuleSet(personRules)); digester.push(pages); InputStream input = getClass().getResourceAsStream("./content.xml"); digester.parse(input); Page page = (Page) pages.getPages().get(0); System.out.println(page); }
From source file:net.sf.jasperreports.engine.xml.JRXmlTemplateDigesterFactory.java
protected void configureDigester(JasperReportsContext jasperReportsContext, Digester digester) throws SAXException, ParserConfigurationException { digester.setNamespaceAware(true);// w w w. j ava 2s .c om digester.setRuleNamespaceURI(JRXmlConstants.JASPERTEMPLATE_NAMESPACE); boolean validating = JRPropertiesUtil.getInstance(jasperReportsContext) .getBooleanProperty(JRReportSaxParserFactory.COMPILER_XML_VALIDATION); digester.setErrorHandler(this); digester.setValidating(validating); digester.setFeature("http://xml.org/sax/features/validation", validating); digester.addRuleSet(rules); }
From source file:net.sibcolombia.sibsp.model.factory.ExtensionFactory.java
/** * Builds an extension from the supplied input stream. * /*from w ww .j a va2 s . com*/ * @param is For the XML * @return The extension */ public Extension build(InputStream is) throws IOException, SAXException, ParserConfigurationException { // in order to deal with arbitrary namespace prefixes we need to parse namespace aware! Digester digester = new Digester(saxf.newSAXParser()); digester.setRuleNamespaceURI(EXTENSION_NAMESPACE); Extension e = new Extension(); digester.push(e); digester.addCallMethod("*/extension", "setTitle", 1); digester.addRule("*/extension", new CallParamNoNSRule(0, "title")); digester.addCallMethod("*/extension", "setName", 1); digester.addCallParam("*/extension", 0, "name"); digester.addCallMethod("*/extension", "setNamespace", 1); digester.addCallParam("*/extension", 0, "namespace"); digester.addCallMethod("*/extension", "setRowType", 1); digester.addCallParam("*/extension", 0, "rowType"); digester.addCallMethod("*/extension", "setLink", 1); digester.addRule("*/extension", new CallParamNoNSRule(0, "relation")); digester.addCallMethod("*/extension", "setDescription", 1); digester.addRule("*/extension", new CallParamNoNSRule(0, "description")); digester.addCallMethod("*/extension", "setSubject", 1); digester.addRule("*/extension", new CallParamNoNSRule(0, "subject")); // build the properties digester.addObjectCreate("*/property", ExtensionProperty.class); digester.addCallMethod("*/property", "setQualname", 1); digester.addCallParam("*/property", 0, "qualName"); digester.addCallMethod("*/property", "setName", 1); digester.addCallParam("*/property", 0, "name"); digester.addCallMethod("*/property", "setNamespace", 1); digester.addCallParam("*/property", 0, "namespace"); digester.addCallMethod("*/property", "setGroup", 1); digester.addCallParam("*/property", 0, "group"); digester.addCallMethod("*/property", "setRequired", 1); digester.addCallParam("*/property", 0, "required"); digester.addCallMethod("*/property", "setLink", 1); digester.addRule("*/property", new CallParamNoNSRule(0, "relation")); digester.addCallMethod("*/property", "setDescription", 1); digester.addRule("*/property", new CallParamNoNSRule(0, "description")); digester.addCallMethod("*/property", "setExamples", 1); digester.addCallParam("*/property", 0, "examples"); digester.addCallMethod("*/property", "setType", 1); digester.addCallParam("*/property", 0, "type"); // This is a special rule that will use the url2ThesaurusMap // to set the Vocabulary based on the attribute "thesaurus" digester.addRule("*/property", thesaurusRule); digester.addSetNext("*/property", "addProperty"); digester.parse(is); return e; }
From source file:net.sibcolombia.sibsp.model.factory.VocabularyFactory.java
/** * Builds a Vocabulary from the supplied input stream * /*w ww . j a v a2s . c om*/ * @param is For the XML * @return The extension */ public Vocabulary build(InputStream is) throws IOException, SAXException, ParserConfigurationException { Digester digester = new Digester(saxf.newSAXParser()); digester.setNamespaceAware(true); digester.setXIncludeAware(false); digester.setRuleNamespaceURI(VOCABULARY_NAMESPACE); Vocabulary tv = new Vocabulary(); digester.push(tv); // build the thesaurus digester.addCallMethod("*/thesaurus", "setTitle", 1); digester.addRule("*/thesaurus", new CallParamNoNSRule(0, "title")); digester.addCallMethod("*/thesaurus", "setDescription", 1); digester.addRule("*/thesaurus", new CallParamNoNSRule(0, "description")); digester.addCallMethod("*/thesaurus", "setLink", 1); digester.addRule("*/thesaurus", new CallParamNoNSRule(0, "relation")); digester.addCallMethod("*/thesaurus", "setUriString", 1); digester.addRule("*/thesaurus", new CallParamNoNSRule(0, "URI")); // build the concept digester.addObjectCreate("*/concept", VocabularyConcept.class); digester.addCallMethod("*/concept", "setLink", 1); digester.addRule("*/concept", new CallParamNoNSRule(0, "relation")); digester.addCallMethod("*/concept", "setDescription", 1); digester.addRule("*/concept", new CallParamNoNSRule(0, "description")); digester.addCallMethod("*/concept", "setUri", 1); digester.addRule("*/concept", new CallParamNoNSRule(0, "URI")); digester.addCallMethod("*/concept", "setIdentifier", 1); digester.addRule("*/concept", new CallParamNoNSRule(0, "identifier")); // build the terms digester.addObjectCreate("*/preferred/term", VocabularyTerm.class); digester.addCallMethod("*/preferred/term", "setLang", 1); digester.addRule("*/preferred/term", new CallParamNoNSRule(0, "lang")); digester.addCallMethod("*/preferred/term", "setTitle", 1); digester.addRule("*/preferred/term", new CallParamNoNSRule(0, "title")); digester.addSetNext("*/preferred/term", "addPreferredTerm"); // build alternative terms digester.addObjectCreate("*/alternative/term", VocabularyTerm.class); digester.addCallMethod("*/alternative/term", "setLang", 1); digester.addRule("*/alternative/term", new CallParamNoNSRule(0, "lang")); digester.addCallMethod("*/alternative/term", "setTitle", 1); digester.addRule("*/alternative/term", new CallParamNoNSRule(0, "title")); digester.addSetNext("*/alternative/term", "addAlternativeTerm"); // add concept digester.addSetNext("*/concept", "addConcept"); digester.parse(is); return tv; }
From source file:net.sf.jasperreports.parts.PartComponentsXmlDigesterConfigurer.java
protected void addSubreportRules(Digester digester) { String subreportPattern = "*/part/subreportPart"; digester.addObjectCreate(subreportPattern, StandardSubreportPartComponent.class); digester.addSetProperties(subreportPattern); String partNamespace = digester.getRuleNamespaceURI(); String jrNamespace = JRXmlConstants.JASPERREPORTS_NAMESPACE; digester.setRuleNamespaceURI(jrNamespace); String paramMapExpressionPattern = subreportPattern + "/parametersMapExpression"; digester.addFactoryCreate(paramMapExpressionPattern, JRExpressionFactory.class.getName()); digester.addCallMethod(paramMapExpressionPattern, "setText", 0); digester.addSetNext(paramMapExpressionPattern, "setParametersMapExpression", JRExpression.class.getName()); /* *//* w ww . j a v a 2 s .co m*/ digester.addFactoryCreate("*/subreportPart/subreportParameter", JRSubreportParameterFactory.class.getName()); digester.addSetNext("*/subreportPart/subreportParameter", "addParameter", JRSubreportParameter.class.getName()); /* */ digester.addFactoryCreate("*/subreportPart/subreportParameter/subreportParameterExpression", JRExpressionFactory.class.getName()); digester.addSetNext("*/subreportPart/subreportParameter/subreportParameterExpression", "setExpression", JRExpression.class.getName()); digester.addCallMethod("*/subreportPart/subreportParameter/subreportParameterExpression", "setText", 0); /* */ digester.addFactoryCreate("*/subreportPart/returnValue", JRSubreportReturnValueFactory.class.getName()); digester.addSetNext("*/subreportPart/returnValue", "addReturnValue", JRSubreportReturnValue.class.getName()); String subreportExpressionPattern = subreportPattern + "/subreportExpression"; digester.addFactoryCreate(subreportExpressionPattern, JRExpressionFactory.class.getName()); digester.addCallMethod(subreportExpressionPattern, "setText", 0); digester.addSetNext(subreportExpressionPattern, "setExpression", JRExpression.class.getName()); digester.setRuleNamespaceURI(partNamespace); }