1
votes

Used hibernate, spring mvc. Files:

web.xml

    <web-app version="2.4"
    xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee 
    http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">

    <display-name>Spring MVC Application</display-name>
<filter>
        <filter-name>springSecurityFilterChain</filter-name>
        <filter-class>org.springframework.web.filter.DelegatingFilterProxy</filter-class>
    </filter>
    <filter-mapping>
        <filter-name>springSecurityFilterChain</filter-name>
        <url-pattern>/*</url-pattern>
    </filter-mapping>
    <servlet>
        <servlet-name>mvc-dispatcher</servlet-name>
        <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
        <load-on-startup>1</load-on-startup>
    </servlet>

    <servlet-mapping>
        <servlet-name>mvc-dispatcher</servlet-name>
        <url-pattern>/</url-pattern>
    </servlet-mapping>
    <servlet-mapping>
        <servlet-name>mvc-dispatcher</servlet-name>
        <url-pattern>/</url-pattern>
    </servlet-mapping>

    <servlet-mapping>
        <servlet-name>mvc-dispatcher</servlet-name>
        <url-pattern>*.css</url-pattern>
    </servlet-mapping>

    <servlet-mapping>
        <servlet-name>mvc-dispatcher</servlet-name>
        <url-pattern>*.js</url-pattern>
    </servlet-mapping>

    <servlet-mapping>
        <servlet-name>mvc-dispatcher</servlet-name>
        <url-pattern>*.gif</url-pattern>
    </servlet-mapping>

    <servlet-mapping>
        <servlet-name>mvc-dispatcher</servlet-name>
        <url-pattern>*.jpg</url-pattern>
    </servlet-mapping>

    <servlet-mapping>
        <servlet-name>mvc-dispatcher</servlet-name>
        <url-pattern>*.png</url-pattern>
    </servlet-mapping>
</web-app>

main context file

<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xmlns:context="http://www.springframework.org/schema/context"
       xmlns:mvc="http://www.springframework.org/schema/mvc"
       xsi:schemaLocation="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/mvc http://www.springframework.org/schema/mvc/spring-mvc.xsd"

        >
    <context:component-scan base-package="com.education"/>
    <context:component-scan base-package="com.education.controllers"/>

    <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
        <property name="prefix" value="/WEB-INF/pages/"/>
        <property name="suffix" value=".jsp"/>
    </bean>
    <mvc:annotation-driven />
    <mvc:resources mapping="/resources/**" location="/resources/" />
    <import resource="root-context.xml" />
</beans>

root-context.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:context="http://www.springframework.org/schema/context"
       xmlns:jee="http://www.springframework.org/schema/jee" xmlns:lang="http://www.springframework.org/schema/lang"
       xmlns:p="http://www.springframework.org/schema/p" xmlns:tx="http://www.springframework.org/schema/tx"
       xmlns:util="http://www.springframework.org/schema/util"
       xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
        http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop.xsd
        http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd
        http://www.springframework.org/schema/jee http://www.springframework.org/schema/jee/spring-jee.xsd
        http://www.springframework.org/schema/lang http://www.springframework.org/schema/lang/spring-lang.xsd
        http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx.xsd
        http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util.xsd">


    <context:annotation-config />


    <context:component-scan base-package="com.education.Dao" />
    <context:component-scan base-package="com.education.Service" />

    <import resource="data.xml" />


    <import resource="security.xml" />

</beans>

Before i successuly compile and run this application, then add hibernate code and this xml files and meet error.

Error code

16:40:50,403 ERROR [org.jboss.as.server] (management-handler-thread - 12) JBAS015870: Deploy of deployment "education.war" was rolled back with the following failure message: {"JBAS014671: Failed services" => {"jboss.deployment.unit.\"education.war\".POST_MODULE" => "org.jboss.msc.service.StartException in service jboss.deployment.unit.\"education.war\".POST_MODULE: JBAS018733: Failed to process phase POST_MODULE of deployment \"education.war\" Caused by: java.lang.LinkageError: Failed to link org/springframework/web/filter/GenericFilterBean (Module \"deployment.education.war:main\" from Service Module Loader) Caused by: java.lang.NoClassDefFoundError: org/springframework/context/EnvironmentAware Caused by: java.lang.ClassNotFoundException: org.springframework.context.EnvironmentAware from [Module \"deployment.education.war:main\" from Service Module Loader]"}} 16:40:50,533 INFO [org.jboss.as.server.deployment] (MSC service thread 1-7) JBAS015877: Stopped deployment education.war (runtime-name: education.war) in 130ms

2
What version of Spring are you using? - Kevin Bowersox
3.2.0 release version - Makute.two

2 Answers

1
votes

This line in the stacktrace says it all:

Caused by: java.lang.NoClassDefFoundError: org/springframework/context/EnvironmentAware Caused by: java.lang.ClassNotFoundException: org.springframework.context.EnvironmentAware

You need to add spring-context to your pom.xml file if using Maven:

<dependency>
    <groupId>org.springframework</groupId>
    <artifactId>spring-context</artifactId>
    <version>3.1.3.RELEASE</version>
</dependency>

Note the version may vary depending on your project

0
votes

I agree with Kevin that in your case the class files are missing. So you will have to place the JARs containing these class files. However I have faced this problem on Linux servers. The problem was related to file permission issue. In this case it was difficult to catch the issue as the error messages or logs didn't clearly indicate the problem. Usually Linux is good when it comes to permission issue. I was creating the WAR files as root user but was running jboss server as jboss user. Finally I had to "sudo -su jboss" (user with which Jboss server was running) and create/deploy my artifacts.