List of usage examples for org.springframework.beans.factory.xml XmlReaderContext error
public void error(String message, @Nullable Object source, @Nullable Throwable cause)
From source file:org.codehaus.grepo.core.config.GenericRepositoryScanBeanDefinitionParser.java
/** * @param configContext The config context. * @param parserContext The parser context. *//* w w w.j a va2 s . c om*/ protected void parseBeanNameGenerator(GenericRepositoryConfigContext configContext, ParserContext parserContext) { XmlReaderContext readerContext = parserContext.getReaderContext(); try { if (configContext.hasNameGenerator()) { BeanNameGenerator generator = (BeanNameGenerator) instantiateUserDefinedStrategy( configContext.getNameGenerator(), BeanNameGenerator.class, parserContext.getReaderContext().getResourceLoader().getClassLoader()); setBeanNameGenerator(generator); } } catch (Exception ex) { readerContext.error(ex.getMessage(), readerContext.extractSource(configContext.getElement()), ex.getCause()); } }
From source file:org.jdal.beans.CustomBeanDefinitionParser.java
/** * Parse bean like a real bean definition. * @param ele element/*from w ww . j a v a 2 s . com*/ * @param parserContext parserContext * @param builder builder */ protected void parseBeanDefinition(Element ele, ParserContext parserContext, BeanDefinitionBuilder builder) { BeanDefinitionParserDelegate delegate = parserContext.getDelegate(); AbstractBeanDefinition bd = builder.getRawBeanDefinition(); XmlReaderContext reader = parserContext.getReaderContext(); try { delegate.parseBeanDefinitionAttributes(ele, beanName, null, bd); bd.setDescription(DomUtils.getChildElementValueByTagName(ele, "description")); delegate.parseMetaElements(ele, bd); delegate.parseLookupOverrideSubElements(ele, bd.getMethodOverrides()); delegate.parseReplacedMethodSubElements(ele, bd.getMethodOverrides()); delegate.parseConstructorArgElements(ele, bd); delegate.parsePropertyElements(ele, bd); delegate.parseQualifierElements(ele, bd); } catch (NoClassDefFoundError err) { reader.error("Class that bean class [" + this.beanClass + "] depends on not found", ele, err); } catch (Throwable ex) { reader.error("Unexpected failure during bean definition parsing", ele, ex); } }
From source file:info.sargis.eventbus.config.EventBusHandlerBeanDefinitionParser.java
protected void parseTypeFilters(Element element, ClassPathBeanDefinitionScanner scanner, XmlReaderContext readerContext, ParserContext parserContext) { // Parse exclude and include filter elements. ClassLoader classLoader = scanner.getResourceLoader().getClassLoader(); NodeList nodeList = element.getChildNodes(); for (int i = 0; i < nodeList.getLength(); i++) { Node node = nodeList.item(i); if (node.getNodeType() == Node.ELEMENT_NODE) { String localName = parserContext.getDelegate().getLocalName(node); try { if (INCLUDE_FILTER_ELEMENT.equals(localName)) { TypeFilter typeFilter = createTypeFilter((Element) node, classLoader); scanner.addIncludeFilter(typeFilter); } else if (EXCLUDE_FILTER_ELEMENT.equals(localName)) { TypeFilter typeFilter = createTypeFilter((Element) node, classLoader); scanner.addExcludeFilter(typeFilter); }// w w w .j av a2 s . com } catch (Exception ex) { readerContext.error(ex.getMessage(), readerContext.extractSource(element), ex.getCause()); } } } }
From source file:org.mybatis.spring.config.MapperScannerBeanDefinitionParser.java
/** * {@inheritDoc}/* w w w. j a v a 2s .com*/ */ @Override public synchronized BeanDefinition parse(Element element, ParserContext parserContext) { ClassPathMapperScanner scanner = new ClassPathMapperScanner(parserContext.getRegistry()); ClassLoader classLoader = scanner.getResourceLoader().getClassLoader(); XmlReaderContext readerContext = parserContext.getReaderContext(); scanner.setResourceLoader(readerContext.getResourceLoader()); try { String annotationClassName = element.getAttribute(ATTRIBUTE_ANNOTATION); if (StringUtils.hasText(annotationClassName)) { @SuppressWarnings("unchecked") Class<? extends Annotation> markerInterface = (Class<? extends Annotation>) classLoader .loadClass(annotationClassName); scanner.setAnnotationClass(markerInterface); } String markerInterfaceClassName = element.getAttribute(ATTRIBUTE_MARKER_INTERFACE); if (StringUtils.hasText(markerInterfaceClassName)) { Class<?> markerInterface = classLoader.loadClass(markerInterfaceClassName); scanner.setMarkerInterface(markerInterface); } String nameGeneratorClassName = element.getAttribute(ATTRIBUTE_NAME_GENERATOR); if (StringUtils.hasText(nameGeneratorClassName)) { Class<?> nameGeneratorClass = classLoader.loadClass(nameGeneratorClassName); BeanNameGenerator nameGenerator = BeanUtils.instantiateClass(nameGeneratorClass, BeanNameGenerator.class); scanner.setBeanNameGenerator(nameGenerator); } } catch (Exception ex) { readerContext.error(ex.getMessage(), readerContext.extractSource(element), ex.getCause()); } String sqlSessionTemplateBeanName = element.getAttribute(ATTRIBUTE_TEMPLATE_REF); scanner.setSqlSessionTemplateBeanName(sqlSessionTemplateBeanName); String sqlSessionFactoryBeanName = element.getAttribute(ATTRIBUTE_FACTORY_REF); scanner.setSqlSessionFactoryBeanName(sqlSessionFactoryBeanName); scanner.registerFilters(); String basePackage = element.getAttribute(ATTRIBUTE_BASE_PACKAGE); scanner.scan(StringUtils.tokenizeToStringArray(basePackage, ConfigurableApplicationContext.CONFIG_LOCATION_DELIMITERS)); return null; }
From source file:org.codehaus.grepo.core.config.GenericRepositoryScanBeanDefinitionParser.java
/** * @param element The element./*from w w w . ja v a2 s.co m*/ * @param scanner The scanner. * @param readerContext The reader context. */ protected void parseTypeFilters(Element element, GenericRepositoryBeanDefinitionScanner scanner, XmlReaderContext readerContext) { // Parse exclude and include filter elements. ClassLoader classLoader = scanner.getResourceLoader().getClassLoader(); NodeList nodeList = element.getChildNodes(); for (int i = 0; i < nodeList.getLength(); i++) { Node node = nodeList.item(i); if (node.getNodeType() == Node.ELEMENT_NODE) { String localName = node.getLocalName(); try { if (INCLUDE_FILTER_ELEMENT.equals(localName)) { // Note: that we use the composite type filter for include-filter, // because we always want repositories of appropriate interface type... CompositeTypeFilter typeFilter = new CompositeTypeFilter(); typeFilter.addTypeFilter(new AssignableTypeFilter(requiredGenericRepositoryType)); typeFilter.addTypeFilter(createTypeFilter((Element) node, classLoader)); scanner.addIncludeFilter(typeFilter); } else if (EXCLUDE_FILTER_ELEMENT.equals(localName)) { TypeFilter typeFilter = createTypeFilter((Element) node, classLoader); scanner.addExcludeFilter(typeFilter); } } catch (Exception ex) { readerContext.error(ex.getMessage(), readerContext.extractSource(element), ex.getCause()); } } } }