Hi,
I am getting org.springframework.beans.factory.BeanDefinitionSt oreException with my current setup of spring integration within a ear/war.
The failure occurs when trying to load the following spring integration config file:
Code:<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:integration="http://www.springframework.org/schema/integration" xmlns:file="http://www.springframework.org/schema/integration/file" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd http://www.springframework.org/schema/integration http://www.springframework.org/schema/integration/spring-integration-2.0.xsd http://www.springframework.org/schema/integration/file http://www.springframework.org/schema/integration/file/spring-integration-file-2.0.xsd"> <bean class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"> <property name="location" value="classpath:batch.properties"/> </bean> <file:inbound-channel-adapter id="filesIn" directory="file:${ftp.dir}/input" prevent-duplicates="true"> <integration:poller id="poller" cron="*/5 * * * * *"/> </file:inbound-channel-adapter> <integration:service-activator input-channel="filesIn" output-channel="filesOut" ref="handler"/> <file:outbound-channel-adapter id="filesOut" directory="file:${ftp.dir}/output" delete-source-files="true"/> <bean id="handler" class="my.FileCopyHandler"/> </beans>
Below are my configuration details:
web.xml
my-batch-spring.xmlCode:<?xml version="1.0" encoding="UTF-8"?> <web-app id="WebApp_ID" version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"> <display-name>MyWAR</display-name> <context-param> <param-name>contextConfigLocation</param-name> <param-value>classpath:spring/my-batch-spring.xml</param-value> </context-param> <listener> <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class> </listener> <welcome-file-list> <welcome-file>index.html</welcome-file> <welcome-file>index.htm</welcome-file> <welcome-file>index.jsp</welcome-file> <welcome-file>default.html</welcome-file> <welcome-file>default.htm</welcome-file> <welcome-file>default.jsp</welcome-file> </welcome-file-list> </web-app>
FileCopyProcessor.javaCode:<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd"> <bean id="fileCopyProcessor" class="my.FileCopyProcessor"/> </beans>
Code:package my.process; import org.springframework.context.ApplicationContext; import org.springframework.context.ApplicationEvent; import org.springframework.context.ApplicationListener; import org.springframework.context.event.ContextRefreshedEvent; import org.springframework.context.support.ClassPathXmlApplicationContext; public class FileCopyProcessor implements ApplicationListener { public FileCopyProcessor() { System.out.println("calling constructor................."); } @Override public void onApplicationEvent(ApplicationEvent event) { if(event instanceof ContextRefreshedEvent) { System.out.println("I am being called"); ApplicationContext context = new ClassPathXmlApplicationContext("/integration/copy-files.xml", FileCopyProcessor.class); } } }
Stack trace :
Can anyone suggest something?Code:[7/06/11 17:29:40:876 EST] 000000e7 XmlWebApplica I org.springframework.context.support.AbstractApplicationContext obtainFreshBeanFactory Bean factory for application context [org.springframework.web.context.support.XmlWebApplicationContext@1a5a1a5a]: org.springframework.beans.factory.support.DefaultListableBeanFactory@79667966 [7/06/11 17:29:50:360 EST] 000000e7 SystemOut O calling constructor................. [7/06/11 17:29:53:798 EST] 000000e7 DefaultListab I org.springframework.beans.factory.support.DefaultListableBeanFactory preInstantiateSingletons Pre-instantiating singletons in org.springframework.beans.factory.support.DefaultListableBeanFactory@79667966: defining beans [fileCopyProcessor]; root of factory hierarchy [7/06/11 17:29:53:814 EST] 000000e7 SystemOut O I am being called [7/06/11 17:29:54:501 EST] 000000e7 ClassPathXmlA I org.springframework.context.support.AbstractApplicationContext prepareRefresh Refreshing org.springframework.context.support.ClassPathXmlApplicationContext@3b4c3b4c: display name [org.springframework.context.support.ClassPathXmlApplicationContext@3b4c3b4c]; startup date [Tue Jun 07 17:29:54 EST 2011]; root of context hierarchy [7/06/11 17:29:54:501 EST] 000000e7 XmlBeanDefini I org.springframework.beans.factory.xml.XmlBeanDefinitionReader loadBeanDefinitions Loading XML bean definitions from class path resource [/integration/copy-files.xml] [7/06/11 17:30:05:860 EST] 000000e7 DefaultListab I org.springframework.beans.factory.support.DefaultSingletonBeanRegistry destroySingletons Destroying singletons in org.springframework.beans.factory.support.DefaultListableBeanFactory@79667966: defining beans [fileCopyProcessor]; root of factory hierarchy [7/06/11 17:30:05:860 EST] 000000e7 ContextLoader E org.springframework.web.context.ContextLoader initWebApplicationContext Context initialization failed org.springframework.beans.factory.BeanDefinitionStoreException: Unexpected exception parsing XML document from class path resource [/integration/copy-files.xml]; nested exception is java.lang.NullPointerException at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.doLoadBeanDefinitions(XmlBeanDefinitionReader.java:420) .............more error........ Caused by: java.lang.NullPointerException at org.springframework.beans.factory.support.BeanDefinitionReaderUtils.generateBeanName(BeanDefinitionReaderUtils.java:115) at org.springframework.beans.factory.support.BeanDefinitionReaderUtils.generateBeanName(BeanDefinitionReaderUtils.java:159) at org.springframework.beans.factory.support.DefaultBeanNameGenerator.generateBeanName(DefaultBeanNameGenerator.java:31) at org.springframework.beans.factory.xml.XmlReaderContext.generateBeanName(XmlReaderContext.java:77) at org.springframework.beans.factory.xml.AbstractBeanDefinitionParser.resolveId(AbstractBeanDefinitionParser.java:102) at org.springframework.beans.factory.xml.AbstractBeanDefinitionParser.parse(AbstractBeanDefinitionParser.java:59) at org.springframework.beans.factory.xml.NamespaceHandlerSupport.parse(NamespaceHandlerSupport.java:69) at org.springframework.integration.config.xml.AbstractIntegrationNamespaceHandler.parse(AbstractIntegrationNamespaceHandler.java:53) at org.springframework.beans.factory.xml.BeanDefinitionParserDelegate.parseCustomElement(BeanDefinitionParserDelegate.java:1297) at org.springframework.beans.factory.xml.BeanDefinitionParserDelegate.parseCustomElement(BeanDefinitionParserDelegate.java:1287) at org.springframework.beans.factory.xml.DefaultBeanDefinitionDocumentReader.parseBeanDefinitions(DefaultBeanDefinitionDocumentReader.java:135) at org.springframework.beans.factory.xml.DefaultBeanDefinitionDocumentReader.registerBeanDefinitions(DefaultBeanDefinitionDocumentReader.java:92) at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.registerBeanDefinitions(XmlBeanDefinitionReader.java:507) at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.doLoadBeanDefinitions(XmlBeanDefinitionReader.java:398)![]()


Reply With Quote
oller id="poller" cron="*/5 * * * * *"/>