here is my error:
I am getting this error , can any one help me on this.
> SEVERE: Exception sending context initialized event to listener > instance of class > org.springframework.web.context.ContextLoaderListener > java.lang.NoSuchMethodError: > org.springframework.beans.factory.xml.XmlBeanDefinitionReader.setEnvironment(Lorg/springframework/core/env/Environment;)V > at > org.springframework.web.context.support.XmlWebApplicationContext.loadBeanDefinitions(XmlWebApplicationContext.java:87) > at > org.springframework.context.support.AbstractRefreshableApplicationContext.refreshBeanFactory(AbstractRefreshableApplicationContext.java:131) > at > org.springframework.context.support.AbstractApplicationContext.obtainFreshBeanFactory(AbstractApplicationContext.java:522) > at > org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:436) > at > org.springframework.web.context.ContextLoader.configureAndRefreshWebApplicationContext(ContextLoader.java:385) > at > org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:284) > at > org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:111) > at > org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4723) > at > org.apache.catalina.core.StandardContext$1.call(StandardContext.java:5226) > at > org.apache.catalina.core.StandardContext$1.call(StandardContext.java:5221) > at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source) at > java.util.concurrent.FutureTask.run(Unknown Source) at > java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source) > at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) > at java.lang.Thread.run(Unknown Source) Nov 21, 2013 12:54:38 PM > org.apache.catalina.core.StandardContext startInternal SEVERE: Error > listenerStart Nov 21, 2013 12:54:38 PM > org.apache.catalina.core.StandardContext startInternal SEVERE: Context > [/FLPalette] startup failed due to previous errors Nov 21, 2013 > 12:54:38 PM org.apache.catalina.core.ApplicationContext log INFO: > Closing Spring root WebApplicationContext Nov 21, 2013 12:54:38 PM > org.apache.catalina.core.StandardContext listenerStop SEVERE: > Exception sending context destroyed event to listener instance of > class org.springframework.web.context.ContextLoaderListener > java.lang.IllegalStateException: BeanFactory not initialized or > already closed - call 'refresh' before accessing beans via the > ApplicationContext at > org.springframework.context.support.AbstractRefreshableApplicationContext.getBeanFactory(AbstractRefreshableApplicationContext.java:172) > at > org.springframework.context.support.AbstractApplicationContext.destroyBeans(AbstractApplicationContext.java:1066) > at > org.springframework.context.support.AbstractApplicationContext.doClose(AbstractApplicationContext.java:1040) > at > org.springframework.context.support.AbstractApplicationContext.close(AbstractApplicationContext.java:988) > at > org.springframework.web.context.ContextLoader.closeWebApplicationContext(ContextLoader.java:556) > at > org.springframework.web.context.ContextLoaderListener.contextDestroyed(ContextLoaderListener.java:142) > at > org.apache.catalina.core.StandardContext.listenerStop(StandardContext.java:4763) > at > org.apache.catalina.core.StandardContext$4.run(StandardContext.java:5472) > at java.lang.Thread.run(Unknown Source) at > org.apache.catalina.core.StandardContext.stopInternal(StandardContext.java:5481) > at > org.apache.catalina.util.LifecycleBase.stop(LifecycleBase.java:225) > at > org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:153) > at > org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:1033) > at > org.apache.catalina.core.StandardHost.startInternal(StandardHost.java:774) > at > org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:145) > at > org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:1033) > at > org.apache.catalina.core.StandardEngine.startInternal(StandardEngine.java:291) > at > org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:145) > at > org.apache.catalina.core.StandardService.startInternal(StandardService.java:443) > at > org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:145) > at > org.apache.catalina.core.StandardServer.startInternal(StandardServer.java:727) > at > org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:145) > at org.apache.catalina.startup.Catalina.start(Catalina.java:620) at > sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at > sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) at > sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at > java.lang.reflect.Method.invoke(Unknown Source) at > org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:303) at > org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:431) Nov 21, > 2013 12:54:38 PM org.apache.coyote.AbstractProtocol start INFO: > Starting ProtocolHandler ["http-bio-8080"] Nov 21, 2013 12:54:38 PM > org.apache.coyote.AbstractProtocol start INFO: Starting > ProtocolHandler ["ajp-bio-8009"] Nov 21, 2013 12:54:38 PM > org.apache.catalina.startup.Catalina start
pom.xml :
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>com.paypal.palette</groupId> <artifactId>FLPalette</artifactId> <version>0.0.1-SNAPSHOT</version> <packaging>war</packaging> <name>FLPalette</name> <url>http://maven.apache.org</url> <dependencies> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>5.1.5</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-orm</artifactId> <version>${org.springframework.version}</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-beans</artifactId> <version>${org.springframework.version}</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-jdbc</artifactId> <version>${org.springframework.version}</version> </dependency> <dependency> <groupId>wsdl4j</groupId> <artifactId>wsdl4j</artifactId> <version>1.6.3</version> <scope>test</scope> </dependency> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.8.1</version> <type>jar</type> <scope>compile</scope> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-web</artifactId> <version>3.1.1.RELEASE</version> <type>jar</type> <scope>compile</scope> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-core</artifactId> <version>3.1.1.RELEASE</version> <type>jar</type> <scope>compile</scope> </dependency> <dependency> <groupId>log4j</groupId> <artifactId>log4j</artifactId> <version>1.2.14</version> <type>jar</type> <scope>compile</scope> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-tx</artifactId> <version>3.1.1.RELEASE</version> <type>jar</type> <scope>compile</scope> </dependency> <dependency> <groupId>jstl</groupId> <artifactId>jstl</artifactId> <version>1.1.2</version> <type>jar</type> <scope>compile</scope> </dependency> <dependency> <groupId>taglibs</groupId> <artifactId>standard</artifactId> <version>1.1.2</version> <type>jar</type> <scope>compile</scope> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-webmvc</artifactId> <version>3.1.1.RELEASE</version> <type>jar</type> <scope>compile</scope> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-jdbc</artifactId> <version>3.1.1.RELEASE</version> <type>jar</type> <scope>compile</scope> </dependency> <dependency> <groupId>org.springframework.security</groupId> <artifactId>spring-security-core</artifactId> <version>3.1.1.RELEASE</version> <type>jar</type> <scope>compile</scope> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-aop</artifactId> <version>3.1.1.RELEASE</version> <type>jar</type> <scope>compile</scope> </dependency> <dependency> <groupId>org.springframework.security</groupId> <artifactId>spring-security-config</artifactId> <version>3.1.1.RELEASE</version> <type>jar</type> <scope>compile</scope> </dependency> <dependency> <groupId>org.springframework.security</groupId> <artifactId>spring-security-web</artifactId> <version>3.1.1.RELEASE</version> <type>jar</type> <scope>compile</scope> </dependency> <dependency> <groupId>org.springframework.security</groupId> <artifactId>spring-security-ldap</artifactId> <version>3.1.1.RELEASE</version> <type>jar</type> <scope>compile</scope> </dependency> <dependency> <groupId>com.jcraft</groupId> <artifactId>jsch</artifactId> <version>0.1.50</version> </dependency> <dependency> <groupId>javax.servlet</groupId> <artifactId>servlet-api</artifactId> <version>2.5</version> </dependency> <dependency> <groupId>org.springframework.security</groupId> <artifactId>spring-security-taglibs</artifactId> <version>3.1.0.RELEASE</version> </dependency> <dependency> <groupId>org.json</groupId> <artifactId>json</artifactId> <version>20090211</version> </dependency> <dependency> <groupId>commons-fileupload</groupId> <artifactId>commons-fileupload</artifactId> <version>1.2.1</version> </dependency> <dependency> <groupId>commons-io</groupId> <artifactId>commons-io</artifactId> <version>1.4</version> </dependency> </dependencies> <properties> <org.springframework.version>3.0.2.RELEASE</org.springframework.version> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> </properties> <build> <finalName>${project.artifactId}</finalName> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <version>2.3.2</version> <configuration> <source>1.6</source> <target>1.6</target> </configuration> </plugin> <plugin> <artifactId>maven-war-plugin</artifactId> </plugin> </plugins> </build> </project>
This exception come due to you are providing listener ContextLoaderListener
<listener> <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class> </listener>
but you are not providing context-param
for your spring configuration file. like applicationContext.xml
You must provide below snippet for your configuration
<context-param> <param-name>contextConfigLocation</param-name> <param-value>applicationContext.xml</param-value> </context-param>
If You are providing the java based spring configuration , means you are not using xml file for spring configuration at that time you must provide below code:
<!-- Configure ContextLoaderListener to use AnnotationConfigWebApplicationContext instead of the default XmlWebApplicationContext --> <context-param> <param-name>contextClass</param-name> <param-value> org.springframework.web.context.support.AnnotationConfigWebApplicationContext </param-value> </context-param> <!-- Configuration locations must consist of one or more comma- or space-delimited fully-qualified @Configuration classes. Fully-qualified packages may also be specified for component-scanning --> <context-param> <param-name>contextConfigLocation</param-name> <param-value>com.nirav.modi.config.SpringAppConfig</param-value> </context-param>
The issue here is that the version of spring-web
that you're using (3.1.1-RELEASE) is not compatible with the version of spring-beans
that you're using (3.0.2-RELEASE). At the top of the stack you can see the NoSuchMethodError
which in turn triggers the BeanFactory not initialized...
exception.
The NoSuchMethodError
is caused because the method invocation XmlWebApplicationContext.loadBeanDefinitions()
in spring-web
is trying to call XmlBeanDefinitionReader.setEnvironment()
in spring-beans
which doesn't exist in 3.0.2-RELEASE. It does however exist in 3.1.1-RELEASE - as setEnvironment
is inherited from the parent AbstractBeanDefinitionReader
.
To resolve, you'd probably be best to upgrade the spring-beans
jar to 3.1.1-RELEASE. The version for this jar appears to be parameterized in your pom.xml and is controlled by the property org.springframework.version
further down in the file.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With