Hello,
I'm trying to make a json webservice with maven. Everything is OK but
when i put the war file in Tomcat i add the following errors
java.lang.NoClassDefFoundError: com/sun/xml/ws/api/BindingIDFactory
at java.lang.ClassLoader.findBootstrapClass(Native Method)
at java.lang.ClassLoader.findBootstrapClassOrNull(ClassLoader.java:
927)
at java.lang.ClassLoader.loadClass(ClassLoader.java:298)
at java.lang.ClassLoader.loadClass(ClassLoader.java:296)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
at java.lang.ClassLoader.loadClass(ClassLoader.java:248)
at
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:
1267)
at
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:
1198)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:247)
at com.sun.xml.ws.util.ServiceFinder
$LazyIterator.next(ServiceFinder.java:460)
at com.sun.xml.ws.util.ServiceFinder
$CompositeIterator.next(ServiceFinder.java:402)
at com.sun.xml.ws.api.BindingID.parse(BindingID.java:271)
at com.sun.xml.ws.api.BindingID.parse(BindingID.java:329)
at
com.sun.xml.ws.transport.http.DeploymentDescriptorParser.createBinding(DeploymentDescriptorParser.java:
309)
at
com.sun.xml.ws.transport.http.DeploymentDescriptorParser.parseAdapters(DeploymentDescriptorParser.java:
250)
at
com.sun.xml.ws.transport.http.DeploymentDescriptorParser.parse(DeploymentDescriptorParser.java:
153)
at
com.sun.xml.ws.transport.http.servlet.WSServletContextListener.parseAdaptersAndCreateDelegate(WSServletContextListener.java:
131)
at
com.sun.xml.ws.transport.http.servlet.WSServletContextListener.contextInitialized(WSServletContextListener.java:
152)
at
org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:
3729)
at
org.apache.catalina.core.StandardContext.start(StandardContext.java:
4187)
at
org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:
759)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:
739)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:
524)
at org.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:
809)
at org.apache.catalina.startup.HostConfig.deployWARs(HostConfig.java:
698)
at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:
472)
at org.apache.catalina.startup.HostConfig.check(HostConfig.java:1190)
at
org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:
292)
at
org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:
119)
at
org.apache.catalina.core.ContainerBase.backgroundProcess(ContainerBase.java:
1305)
at org.apache.catalina.core.ContainerBase
$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1569)
at org.apache.catalina.core.ContainerBase
$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1578)
at org.apache.catalina.core.ContainerBase
$ContainerBackgroundProcessor.run(ContainerBase.java:1558)
at java.lang.Thread.run(Thread.java:619)
6 mars 2012 11:12:03 org.apache.catalina.core.StandardContext
listenerStart
GRAVE: Exception lors de l'envoi de l'évènement contexte initialisé
(context initialized) à l'instance de classe d'écoute (listener)
com.sun.xml.ws.transport.http.servlet.WSServletContextListener
com.sun.xml.ws.transport.http.servlet.WSServletException:
WSSERVLET11 : échec de l'analyse du descripteur d'exécution :
java.lang.NoClassDefFoundError: com/sun/xml/ws/api/BindingIDFactory
at
com.sun.xml.ws.transport.http.servlet.WSServletContextListener.parseAdaptersAndCreateDelegate(WSServletContextListener.java:
141)
at
com.sun.xml.ws.transport.http.servlet.WSServletContextListener.contextInitialized(WSServletContextListener.java:
152)
at
org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:
3729)
at
org.apache.catalina.core.StandardContext.start(StandardContext.java:
4187)
at
org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:
759)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:
739)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:
524)
at org.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:
809)
at org.apache.catalina.startup.HostConfig.deployWARs(HostConfig.java:
698)
at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:
472)
at org.apache.catalina.startup.HostConfig.check(HostConfig.java:1190)
at
org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:
292)
at
org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:
119)
at
org.apache.catalina.core.ContainerBase.backgroundProcess(ContainerBase.java:
1305)
at org.apache.catalina.core.ContainerBase
$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1569)
at org.apache.catalina.core.ContainerBase
$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1578)
at org.apache.catalina.core.ContainerBase
$ContainerBackgroundProcessor.run(ContainerBase.java:1558)
at java.lang.Thread.run(Thread.java:619)
Caused by: java.lang.NoClassDefFoundError: com/sun/xml/ws/api/
BindingIDFactory
at java.lang.ClassLoader.findBootstrapClass(Native Method)
at java.lang.ClassLoader.findBootstrapClassOrNull(ClassLoader.java:
927)
at java.lang.ClassLoader.loadClass(ClassLoader.java:298)
at java.lang.ClassLoader.loadClass(ClassLoader.java:296)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
at java.lang.ClassLoader.loadClass(ClassLoader.java:248)
at
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:
1267)
at
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:
1198)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:247)
at com.sun.xml.ws.util.ServiceFinder
$LazyIterator.next(ServiceFinder.java:460)
at com.sun.xml.ws.util.ServiceFinder
$CompositeIterator.next(ServiceFinder.java:402)
at com.sun.xml.ws.api.BindingID.parse(BindingID.java:271)
at com.sun.xml.ws.api.BindingID.parse(BindingID.java:329)
at
com.sun.xml.ws.transport.http.DeploymentDescriptorParser.createBinding(DeploymentDescriptorParser.java:
309)
at
com.sun.xml.ws.transport.http.DeploymentDescriptorParser.parseAdapters(DeploymentDescriptorParser.java:
250)
at
com.sun.xml.ws.transport.http.DeploymentDescriptorParser.parse(DeploymentDescriptorParser.java:
153)
at
com.sun.xml.ws.transport.http.servlet.WSServletContextListener.parseAdaptersAndCreateDelegate(WSServletContextListener.java:
131)
... 17 more
Here is my 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.test</groupId>
<artifactId>test</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>war</packaging>
<name>test</name>
<url>
http://maven.apache.org</url>
<repositories>
<repository>
<id>
maven-repository.dev.java.net</id>
<name>Jave.net Repository Maven 1</name>
<url>
http://download.java.net/maven/1</url>
<layout>legacy</layout>
</repository>
<repository>
<id>
maven2-repository.dev.java.net</id>
<name>Jave.net Repository Maven 2</name>
<url>
http://download.java.net/maven/2</url>
</repository>
</repositories>
<pluginRepositories>
<pluginRepository>
<id>
maven2-repository.dev.java.net</id>
<url>
http://download.java.net/maven/2</url>
</pluginRepository>
</pluginRepositories>
<!-- Liste des dependances -->
<dependencies>
<dependency>
<groupId>
com.sun.xml.ws</groupId>
<artifactId>jaxws-rt</artifactId>
<version>2.2.6</version>
</dependency>
<dependency>
<groupId>org.jvnet.jax-ws-commons</groupId>
<artifactId>jaxws-json</artifactId>
<version>1.2</version>
</dependency>
</dependencies>
<!-- Build -->
<build>
<plugins>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>jaxws-maven-plugin</artifactId>
<executions>
<execution>
<goals>
<goal>wsimport</goal>
</goals>
</execution>
</executions>
<configuration>
<packageName>WS</packageName>
<sourceDestDir>${basedir}/src/main/java</sourceDestDir>
</configuration>
</plugin>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>1.6</source>
<target>1.6</target>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<version>2.4</version>
</plugin>
</plugins>
</build>
</project>
Does I miss something ?
Thank you for your help !