I used tomcat-maven-plugin 1.1 to deploy my webapp to an embedded
tomcat. It works ok. Now when I try to update to
org.apache.tomcat.maven/tomcat7-maven-plugin/2.0-beta-1, deploy fails
with an error (included in the end).

My configuration is such

- parent/web-app builds a web-app.war
- parent/acceptance-tests compiles some acceptance tests, uses
tomcat-maven-plugin to deploy web-app.war and run tests against it
- so, I do NOT use tomcat-maven-plugin from a module with war packaging

acceptance-tests/pom.xml:

    <dependency>
      <groupId>foo</groupId>
      <artifactId>my-webapp</artifactId>
      <version>${project.parent.version}</version>
      <type>war</type>
      <scope>tomcat</scope>
    </dependency>

      <plugin>
        <groupId>org.apache.tomcat.maven</groupId>
        <artifactId>tomcat7-maven-plugin</artifactId>
        <version>2.0-beta-1</version>
        <configuration>
          <addContextWarDependencies>true</addContextWarDependencies>
          <ignorePackaging>true</ignorePackaging>
          <fork>true</fork>
          <path>/</path>
          <port>8080</port>
          <httpsPort>8443</httpsPort>
          
<keystoreFile>${project.build.directory}/tomcat.keystore</keystoreFile>
          <keystorePass>tomcat</keystorePass>
        </configuration>
        <executions>
          <execution>
            <id>start-tomcat</id>
            <phase>test</phase>
            <goals>
              <goal>run</goal>
            </goals>
          </execution>
          <execution>
            <id>stop-tomcat</id>
            <phase>post-integration-test</phase>
            <goals>
              <goal>shutdown</goal>
            </goals>
          </execution>
        </executions>
      </plugin>

This setup works with 1.1, when I try 2.0-beta-1 I get:

INFO: Starting Servlet Engine: Apache Tomcat/7.0.25
21.3.2012 10:32:50 org.apache.catalina.loader.WebappClassLoader validateJarFile
INFO: 
validateJarFile(D:\foobar\parent\acceptance-tests\target\tomcat\webapps\my-webapp\WEB-INF\lib\servlet-api-2.5.jar)
- jar not loaded. See Servlet Spec 2.3, s
ection 9.7.2. Offending class: javax/servlet/Servlet.class
21.3.2012 10:32:50 org.apache.catalina.startup.ContextConfig
getDefaultWebXmlFragment
INFO: No global web.xml found
21.3.2012 10:32:50 org.apache.catalina.startup.ContextConfig webConfig
SEVERE: Unable to determine URL for WEB-INF/classes
javax.naming.NameNotFoundException: Resource /WEB-INF/classes not found
        at 
org.apache.naming.resources.BaseDirContext.listBindings(BaseDirContext.java:733)
        at 
org.apache.naming.resources.ProxyDirContext.listBindings(ProxyDirContext.java:546)
        at 
org.apache.catalina.startup.ContextConfig.webConfig(ContextConfig.java:1197)
        at 
org.apache.catalina.startup.ContextConfig.configureStart(ContextConfig.java:825)
        at 
org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:300)
        at 
org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:119)
        at 
org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:90)
        at 
org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5161)
        at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
        at 
org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1568)
        at 
org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1558)
        at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
        at java.util.concurrent.FutureTask.run(FutureTask.java:138)
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
        at java.lang.Thread.run(Thread.java:619)
21.3.2012 10:33:05 org.apache.catalina.core.ContainerBase startInternal
SEVERE: A child container failed during start
java.util.concurrent.ExecutionException:
org.apache.catalina.LifecycleException: Failed to start component
[StandardEngine[Tomcat].StandardHost[localhost].StandardContext[/]]
        at java.util.concurrent.FutureTask$Sync.innerGet(FutureTask.java:222)
        at java.util.concurrent.FutureTask.get(FutureTask.java:83)
        at 
org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:1130)
        at 
org.apache.catalina.core.StandardHost.startInternal(StandardHost.java:782)
        at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
        at 
org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1568)
        at 
org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1558)
        at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
        at java.util.concurrent.FutureTask.run(FutureTask.java:138)
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
        at java.lang.Thread.run(Thread.java:619)
Caused by: org.apache.catalina.LifecycleException: Failed to start
component [StandardEngine[Tomcat].StandardHost[localhost].StandardContext[/]]
        at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:154)
        ... 7 more
Caused by: java.lang.LinkageError: loader constraint violation: loader
(instance of org/apache/catalina/loader/WebappClassLoader) previously
initiated loading for a different type with name "javax/ser
vlet/ServletContext"
        at java.lang.ClassLoader.defineClass1(Native Method)
        at java.lang.ClassLoader.defineClass(ClassLoader.java:616)
        at 
java.security.SecureClassLoader.defineClass(SecureClassLoader.java:124)
        at java.net.URLClassLoader.defineClass(URLClassLoader.java:260)
        at java.net.URLClassLoader.access$000(URLClassLoader.java:56)
        at java.net.URLClassLoader$1.run(URLClassLoader.java:195)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
        at 
org.apache.catalina.loader.WebappClassLoader.findClass(WebappClassLoader.java:1177)
        at 
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1668)
        at 
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1546)
        at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:316)
        at 
org.springframework.web.SpringServletContainerInitializer.onStartup(SpringServletContainerInitializer.java:154)
        at 
org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5262)
        at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
        ... 7 more
21.3.2012 10:33:05 org.apache.catalina.core.ContainerBase startInternal
SEVERE: A child container failed during start
java.util.concurrent.ExecutionException:
org.apache.catalina.LifecycleException: Failed to start component
[StandardEngine[Tomcat].StandardHost[localhost]]
        at java.util.concurrent.FutureTask$Sync.innerGet(FutureTask.java:222)
        at java.util.concurrent.FutureTask.get(FutureTask.java:83)
        at 
org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:1130)
        at 
org.apache.catalina.core.StandardEngine.startInternal(StandardEngine.java:293)
        at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
        at 
org.apache.catalina.core.StandardService.startInternal(StandardService.java:443)
        at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
        at 
org.apache.catalina.core.StandardServer.startInternal(StandardServer.java:727)
        at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
        at org.apache.catalina.startup.Tomcat.start(Tomcat.java:335)
        at 
org.apache.tomcat.maven.plugin.tomcat7.run.AbstractRunMojo.startContainer(AbstractRunMojo.java:766)
        at 
org.apache.tomcat.maven.plugin.tomcat7.run.AbstractRunMojo.execute(AbstractRunMojo.java:353)
        at 
org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:101)
        at 
org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:209)
        at 
org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:153)
        at 
org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:145)
        at 
org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:84)
        at 
org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:59)
        at 
org.apache.maven.lifecycle.internal.LifecycleStarter.singleThreadedBuild(LifecycleStarter.java:183)
        at 
org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:161)
        at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:319)
        at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:156)
        at org.apache.maven.cli.MavenCli.execute(MavenCli.java:537)
        at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:196)
        at org.apache.maven.cli.MavenCli.main(MavenCli.java:141)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at 
org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:290)
        at 
org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:230)
        at 
org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:409)
        at 
org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:352)
Caused by: org.apache.catalina.LifecycleException: Failed to start
component [StandardEngine[Tomcat].StandardHost[localhost]]
        at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:154)
        at 
org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1568)
        at 
org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1558)
        at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
        at java.util.concurrent.FutureTask.run(FutureTask.java:138)
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
        at java.lang.Thread.run(Thread.java:619)
Caused by: org.apache.catalina.LifecycleException: A child container
failed during start
        at 
org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:1138)
        at 
org.apache.catalina.core.StandardHost.startInternal(StandardHost.java:782)

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org
For additional commands, e-mail: users-h...@tomcat.apache.org

Reply via email to