Hi I have been using Atmosphere for a web application running on tomcat 7. I now have to downgrade to Tomcat 6 due to dependency on other applications. Here is my dependency list.
<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/maven-v4_0_0.xsd"> > > <modelVersion>4.0.0</modelVersion> > > <groupId>danfoss</groupId> > > <artifactId>mws</artifactId> > > <packaging>war</packaging> > > <version>0.0.1-SNAPSHOT</version> > > <name>atmosphere Maven Webapp</name> > > <url>http://maven.apache.org</url> > > <dependencies> > > <dependency> > > <groupId>junit</groupId> > > <artifactId>junit</artifactId> > > <version>4.11</version> > > <scope>test</scope> > > </dependency> > > <!-- <dependency> --> > > <!-- <groupId>org.atmosphere</groupId> --> > > <!-- <artifactId>atmosphere-runtime</artifactId> --> > > <!-- <version>2.2.1</version> --> > > <!-- </dependency> --> > > <!-- <dependency> --> > > <!-- <groupId>org.atmosphere</groupId> --> > > <!-- <artifactId>atmosphere-runtime-native</artifactId> --> > > <!-- <version>2.2.1</version> --> > > <!-- </dependency> --> > > <dependency> > > <groupId>org.atmosphere</groupId> > > <artifactId>atmosphere-jersey</artifactId> > > <version>2.2.1</version> > > </dependency> > > <dependency> > > <groupId>org.atmosphere</groupId> > > <artifactId>atmosphere-compat-tomcat7</artifactId> > > <version>2.0.1</version> > > </dependency> > > <dependency> > > <groupId>com.sun.jersey</groupId> > > <artifactId>jersey-json</artifactId> > > <version>1.12</version> > > </dependency> > > <!-- <dependency> --> > > <!-- <groupId>javax.servlet</groupId> --> > > <!-- <artifactId>servlet-api</artifactId> --> > > <!-- <version>2.4</version> --> > > <!-- </dependency> --> > > <dependency> > > <groupId>commons-codec</groupId> > > <artifactId>commons-codec</artifactId> > > <version>1.2</version> > > </dependency> > > <!-- Swagger dependenccy for documentation --> > > <dependency> > > <groupId>com.wordnik</groupId> > > <artifactId>swagger-jaxrs_2.9.1</artifactId> > > <version>1.2.0</version> > > <scope>compile</scope> > > <exclusions> > > <exclusion> <!-- declare the exclusion here --> > > <groupId>javax.servlet</groupId> > > <artifactId>servlet-api</artifactId> > > </exclusion> > > </exclusions> > > </dependency> > > <!-- Test dependency --> > > <dependency> > > <groupId>com.sun.jersey.jersey-test-framework</groupId> > > <artifactId>jersey-test-framework-external</artifactId> > > <version>1.12</version> > > <scope>test</scope> > > <exclusions> > > <exclusion> <!-- declare the exclusion here --> > > <groupId>javax.servlet</groupId> > > <artifactId>javax.servlet-api</artifactId> > > </exclusion> > > </exclusions> > > </dependency> > > <!-- Test dependency --> > > <dependency> > > <groupId>com.sun.jersey.contribs.jersey-oauth</groupId> > > <artifactId>oauth-client</artifactId> > > <version>1.12</version> > > </dependency> > > <dependency> > > <groupId>com.sun.jersey.contribs.jersey-oauth</groupId> > > <artifactId>oauth-server</artifactId> > > <version>1.12</version> > > </dependency> > > <dependency> > > <groupId>com.sun.jersey.contribs.jersey-oauth</groupId> > > <artifactId>oauth-signature</artifactId> > > <version>1.12</version> > > </dependency> > > <dependency> > > <groupId>c3p0</groupId> > > <artifactId>c3p0</artifactId> > > <version>0.9.1.2</version> > > </dependency> > > </dependencies> > > <build> > > <plugins> > > <plugin> > > <groupId>org.apache.maven.plugins</groupId> > > <artifactId>maven-compiler-plugin</artifactId> > > <version>2.3.2</version> > > <configuration> > > <source>1.7</source> > > <target>1.7</target> > > </configuration> > > </plugin> > > <plugin> > > <groupId>org.apache.maven.plugins</groupId> > > <artifactId>maven-war-plugin</artifactId> > > <version>2.3</version> > > <configuration> > > <webResources> > > <resource> > > <!-- this is relative to the pom.xml directory --> > > <directory>WebResources</directory> > > </resource> > > </webResources> > > </configuration> > > </plugin> > > <plugin> > > <groupId>org.apache.maven.plugins</groupId> > > <artifactId>maven-surefire-plugin</artifactId> > > <version>2.9</version> > > <configuration> > > <skip>false</skip> > > </configuration> > > <executions> > > <execution> > > <id>surefire-it</id> > > <phase>integration-test</phase> > > <goals> > > <goal>test</goal> > > </goals> > > <configuration> > > <skip>false</skip> > > </configuration> > > </execution> > > </executions> > > </plugin> > > </plugins> > > <finalName>mws</finalName> > > </build> > > </project> > > > I keep getting the error: 17553 [http-8080-2] WARN org.atmosphere.util.IOUtils - META-INF/services/org.atmosphere.cpr.AtmosphereFramework not found in class loader 17565 [http-8080-2] ERROR org.atmosphere.cpr.AtmosphereFramework - Failed to initialize Atmosphere Framework java.lang.NoClassDefFoundError: javax/servlet/ServletContainerInitializer at java.lang.ClassLoader.defineClass1(Native Method) at java.lang.ClassLoader.defineClass(ClassLoader.java:800) at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142) at org.apache.catalina.loader.WebappClassLoader.findClassInternal(WebappClassLoader.java:2854) at org.apache.catalina.loader.WebappClassLoader.findClass(WebappClassLoader.java:1159) at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1647) at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1526) at org.atmosphere.cpr.ApplicationConfig.<clinit>(ApplicationConfig.java:796) at org.atmosphere.cpr.AtmosphereFramework.preventOOM(AtmosphereFramework.java:775) at org.atmosphere.cpr.AtmosphereFramework.init(AtmosphereFramework.java:845) at org.atmosphere.cpr.AtmosphereFramework.init(AtmosphereFramework.java:767) at org.atmosphere.cpr.AtmosphereServlet.configureFramework(AtmosphereServlet.java:101) at org.atmosphere.cpr.AtmosphereServlet.init(AtmosphereServlet.java:80) at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1213) at org.apache.catalina.core.StandardWrapper.allocate(StandardWrapper.java:827) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:129) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293) at org.apache.coyote.http11.Http11AprProcessor.process(Http11AprProcessor.java:879) at org.apache.coyote.http11.Http11AprProtocol$Http11ConnectionHandler.process(Http11AprProtocol.java:617) at org.apache.tomcat.util.net.AprEndpoint$Worker.run(AprEndpoint.java:1760) at java.lang.Thread.run(Thread.java:745) Caused by: java.lang.ClassNotFoundException: javax.servlet.ServletContainerInitializer at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1680) at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1526) ... 25 more In order to be compatible with tomcat 6, i changed the dynamic web module from 3.0 to 2.5. Could you please help me resolve this?