当我重新启动tomcat“Context initialization failed”
时出现此错误[ERROR][2013-02-26 15:48:49,432][ContextLoader] - [Context initialization failed]
org.springframework.beans.factory.parsing.BeanDefinitionParsingException: Configuration problem: Failed to import bean definitions from relative location [applications\applications.xml]
Offending resource: ServletContext resource [/WEB-INF/config/context/appContext.xml]; nested exception is org.springframework.beans.factory.parsing.BeanDefinitionParsingException: Configuration problem: Failed to import bean definitions from relative location [..\..\..\..\schema\ab- products\common\resources\appContext-services.xml]
Offending resource: ServletContext resource [/WEB-INF/config/context/applications/applications.xml]; nested exception is org.springframework.beans.factory.BeanDefinitionStoreException: IOException parsing XML document from ServletContext resource [/schema/ab-products/common/resources/appContext-services.xml]; nested exception is java.io.FileNotFoundException: Could not open ServletContext resource [/schema/ab-products/common/resources/appContext-services.xml]
这是appContext-services.xml,它存在于/schema/ab-products/common/resources/appContext-services.xml
<?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:aop="http://www.springframework.org/schema/aop"
xmlns:p="http://www.springframework.org/schema/p"
xmlns:util="http://www.springframework.org/schema/util"
xmlns:security="http://www.springframework.org/schema/security"
xsi:schemaLocation="
http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd
http://www.springframework.org/schema/security http://www.springframework.org/schema/security/spring-security-2.0.xsd
http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-2.0.xsd
http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util-2.0.xsd">
<!-- ========================= Start of SERVICE DEFINITIONS ========================= -->
<!--
Per-activity configuration bean.
-->
<bean id="AbCommonResources-configuration"
class="com.archibus.service.cost.Configuration">
<property name="defaultDateStart" value="1980-01-01" />
<property name="defaultDateEnd" value="2099-12-31" />
</bean>
<!--
Remote version of CostService. This service is not used when the client calls WFRs.
TODO: fix proxyInterfaces="com.archibus.utility.Immutable": define and use ICostService interface.
-->
<bean id="CostService-remote"
class="org.springframework.aop.framework.ProxyFactoryBean"
p:proxyInterfaces="com.archibus.utility.Immutable"
p:target-ref="CostService">
<property name="interceptorNames">
<list>
<value>securityInterceptor</value>
<value>exceptionHandlingInterceptor</value>
</list>
</property>
</bean>
<!--
Local version of CostService, used by WFRs.
-->
<bean id="CostService"
class="com.archibus.service.cost.CostService"
scope="prototype"
p:configuration-ref="AbCommonResources-configuration">
</bean>
<!--
Cost beans.
-->
<bean id="actualCost"
class="com.archibus.app.common.finance.domain.ActualCost"
scope="prototype">
</bean>
<bean id="scheduledCost"
class="com.archibus.app.common.finance.domain.ScheduledCost"
scope="prototype">
</bean>
<bean id="recurringCost"
class="com.archibus.app.common.finance.domain.RecurringCost"
p:configuration-ref="AbCommonResources-configuration"
scope="prototype">
</bean>
这里是applications.xml
<?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-2.0.xsd
http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-2.0.xsd">
<import resource="..\..\..\..\schema\ab-products\common\resources\appContext-services.xml" />
答案 0 :(得分:1)
感谢您的回复,我解决了这个问题。它是关于java版本的。我将我的java版本1.4改为1.6,所以现在没有问题。
答案 1 :(得分:0)
善良 - 这是你的问题:
java.io.FileNotFoundException: Could not open ServletContext resource [/schema/ab-products/common/resources/appContext-services.xml]
Spring无法在CLASSPATH中找到该应用程序上下文XML。
检查位置以及您在web.xml中声明它的方式。其中一个或两个都错了。
答案 2 :(得分:0)
问题可能是您的xml文件位置
FileNotFoundException意味着它无法在该路径中找到该文件。
答案 3 :(得分:0)
堆栈错误非常清楚。
加载时,上下文初始化失败
/WEB-INF/config/context/applications/applications.xml
我猜你要导入以下文件,
/schema/ab-products/common/resources/appContext-services.xml
将文件移至
/WEB-INF/config/context/applications/
并在applications.xml
答案 4 :(得分:0)
问题似乎是:
nested exception is java.io.FileNotFoundException: Could not open ServletContext resource [/schema/ab-products/common/resources/appContext-services.xml] at
appContext-services.xml
是否存在于指定位置,并且可读(即具有正确的权限)?