public void addConfigurationPointsSupport() { if (skipValidation) { reader.setValidationMode(XmlBeanDefinitionReader.VALIDATION_NONE); reader.setNamespaceAware(true); // 为了添加Configuration Point支持,namespace是必须打开的。 reader.setDocumentReaderClass(DocumentReaderSkippingValidation.class); // 对beans中的参数提供默认值 log.warn( "XSD validation has been disabled according to the system property: -D{}. Please be warned: NEVER skipping validation in Production Environment.", PROPERTY_SKIP_VALIDATION); } ResourceLoader resourceLoader = reader.getResourceLoader(); if (resourceLoader == null) { resourceLoader = new DefaultResourceLoader(); } ClassLoader classLoader = resourceLoader.getClassLoader(); // schema providers SpringExtSchemaSet schemas = new SpringExtSchemaSet(classLoader); // default resolvers EntityResolver defaultEntityResolver = new ResourceEntityResolver(resourceLoader); NamespaceHandlerResolver defaultNamespaceHandlerResolver = new DefaultNamespaceHandlerResolver(classLoader); // new resolvers EntityResolver entityResolver = new SchemaEntityResolver(defaultEntityResolver, schemas); NamespaceHandlerResolver namespaceHandlerResolver = new ConfigurationPointNamespaceHandlerResolver(schemas.getConfigurationPoints(), defaultNamespaceHandlerResolver); reader.setEntityResolver(entityResolver); reader.setNamespaceHandlerResolver(namespaceHandlerResolver); }
public void addConfigurationPointsSupport() { if (skipValidation) { reader.setValidationMode(XmlBeanDefinitionReader.VALIDATION_NONE); reader.setNamespaceAware(true); // 为了添加Configuration Point支持,namespace是必须打开的。 reader.setDocumentReaderClass(DocumentReaderSkippingValidation.class); // 对beans中的参数提供默认值 log.warn( "XSD validation has been disabled according to the system property: -D{}. Please be warned: NEVER skipping validation in Production Environment.", PROPERTY_SKIP_VALIDATION); } ResourceLoader resourceLoader = reader.getResourceLoader(); if (resourceLoader == null) { resourceLoader = new DefaultResourceLoader(); } ClassLoader classLoader = resourceLoader.getClassLoader(); // schema providers SpringExtSchemaSet schemas = new SpringExtSchemaSet(classLoader); // default resolvers EntityResolver defaultEntityResolver = new ResourceEntityResolver(resourceLoader); NamespaceHandlerResolver defaultNamespaceHandlerResolver = new DefaultNamespaceHandlerResolver(classLoader); // new resolvers EntityResolver entityResolver = new SchemaEntityResolver(defaultEntityResolver, schemas); NamespaceHandlerResolver namespaceHandlerResolver = new ConfigurationPointNamespaceHandlerResolver(schemas.getConfigurationPoints(), defaultNamespaceHandlerResolver); reader.setEntityResolver(entityResolver); reader.setNamespaceHandlerResolver(namespaceHandlerResolver); }
public void addConfigurationPointsSupport() { if (skipValidation) { reader.setValidationMode(XmlBeanDefinitionReader.VALIDATION_NONE); reader.setNamespaceAware(true); // 为了添加Configuration Point支持,namespace是必须打开的。 reader.setDocumentReaderClass(DocumentReaderSkippingValidation.class); // 对beans中的参数提供默认值 log.warn( "XSD validation has been disabled according to the system property: -D{}. Please be warned: NEVER skipping validation in Production Environment.", PROPERTY_SKIP_VALIDATION); } ResourceLoader resourceLoader = reader.getResourceLoader(); if (resourceLoader == null) { resourceLoader = new DefaultResourceLoader(); } ClassLoader classLoader = resourceLoader.getClassLoader(); // schema providers SpringExtSchemaSet schemas = new SpringExtSchemaSet(classLoader); // default resolvers EntityResolver defaultEntityResolver = new ResourceEntityResolver(resourceLoader); NamespaceHandlerResolver defaultNamespaceHandlerResolver = new DefaultNamespaceHandlerResolver(classLoader); // new resolvers EntityResolver entityResolver = new SchemaEntityResolver(defaultEntityResolver, schemas); NamespaceHandlerResolver namespaceHandlerResolver = new ConfigurationPointNamespaceHandlerResolver(schemas.getConfigurationPoints(), defaultNamespaceHandlerResolver); reader.setEntityResolver(entityResolver); reader.setNamespaceHandlerResolver(namespaceHandlerResolver); }
/** * Configures the XmlBeanDefinitionReader to work nicely with extensible XML * using this reader implementation. */ public static void configure(AbstractApplicationContext context, XmlBeanDefinitionReader reader) { reader.setNamespaceAware(true); reader.setValidationMode(XmlBeanDefinitionReader.VALIDATION_XSD); }
/** * Configures the XmlBeanDefinitionReader to work nicely with extensible XML * using this reader implementation. */ public static void configure(AbstractApplicationContext context, XmlBeanDefinitionReader reader) { reader.setNamespaceAware(true); reader.setValidationMode(XmlBeanDefinitionReader.VALIDATION_XSD); }
@Override protected void initBeanDefinitionReader( XmlBeanDefinitionReader beanDefinitionReader) { super.initBeanDefinitionReader(beanDefinitionReader); // Validation boolean validate = Boolean.getBoolean(VALIDATION); if (!validate) { beanDefinitionReader .setValidationMode(XmlBeanDefinitionReader.VALIDATION_NONE); beanDefinitionReader.setNamespaceAware(true); } }
@Override protected void initBeanDefinitionReader(XmlBeanDefinitionReader beanDefinitionReader) { super.initBeanDefinitionReader(beanDefinitionReader); beanDefinitionReader.setValidationMode(XmlBeanDefinitionReader.VALIDATION_NONE); beanDefinitionReader.setNamespaceAware(true); } }
/** * Parse the provided Element into the provided registry. * * @param springBeans the element to parse * @param registry the registry to populate */ public static void parseNativeElement(@Nonnull final Element springBeans, @Nullable final BeanDefinitionRegistry registry) { final XmlBeanDefinitionReader definitionReader = new XmlBeanDefinitionReader(registry); definitionReader.setValidationMode(XmlBeanDefinitionReader.VALIDATION_XSD); definitionReader.setNamespaceAware(true); final ByteArrayOutputStream outputStream = new ByteArrayOutputStream(); SerializeSupport.writeNode(springBeans, outputStream); definitionReader.loadBeanDefinitions(new InputSource(new ByteArrayInputStream(outputStream.toByteArray()))); }
/** * Configures the XmlBeanDefinitionReader to work nicely with extensible XML * using this reader implementation. */ public static void configure(AbstractApplicationContext context, XmlBeanDefinitionReader reader) { reader.setValidating(false); reader.setNamespaceAware(true); reader.setParserClass(XBeanXmlBeanDefinitionParser.class); }
/** * Creates a Spring bean factory from the supplied spring resources. * * @param springResources to load bean definitions from * * @return bean factory */ @Nonnull protected BeanFactory createBeanFactory(@Nonnull final String... springResources) { final GenericApplicationContext ctx = new FilesystemGenericApplicationContext(); final XmlBeanDefinitionReader definitionReader = new XmlBeanDefinitionReader(ctx); definitionReader.setValidationMode(XmlBeanDefinitionReader.VALIDATION_XSD); definitionReader.setNamespaceAware(true); definitionReader.loadBeanDefinitions(springResources); ctx.refresh(); return ctx.getBeanFactory(); }
/** * Parse the given URL assuming it is a spring XML file */ protected void loadBeanDefinition() throws DatabaseException { // Read configuration BeanDefinitionRegistry registry = new SimpleBeanDefinitionRegistry(); XmlBeanDefinitionReader reader = new XmlBeanDefinitionReader(registry); reader.setNamespaceAware(true); HibernateConnection connection = getHibernateConnection(); reader.loadBeanDefinitions(new ClassPathResource(connection.getPath())); Properties props = connection.getProperties(); String beanName = props.getProperty("bean", null); if (beanName == null) { throw new IllegalStateException("A 'bean' name is required, definition in '" + connection.getPath() + "'."); } beanDefinition = registry.getBeanDefinition(beanName); if (beanDefinition == null) { throw new IllegalStateException("A bean named '" + beanName + "' could not be found in '" + connection.getPath() + "'."); } beanDefinitionProperties = (ManagedProperties) beanDefinition.getPropertyValues().getPropertyValue("hibernateProperties").getValue(); }
@Override protected void initBeanDefinitionReader(XmlBeanDefinitionReader reader) { // Spring always creates a new one of these, which takes a fair amount // of time on startup (nearly 1/2 second) as it gets created for every // spring context on the classpath if (nsHandlerResolver == null) { nsHandlerResolver = new DefaultNamespaceHandlerResolver(); } reader.setNamespaceHandlerResolver(nsHandlerResolver); String mode = SystemUtils.getSpringValidationMode(); if (null != mode) { reader.setValidationModeName(mode); } reader.setNamespaceAware(true); setEntityResolvers(reader); }
@Override protected void initBeanDefinitionReader(XmlBeanDefinitionReader reader) { // Spring always creates a new one of these, which takes a fair amount // of time on startup (nearly 1/2 second) as it gets created for every // spring context on the classpath if (nsHandlerResolver == null) { nsHandlerResolver = new DefaultNamespaceHandlerResolver(); } reader.setNamespaceHandlerResolver(nsHandlerResolver); String mode = getSpringValidationMode(); if (null != mode) { reader.setValidationModeName(mode); } reader.setNamespaceAware(true); setEntityResolvers(reader); }
@Override protected void initBeanDefinitionReader(XmlBeanDefinitionReader reader) { // Spring always creates a new one of these, which takes a fair amount // of time on startup (nearly 1/2 second) as it gets created for every // spring context on the classpath if (nsHandlerResolver == null) { nsHandlerResolver = new DefaultNamespaceHandlerResolver(); } reader.setNamespaceHandlerResolver(nsHandlerResolver); String mode = getSpringValidationMode(); if (null != mode) { reader.setValidationModeName(mode); } reader.setNamespaceAware(true); setEntityResolvers(reader); }
private void loadBeanDefinitions(final DefaultListableBeanFactory beanFactory) throws IOException { assert beanFactory != null; XmlBeanDefinitionReader reader = new XmlBeanDefinitionReader(beanFactory); reader.setResourceLoader(this); reader.setEntityResolver(new ResourceEntityResolver(this)); reader.setNamespaceAware(true); // TODO: Make this configurable via system properties, default to VALIDATION_NONE, disabling validation speeds things up a lot reader.setValidationMode(XmlBeanDefinitionReader.VALIDATION_NONE); loadBeanDefinitions(reader); }
/** * Creates a XBeanXmlBeanDefinitionReader for the specified applicationContext and beanFactory which will apply * the xmlPreprocessors before passing the DOM to Spring for processing. * @param applicationContext the application context for which the bean definitons will be loaded * @param beanFactory the beanFactory that services will be loaded * @param xmlPreprocessors the preprocessors to apply the DOM before passing to Spring for processing */ public XBeanXmlBeanDefinitionReader(SpringApplicationContext applicationContext, BeanDefinitionRegistry beanFactory, List xmlPreprocessors) { super(beanFactory); this.applicationContext = applicationContext; this.xmlPreprocessors = xmlPreprocessors; setValidating(false); setNamespaceAware(true); setParserClass(XBeanXmlBeanDefinitionParser.class); setResourceLoader(applicationContext); setEntityResolver(new ResourceEntityResolver(applicationContext)); }
@Override protected void initBeanDefinitionReader(XmlBeanDefinitionReader reader) { // Spring always creates a new one of these, which takes a fair amount // of time on startup (nearly 1/2 second) as it gets created for every // spring context on the classpath if (nsHandlerResolver == null) { nsHandlerResolver = new DefaultNamespaceHandlerResolver(); } reader.setNamespaceHandlerResolver(nsHandlerResolver); String mode = SystemUtils.getSpringValidationMode(); if (null != mode) { reader.setValidationModeName(mode); } reader.setNamespaceAware(true); setEntityResolvers(reader); }
private void loadBeanDefinitions(final DefaultListableBeanFactory beanFactory) throws IOException { assert beanFactory != null; XmlBeanDefinitionReader reader = new XmlBeanDefinitionReader(beanFactory); reader.setResourceLoader(this); reader.setEntityResolver(new ResourceEntityResolver(this)); reader.setNamespaceAware(true); // TODO: Make this configurable via system properties, default to VALIDATION_NONE, disabling validation speeds things up a lot reader.setValidationMode(XmlBeanDefinitionReader.VALIDATION_NONE); loadBeanDefinitions(reader); }
/** * Creates a XBeanXmlBeanDefinitionReader for the specified applicationContext and beanFactory which will apply * the xmlPreprocessors before passing the DOM to Spring for processing. * @param applicationContext the application context for which the bean definitons will be loaded * @param beanFactory the beanFactory that services will be loaded * @param xmlPreprocessors the preprocessors to apply the DOM before passing to Spring for processing */ public XBeanXmlBeanDefinitionReader(SpringApplicationContext applicationContext, BeanDefinitionRegistry beanFactory, List xmlPreprocessors) { super(beanFactory); this.applicationContext = applicationContext; this.xmlPreprocessors = xmlPreprocessors; setNamespaceAware(true); setValidationMode(VALIDATION_NONE); if (applicationContext != null) { setResourceLoader(applicationContext); setEntityResolver(new ResourceEntityResolver(applicationContext)); } setDocumentReaderClass(XBeanBeanDefinitionDocumentReader.class); }
public void addConfigurationPointsSupport() { if (skipValidation) { reader.setValidationMode(XmlBeanDefinitionReader.VALIDATION_NONE); reader.setNamespaceAware(true); // 为了添加Configuration Point支持,namespace是必须打开的。 reader.setDocumentReaderClass(DocumentReaderSkippingValidation.class); // 对beans中的参数提供默认值 log.warn( "XSD validation has been disabled according to the system property: -D{}. Please be warned: NEVER skipping validation in Production Environment.", PROPERTY_SKIP_VALIDATION); } ResourceLoader resourceLoader = reader.getResourceLoader(); if (resourceLoader == null) { resourceLoader = new DefaultResourceLoader(); } ClassLoader classLoader = resourceLoader.getClassLoader(); // schema providers SpringExtSchemaSet schemas = new SpringExtSchemaSet(classLoader); // default resolvers EntityResolver defaultEntityResolver = new ResourceEntityResolver(resourceLoader); NamespaceHandlerResolver defaultNamespaceHandlerResolver = new DefaultNamespaceHandlerResolver(classLoader); // new resolvers EntityResolver entityResolver = new SchemaEntityResolver(defaultEntityResolver, schemas); NamespaceHandlerResolver namespaceHandlerResolver = new ConfigurationPointNamespaceHandlerResolver(schemas.getConfigurationPoints(), defaultNamespaceHandlerResolver); reader.setEntityResolver(entityResolver); reader.setNamespaceHandlerResolver(namespaceHandlerResolver); }