【问题标题】:Spring Servlet-Context.xml error Cannot locate BeanDefinitionParser for element [import]Spring Servlet-Context.xml 错误找不到元素的 BeanDefinitionParser [导入]
【发布时间】:2015-01-05 18:42:34
【问题描述】:

我有一个由 Eclipse 中的 STS 插件生成的 spring 项目,我正在尝试导入一个 spring-ws 文件,该文件与 servlet-context.xml 位于同一目录中,但出现错误。下面列出了 servlet 上下文文件

<?xml version="1.0" encoding="UTF-8"?>
<beans:beans xmlns="http://www.springframework.org/schema/mvc"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:beans="http://www.springframework.org/schema/beans"
    xmlns:util="http://www.springframework.org/schema/util"
    xmlns:context="http://www.springframework.org/schema/context"
    xmlns:jpa="http://www.springframework.org/schema/data/jpa"
    xmlns:tx="http://www.springframework.org/schema/tx"
    xmlns:oxm="http://www.springframework.org/schema/oxm"
    xsi:schemaLocation="http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc.xsd
        http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
        http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd
        http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx.xsd
        http://www.springframework.org/schema/data/jpa http://www.springframework.org/schema/data/jpa/spring-jpa.xsd
        http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util-2.5.xsd
        http://www.springframework.org/schema/oxm  http://www.springframework.org/schema/oxm/spring-oxm-1.5.xsd">


    <import resource="spring-ws.xml" />

    <!-- DispatcherServlet Context: defines this servlet's request-processing 
        infrastructure -->

    <!-- Enables the Spring MVC @Controller programming model -->
    <annotation-driven />

    <!-- Handles HTTP GET requests for /resources/** by efficiently serving 
        up static resources in the ${webappRoot}/resources directory -->
    <resources mapping="/resources/**" location="/resources/" />





    <!-- Resolves views selected for rendering by @Controllers to .jsp resources 
        in the /WEB-INF/views directory -->
    <beans:bean
        class="org.springframework.web.servlet.view.InternalResourceViewResolver">
        <beans:property name="prefix" value="/WEB-INF/views/" />
        <beans:property name="suffix" value=".jsp" />
    </beans:bean>



    <jpa:repositories base-package="com.crgl.crm" />
    <beans:bean id="entityManagerFactory"
        class="org.springframework.orm.jpa.LocalEntityManagerFactoryBean">
        <beans:property name="persistenceUnitName" value="defaultPersistenceUnit" />
    </beans:bean>

    <beans:bean id="transactionManager"
        class="org.springframework.orm.jpa.JpaTransactionManager">
        <beans:property name="entityManagerFactory" ref="entityManagerFactory" />
    </beans:bean>

    <tx:annotation-driven transaction-manager="transactionManager" />
    <context:component-scan base-package="com.crgl.crm" />
    <context:property-placeholder location="classpath:Services.properties" />
</beans:beans>

我得到的错误是 在这一行发现多个注释: 配置问题:找不到元素[import]的BeanDefinitionParser

【问题讨论】:

  • 您已将 mvc 命名空间设置为不包含 import 的根。您需要在 import 前面加上 beans: 前缀,就像您的 bean 元素一样。
  • 感谢您的帮助,需要弄清楚如何为您 +1 或更多

标签: xml spring spring-mvc


【解决方案1】:

在您的 XML 中,您已将 spring-mvc.xsd 设为首位。 mvc 命名空间不包含元素 import,但 spring-beans.xsd 包含。

您需要将beans 前缀添加到import 元素以使其工作。

<beans:import resource="spring-ws.xml" />

就像来自同一命名空间的bean 标记一样。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-08-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多