所以我在我的应用程序中使用hibernate 3.2和Spring 2。我在编译它并在Tomcat 6上运行并运行时遇到问题。 它继续抱怨一些“InvalidMappingException”并抱怨我的应用程序上下文hibernate xml文件。我检查并重新检查了文件上的标签,似乎没有任何明显的标签错误给我。
这是控制台输出
SEVERE: Exception sending context initialized event to listener instance of class org.springframework.web.context.ContextLoaderListener
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'DisplayOnlineAlertInterceptor' defined in class path resource [com/usps/ism/techarch/contexts/alert/application-context-onlineAert.xml]: Cannot resolve reference to bean 'dispAlertOnlineArch' while setting bean property 'dispAlertOnlineArch'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'dispAlertOnlineArch' defined in class path resource [com/usps/ism/techarch/contexts/alert/application-context-onlineAert.xml]: Cannot resolve reference to bean 'operationalAlertDAO' while setting bean property 'operationalAlertDAO'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'operationalAlertDAO' defined in class path resource [com/usps/ism/techarch/contexts/alert/application-context-onlineAert.xml]: Cannot resolve reference to bean 'hibernateTemplate' while setting bean property 'hibernateTemplate'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'hibernateTemplate' defined in URL [jar:file:/C:/SVN/ism_code/CR_31_0/gbs_rcpt/receipt-web/target/webapp/WEB-INF/lib/techarch-dao-0.1.0.0-SNAPSHOT.jar!/com/usps/ism/dao/application-context-dao-hibernate-abstract.xml]: Cannot resolve reference to bean 'sessionFactory' while setting bean property 'sessionFactory'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'sessionFactory' defined in URL [jar:file:/C:/SVN/ism_code/CR_31_0/gbs_rcpt/receipt-web/target/webapp/WEB-INF/lib/techarch-dao-0.1.0.0-SNAPSHOT.jar!/com/usps/ism/dao/application-context-dao-hibernate.xml]: Invocation of init method failed; nested exception is org.hibernate.InvalidMappingException: Could not parse mapping document from input stream
Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'dispAlertOnlineArch' defined in class path resource [com/usps/ism/techarch/contexts/alert/application-context-onlineAert.xml]: Cannot resolve reference to bean 'operationalAlertDAO' while setting bean property 'operationalAlertDAO'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'operationalAlertDAO' defined in class path resource [com/usps/ism/techarch/contexts/alert/application-context-onlineAert.xml]: Cannot resolve reference to bean 'hibernateTemplate' while setting bean property 'hibernateTemplate'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'hibernateTemplate' defined in URL [jar:file:/C:/SVN/ism_code/CR_31_0/gbs_rcpt/receipt-web/target/webapp/WEB-INF/lib/techarch-dao-0.1.0.0-SNAPSHOT.jar!/com/usps/ism/dao/application-context-dao-hibernate-abstract.xml]: Cannot resolve reference to bean 'sessionFactory' while setting bean property 'sessionFactory'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'sessionFactory' defined in URL [jar:file:/C:/SVN/ism_code/CR_31_0/gbs_rcpt/receipt-web/target/webapp/WEB-INF/lib/techarch-dao-0.1.0.0-SNAPSHOT.jar!/com/usps/ism/dao/application-context-dao-hibernate.xml]: Invocation of init method failed; nested exception is org.hibernate.InvalidMappingException: Could not parse mapping document from input stream
Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'operationalAlertDAO' defined in class path resource [com/usps/ism/techarch/contexts/alert/application-context-onlineAert.xml]: Cannot resolve reference to bean 'hibernateTemplate' while setting bean property 'hibernateTemplate'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'hibernateTemplate' defined in URL [jar:file:/C:/SVN/ism_code/CR_31_0/gbs_rcpt/receipt-web/target/webapp/WEB-INF/lib/techarch-dao-0.1.0.0-SNAPSHOT.jar!/com/usps/ism/dao/application-context-dao-hibernate-abstract.xml]: Cannot resolve reference to bean 'sessionFactory' while setting bean property 'sessionFactory'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'sessionFactory' defined in URL [jar:file:/C:/SVN/ism_code/CR_31_0/gbs_rcpt/receipt-web/target/webapp/WEB-INF/lib/techarch-dao-0.1.0.0-SNAPSHOT.jar!/com/usps/ism/dao/application-context-dao-hibernate.xml]: Invocation of init method failed; nested exception is org.hibernate.InvalidMappingException: Could not parse mapping document from input stream
Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'hibernateTemplate' defined in URL [jar:file:/C:/SVN/ism_code/CR_31_0/gbs_rcpt/receipt-web/target/webapp/WEB-INF/lib/techarch-dao-0.1.0.0-SNAPSHOT.jar!/com/usps/ism/dao/application-context-dao-hibernate-abstract.xml]: Cannot resolve reference to bean 'sessionFactory' while setting bean property 'sessionFactory'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'sessionFactory' defined in URL [jar:file:/C:/SVN/ism_code/CR_31_0/gbs_rcpt/receipt-web/target/webapp/WEB-INF/lib/techarch-dao-0.1.0.0-SNAPSHOT.jar!/com/usps/ism/dao/application-context-dao-hibernate.xml]: Invocation of init method failed; nested exception is org.hibernate.InvalidMappingException: Could not parse mapping document from input stream
Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'sessionFactory' defined in URL [jar:file:/C:/SVN/ism_code/CR_31_0/gbs_rcpt/receipt-web/target/webapp/WEB-INF/lib/techarch-dao-0.1.0.0-SNAPSHOT.jar!/com/usps/ism/dao/application-context-dao-hibernate.xml]: Invocation of init method failed; nested exception is org.hibernate.InvalidMappingException: Could not parse mapping document from input stream
Caused by: org.hibernate.InvalidMappingException: Could not parse mapping document from input stream
at org.hibernate.cfg.Configuration.addInputStream(Configuration.java:508)
at org.springframework.orm.hibernate3.LocalSessionFactoryBean.buildSessionFactory(LocalSessionFactoryBean.java:651)
at org.springframework.orm.hibernate3.AbstractSessionFactoryBean.afterPropertiesSet(AbstractSessionFactoryBean.java:131)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1062)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1029)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:420)
at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:245)
at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:141)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:242)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:156)
at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:246)
at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionValueResolver.java:128)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyPropertyValues(AbstractAutowireCapableBeanFactory.java:955)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:729)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:416)
at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:245)
at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:141)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:242)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:156)
at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:246)
at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionValueResolver.java:128)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyPropertyValues(AbstractAutowireCapableBeanFactory.java:955)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:729)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:416)
at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:245)
at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:141)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:242)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:156)
at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:246)
at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionValueResolver.java:128)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyPropertyValues(AbstractAutowireCapableBeanFactory.java:955)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:729)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:416)
at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:245)
at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:141)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:242)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:156)
at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:246)
at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionValueResolver.java:128)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyPropertyValues(AbstractAutowireCapableBeanFactory.java:955)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:729)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:416)
at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:245)
at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:141)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:242)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:156)
at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:290)
at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:348)
at org.springframework.web.context.support.AbstractRefreshableWebApplicationContext.refresh(AbstractRefreshableWebApplicationContext.java:156)
at org.springframework.web.context.ContextLoader.createWebApplicationContext(ContextLoader.java:246)
at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:184)
at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:49)
at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4210)
at org.apache.catalina.core.StandardContext.start(StandardContext.java:4709)
at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:802)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:779)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:583)
at org.apache.catalina.startup.HostConfig.deployDescriptor(HostConfig.java:676)
at org.apache.catalina.startup.HostConfig.deployDescriptors(HostConfig.java:602)
at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:503)
at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1322)
at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:325)
at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:142)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1068)
at org.apache.catalina.core.StandardHost.start(StandardHost.java:822)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1060)
at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:463)
at org.apache.catalina.core.StandardService.start(StandardService.java:525)
at org.apache.catalina.core.StandardServer.start(StandardServer.java:759)
at org.apache.catalina.startup.Catalina.start(Catalina.java:595)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:289)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:414)
Caused by: org.dom4j.DocumentException: Error on line 31 of document : The
content of elements must consist of well-formed character data or markup.
Nested exception: The content of elements must consist of well-formed
character data or markup.
at org.dom4j.io.SAXReader.read(SAXReader.java:482)
at org.hibernate.cfg.Configuration.addInputStream(Configuration.java:499)
... 75 more
这是我的“application-context-hibernate.xml”
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd">
<beans>
<!-- this defines all common dao beans -->
<import resource="application-context-dao-hibernate-abstract.xml"/>
<bean id="sessionFactory" parent="sessionFactoryAbs">
<property name="mappingLocations">
<list>
<value>classpath*:com/usps/ism/domain/*.hbm.xml</value>
<value>classpath*:com/usps/ism/domain/noncascade/*.hbm.xml</value>
<value>classpath*:com/usps/ism/*/domain/*.hbm.xml</value>
</list>
</property>
</bean>
</beans>
有人可以帮我找出问题所在吗?感谢
查看我最近更改的其他hbm xml,我有一个searchquery hbm xml文件,其中包含一些格式化查询的问题。它查询oracle视图,但我无法正确地格式化比较运算符
<?xml version="1.0"?>
<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
<hibernate-mapping>
<sql-query name="countryOfInterestCountVSearchQuery">
<return alias="countryOfInterestSearchResultsDto" class="com.usps.ism.receipt.domain.CountryOfInterestSearchResultsDto" />
select distinct
ctry_intt_seq_nbr,
ctry_intt_servr_site_cd,
ML_CL_CODE,
ORGN_CTRY_CODE,
fac_isc,
eff_utc_dtm,
STS,
smpl_freq,
MAX_SMPL,
PRDCTD_RCPT_CNT,
RCPT_GRWTH_FCTR,
PRDCTD_RCPT_CNT_W_GRWTH
from ctry_intt_cnt_v cicv
where (cicv.FAC_ISC = :inputFac OR :inputFac is null)
and (cicv.ORGN_CTRY_CODE = :inputOrgnCtryCode OR :inputOrgnCtryCode is null)
and (cicv.ML_CL_CODE = :inputMlClCode OR :inputMlClCode is null)
and (cicv.STS in (:inputSts))
and (cicv.SMPL_FREQ = :inputSmplFreq OR :inputSmplFreq is null)
and ((:inputPrdctnDate IS NULL AND ((cicv.EFF_UTC_DTM > sys_extract_utc(systimestamp) AND to_char(cicv.PRDCTN_DATE, 'MM/DD/YYYY') = to_char(cicv.EFF_UTC_DTM, 'MM/DD/YYYY')) OR (cicv.EFF_UTC_DTM <=sys_extract_utc(systimestamp) AND to_char(cicv.PRDCTN_DATE, 'MM/DD/YYYY') = to_char(sys_extract_utc(systimestamp), 'MM/DD/YYYY')))) OR (:inputPrdcnDate IS NOT NULL AND cicv.PRDCTN_DATE = :inputPrdctnDATE))
</sql-query>
</hibernate-mapping>
答案 0 :(得分:2)
我不相信错误在您的application-context-hibernate.xml
本身,但是在其中一个引用的映射文件中。
线索是:
Caused by: org.hibernate.InvalidMappingException: Could not parse mapping document from input stream
Hibernate在阅读其中一个实际的地图文档*.hbm.xml
如果您对任何文件进行了任何更改,请查看,或者尝试通过在线XML验证程序运行它们,以查看是否存在格式问题。
答案 1 :(得分:0)
好的浏览一下StackOverflow,再过几次,我认为我已经把它想出来了 - 所以XML并不像那些&#39;&lt;&#39;和&#39;&gt;&#39;但是那些操作者需要的是小于和大于。 Having greater than or less than in hibernate named sql query
基本上我必须使用一些&amp; LT;而不是&#39;而不是&#39;而不是&#39;和&amp; GT;而不是&#39;&gt;&#39;