在运行测试的时候出现加载applicationContext.xml文件失败,
在测试累里写了
ApplicationContext a= new ClassPathXmlApplicationContext("applicationContext.xml");
DaoImpl dao = (DaoImpl) a.getBean("dao"); 而且文件也在SRC路径下。
在配置文件里 也配了。
报这个错误。
log4j:WARN No appenders could be found for logger (org.springframework.core.CollectionFactory).
log4j:WARN Please initialize the log4j system properly.
Exception in thread "main" org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'sessionFactory' defined in class path resource [applicationContext.xml]: Initialization of bean failed; nested exception is org.hibernate.MappingException: java.lang.StringIndexOutOfBoundsException: String index out of range: 0
org.hibernate.MappingException: java.lang.StringIndexOutOfBoundsException: String index out of range: 0
at org.hibernate.cfg.Configuration.addInputStream(Configuration.java:408)
at org.springframework.orm.hibernate3.LocalSessionFactoryBean.afterPropertiesSet(LocalSessionFactoryBean.java:679)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1091)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:396)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:233)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:145)
at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:277)
at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:313)
at org.springframework.context.support.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:87)
at org.springframework.context.support.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:72)
at org.springframework.context.support.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:63)
at com.xianfeng.xfsystem.unitTest.UnitTest.<init>(UnitTest.java:14)
at com.xianfeng.xfsystem.unitTest.UnitTest.main(UnitTest.java:44)
Caused by: java.lang.StringIndexOutOfBoundsException: String index out of range: 0
at java.lang.String.charAt(String.java:558)
at org.hibernate.mapping.Column.setName(Column.java:59)
at org.hibernate.cfg.HbmBinder.bindColumns(HbmBinder.java:969)
at org.hibernate.cfg.HbmBinder.bindColumnsOrFormula(HbmBinder.java:1313)
at org.hibernate.cfg.HbmBinder.bindSimpleValue(HbmBinder.java:1001)
at org.hibernate.cfg.HbmBinder.bindSimpleId(HbmBinder.java:350)
at org.hibernate.cfg.HbmBinder.bindRootPersistentClassCommonValues(HbmBinder.java:294)
at org.hibernate.cfg.HbmBinder.bindRootClass(HbmBinder.java:236)
at org.hibernate.cfg.HbmBinder.bindRoot(HbmBinder.java:152)
at org.hibernate.cfg.Configuration.add(Configuration.java:362)
at org.hibernate.cfg.Configuration.addInputStream(Configuration.java:400)
... 12 more
在测试累里写了
ApplicationContext a= new ClassPathXmlApplicationContext("applicationContext.xml");
DaoImpl dao = (DaoImpl) a.getBean("dao"); 而且文件也在SRC路径下。
在配置文件里 也配了。
报这个错误。
log4j:WARN No appenders could be found for logger (org.springframework.core.CollectionFactory).
log4j:WARN Please initialize the log4j system properly.
Exception in thread "main" org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'sessionFactory' defined in class path resource [applicationContext.xml]: Initialization of bean failed; nested exception is org.hibernate.MappingException: java.lang.StringIndexOutOfBoundsException: String index out of range: 0
org.hibernate.MappingException: java.lang.StringIndexOutOfBoundsException: String index out of range: 0
at org.hibernate.cfg.Configuration.addInputStream(Configuration.java:408)
at org.springframework.orm.hibernate3.LocalSessionFactoryBean.afterPropertiesSet(LocalSessionFactoryBean.java:679)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1091)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:396)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:233)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:145)
at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:277)
at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:313)
at org.springframework.context.support.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:87)
at org.springframework.context.support.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:72)
at org.springframework.context.support.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:63)
at com.xianfeng.xfsystem.unitTest.UnitTest.<init>(UnitTest.java:14)
at com.xianfeng.xfsystem.unitTest.UnitTest.main(UnitTest.java:44)
Caused by: java.lang.StringIndexOutOfBoundsException: String index out of range: 0
at java.lang.String.charAt(String.java:558)
at org.hibernate.mapping.Column.setName(Column.java:59)
at org.hibernate.cfg.HbmBinder.bindColumns(HbmBinder.java:969)
at org.hibernate.cfg.HbmBinder.bindColumnsOrFormula(HbmBinder.java:1313)
at org.hibernate.cfg.HbmBinder.bindSimpleValue(HbmBinder.java:1001)
at org.hibernate.cfg.HbmBinder.bindSimpleId(HbmBinder.java:350)
at org.hibernate.cfg.HbmBinder.bindRootPersistentClassCommonValues(HbmBinder.java:294)
at org.hibernate.cfg.HbmBinder.bindRootClass(HbmBinder.java:236)
at org.hibernate.cfg.HbmBinder.bindRoot(HbmBinder.java:152)
at org.hibernate.cfg.Configuration.add(Configuration.java:362)
at org.hibernate.cfg.Configuration.addInputStream(Configuration.java:400)
... 12 more
<property name="sessionFactory" ref="sessionFactory"></property>
sessionFactory和database那些bean
再一些类被spring翻转的时候
需要添加成为该类的属性的或者你看看你的那些name是否正确
先看看你的spring文件里是否有红色的XX