简体   繁体   中英

Exception rising while running spring mvc-hibernate application

I am getting the following exception

org.springframework.beans.factory.xml.XmlBeanDefinitionStoreException: Line 8 in XML document from ServletContext resource [/WEB-INF/spring/appServlet/servlet-context.xml] is invalid; nested exception is org.xml.sax.SAXParseException; lineNumber: 8; columnNumber: 107; cvc-elt.1.a: Cannot find the declaration of element 'beans:beans'

My servlet-context.xml is as follows,

<?xml version="1.0" encoding="UTF-8"?>
<beans:beans xmlns="https://www.springframework.org/schema/mvc"
 xmlns:xsi="https://www.w3.org/2001/XMLSchema-instance" 
  xmlns:beans="https://www.springframework.org/schema/beans"
   xmlns:context="https://www.springframework.org/schema/context" 
    xmlns:tx="https://www.springframework.org/schema/tx"
    xsi:schemaLocation="https://www.springframework.org/schema/mvc 
     https://www.springframework.org/schema/mvc/spring-mvc.xsd
    https://www.springframework.org/schema/beans https://www.springframework.org/schema/beans/spring- 
    beans.xsd
    https://www.springframework.org/schema/context 
    https://www.springframework.org/schema/context/spring-context.xsd
    https://www.springframework.org/schema/tx https://www.springframework.org/schema/tx/spring-tx- 
    4.0.xsd">

     <!-- 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>

        <beans:bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource"
        destroy-method="close">
        <beans:property name="driverClassName" value="com.mysql.jdbc.Driver" />
        <beans:property name="url"
        value="jdbc:mysql://localhost:3306/schoolmanagementsystem" />
         <beans:property name="username" value="root" />
         <beans:property name="password" value="root" />
         </beans:bean>

          <!-- Hibernate 4 SessionFactory Bean definition -->
         <beans:bean id="hibernate4AnnotatedSessionFactory"
          class="org.springframework.orm.hibernate4.LocalSessionFactoryBean">
           <beans:property name="dataSource" ref="dataSource" />
           <beans:property name="annotatedClasses">
            <beans:list>
            <beans:value>com.srinath.model.Student</beans:value>
            </beans:list>
           </beans:property>
           <beans:property name="hibernateProperties">
            <beans:props>
            <beans:prop key="hibernate.dialect">org.hibernate.dialect.MySQLDialect
            </beans:prop>
            <beans:prop key="hibernate.show_sql">true</beans:prop>
             </beans:props>
             </beans:property>
              </beans:bean>

              <beans:bean id="studentDao" class="com.srinath.dao.StudentDaoImpl">
                <beans:property name="sessionFactory" ref="hibernate4AnnotatedSessionFactory" />
                </beans:bean>
               <beans:bean id="studentService" class="com.srinath.service.StudentServiceImpl">
                <beans:property name="studentDao" ref="studentDao"></beans:property>
                </beans:bean>
                  <context:component-scan base-package="com.srinath.controllers" />

                 <tx:annotation-driven transaction-manager="transactionManager"/>

                 <beans:bean id="transactionManager" 
                     class="org.springframework.orm.hibernate4.HibernateTransactionManager">
                  <beans:property name="sessionFactory" ref="hibernate4AnnotatedSessionFactory" />
                   </beans:bean>

                   </beans:beans>

I have took the integration code of spring mvc and hibernate application.I have changed few code as per my requirement.Getting the above exception while running the code.Is there any solution.The code which I have took is running well.But unable to run this modified code.

I suppose problem may be with the namespaces starting with https vs http . Try to use following namespace declarations in root element:

<beans:beans xmlns:beans="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
       xmlns:context="http://www.springframework.org/schema/context"
       xmlns="http://www.springframework.org/schema/mvc"
       xmlns:tx="http://www.springframework.org/schema/tx"
       xsi:schemaLocation="http://www.springframework.org/schema/beans 
    https://www.springframework.org/schema/beans/spring-beans.xsd 
    http://www.springframework.org/schema/context 
    https://www.springframework.org/schema/context/spring-context.xsd
    http://www.springframework.org/schema/mvc
    https://www.springframework.org/schema/mvc/spring-mvc.xsd
    http://www.springframework.org/schema/tx 
    https://www.springframework.org/schema/tx/spring-tx.xsd">

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM