IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Services Web Java Discussion :

JAX-RS avec CXF


Sujet :

Services Web Java

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Février 2005
    Messages
    351
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Février 2005
    Messages : 351
    Points : 346
    Points
    346
    Par défaut JAX-RS avec CXF
    Bonjour,

    afin de commencer simplement avec JAX-RS, je me suis basé sur l'exemple illusté à l'url suivant:

    http://www.javatips.net/blog/2012/10...without-spring

    où j'ai développé mon service web dans Eclipse. Lors du démarrage du serveur depuis Eclipse, j'ai l'erreur suivante qui survient dans la console:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
     
    INFO: Server startup in 6968 ms
    mai 08, 2013 2:39:37 PM org.apache.cxf.endpoint.ServerImpl initDestination
    INFO: Setting the server's publish address to be /
    mai 08, 2013 2:39:38 PM org.apache.cxf.service.factory.ReflectionServiceFactoryBean buildServiceFromWSDL
    INFO: Creating Service {http://docs.oasis-open.org/ws-dd/ns/discovery/2009/01}Discovery from WSDL: classpath:/org/apache/cxf/ws/discovery/wsdl/wsdd-discovery-1.1-wsdl-os.wsdl
    mai 08, 2013 2:39:38 PM org.apache.cxf.endpoint.ServerImpl initDestination
    INFO: Setting the server's publish address to be soap.udp://239.255.255.250:3702
    mai 08, 2013 2:39:38 PM org.apache.catalina.core.ApplicationContext log
    SEVERE: StandardWrapper.Throwable
    org.apache.cxf.service.factory.ServiceConstructionException
    	at org.apache.cxf.jaxrs.JAXRSServerFactoryBean.create(JAXRSServerFactoryBean.java:201)
    	at org.apache.cxf.jaxrs.servlet.CXFNonSpringJaxrsServlet.init(CXFNonSpringJaxrsServlet.java:140)
    	at org.apache.catalina.core.StandardWrapper.initServlet(StandardWrapper.java:1280)
    	at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1193)
    	at org.apache.catalina.core.StandardWrapper.allocate(StandardWrapper.java:865)
    	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:136)
    	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123)
    	at org.apache.tomee.catalina.OpenEJBValve.invoke(OpenEJBValve.java:45)
    	at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472)
    	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:171)
    	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:99)
    	at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:936)
    	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
    	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:407)
    	at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1004)
    	at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:589)
    	at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:310)
    	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
    	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
    	at java.lang.Thread.run(Thread.java:722)
    Caused by: java.lang.NullPointerException
    	at org.apache.cxf.ws.discovery.internal.WSDiscoveryServiceImpl.serverStarted(WSDiscoveryServiceImpl.java:126)
    	at org.apache.cxf.ws.discovery.listeners.WSDiscoveryServerListener.startServer(WSDiscoveryServerListener.java:72)
    	at org.apache.cxf.bus.managers.ServerLifeCycleManagerImpl.startServer(ServerLifeCycleManagerImpl.java:61)
    	at org.apache.cxf.endpoint.ServerImpl.start(ServerImpl.java:146)
    	at org.apache.cxf.jaxrs.JAXRSServerFactoryBean.create(JAXRSServerFactoryBean.java:192)
    	... 19 more
     
    mai 08, 2013 2:39:38 PM org.apache.catalina.core.StandardWrapperValve invoke
    SEVERE: Exception lors de l'allocation pour la servlet CXF Servlet
    java.lang.NullPointerException
    	at org.apache.cxf.ws.discovery.internal.WSDiscoveryServiceImpl.serverStarted(WSDiscoveryServiceImpl.java:126)
    	at org.apache.cxf.ws.discovery.listeners.WSDiscoveryServerListener.startServer(WSDiscoveryServerListener.java:72)
    	at org.apache.cxf.bus.managers.ServerLifeCycleManagerImpl.startServer(ServerLifeCycleManagerImpl.java:61)
    	at org.apache.cxf.endpoint.ServerImpl.start(ServerImpl.java:146)
    	at org.apache.cxf.jaxrs.JAXRSServerFactoryBean.create(JAXRSServerFactoryBean.java:192)
    	at org.apache.cxf.jaxrs.servlet.CXFNonSpringJaxrsServlet.init(CXFNonSpringJaxrsServlet.java:140)
    	at org.apache.catalina.core.StandardWrapper.initServlet(StandardWrapper.java:1280)
    	at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1193)
    	at org.apache.catalina.core.StandardWrapper.allocate(StandardWrapper.java:865)
    	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:136)
    	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123)
    	at org.apache.tomee.catalina.OpenEJBValve.invoke(OpenEJBValve.java:45)
    	at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472)
    	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:171)
    	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:99)
    	at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:936)
    	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
    	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:407)
    	at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1004)
    	at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:589)
    	at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:310)
    	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
    	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
    	at java.lang.Thread.run(Thread.java:722)
    Au niveau du navrigateur, j'ai l'erreur suivante:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
     
    Etat HTTP 500 - "Servlet.init()" pour la servlet CXF Servlet a généré une exception
     
    type Rapport d''exception
     
    message "Servlet.init()" pour la servlet CXF Servlet a généré une exception
     
    description Le serveur a rencontré une erreur interne qui l''a empêché de satisfaire la requête.
     
    exception
     
    javax.servlet.ServletException: "Servlet.init()" pour la servlet CXF Servlet a généré une exception
    	org.apache.tomee.catalina.OpenEJBValve.invoke(OpenEJBValve.java:45)
    	org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472)
    	org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:99)
    	org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:936)
    	org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:407)
    	org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1004)
    	org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:589)
    	org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:310)
    	java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
    	java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
    	java.lang.Thread.run(Thread.java:722)
     
    cause mère
     
    org.apache.cxf.service.factory.ServiceConstructionException
    	org.apache.cxf.jaxrs.JAXRSServerFactoryBean.create(JAXRSServerFactoryBean.java:201)
    	org.apache.cxf.jaxrs.servlet.CXFNonSpringJaxrsServlet.init(CXFNonSpringJaxrsServlet.java:140)
    	org.apache.tomee.catalina.OpenEJBValve.invoke(OpenEJBValve.java:45)
    	org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472)
    	org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:99)
    	org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:936)
    	org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:407)
    	org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1004)
    	org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:589)
    	org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:310)
    	java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
    	java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
    	java.lang.Thread.run(Thread.java:722)
     
    cause mère
     
    java.lang.NullPointerException
    	org.apache.cxf.ws.discovery.internal.WSDiscoveryServiceImpl.serverStarted(WSDiscoveryServiceImpl.java:126)
    	org.apache.cxf.ws.discovery.listeners.WSDiscoveryServerListener.startServer(WSDiscoveryServerListener.java:72)
    	org.apache.cxf.bus.managers.ServerLifeCycleManagerImpl.startServer(ServerLifeCycleManagerImpl.java:61)
    	org.apache.cxf.endpoint.ServerImpl.start(ServerImpl.java:146)
    	org.apache.cxf.jaxrs.JAXRSServerFactoryBean.create(JAXRSServerFactoryBean.java:192)
    	org.apache.cxf.jaxrs.servlet.CXFNonSpringJaxrsServlet.init(CXFNonSpringJaxrsServlet.java:140)
    	org.apache.tomee.catalina.OpenEJBValve.invoke(OpenEJBValve.java:45)
    	org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472)
    	org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:99)
    	org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:936)
    	org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:407)
    	org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1004)
    	org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:589)
    	org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:310)
    	java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
    	java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
    	java.lang.Thread.run(Thread.java:722)
     
    note La trace complète de la cause mère de cette erreur est disponible dans les fichiers journaux de Apache Tomcat (TomEE)/7.0.37.
    Apache Tomcat (TomEE)/7.0.37
    Dans le fichier web.xml, j'ai le contenu suivant:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
     
    <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" id="WebApp_ID" version="3.0">
    	<servlet>
    		<display-name>CXFServlet</display-name>
    		<servlet-name>CXF Servlet</servlet-name>
    		<servlet-class>org.apache.cxf.jaxrs.servlet.CXFNonSpringJaxrsServlet
    		</servlet-class>
    		<init-param>
    			<param-name>jaxrs.serviceClasses</param-name>
    			<param-value>com.student.ChangeStudentDetailsImpl</param-value>
    		</init-param>
    		<init-param>
    			<param-name>jaxrs.providers</param-name>
    			<param-value>com.student.ChangeStudentDetailsImpl</param-value>
    		</init-param>
     
    		<init-param>
    			<param-name>jaxrs.address</param-name>
    			<param-value>/rest</param-value>
    		</init-param>
    	</servlet>
    	<servlet-mapping>
    		<servlet-name>CXF Servlet</servlet-name>
    		<url-pattern>/*</url-pattern>
    	</servlet-mapping>
    </web-app>
    Est-ce que quelqu'un aurait une idée sur cette erreur liée à "Servlet.init()" ?

    D'avance je vous remercie pour votre aide!

    Cédric

  2. #2
    Membre averti
    Profil pro
    Inscrit en
    Février 2005
    Messages
    351
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Février 2005
    Messages : 351
    Points : 346
    Points
    346
    Par défaut
    Bonjour,

    voilà j'ai réslu mon problème en supprimant les fichier "jars" "ws-discovery..." dans le dossier \lib de cxf 2.7.3. J'ai aussi essayé la version 2.7.4 et ce bug n'apparaît plus!

    Cédric

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Gérer les string vides avec CXF
    Par PNL dans le forum Services Web
    Réponses: 0
    Dernier message: 24/03/2009, 13h18
  2. SOAP avec cxf
    Par Shivan dans le forum Services Web
    Réponses: 1
    Dernier message: 02/03/2009, 10h55
  3. Consommer un web service JAX-WS avec un client JDK 1.4 ?
    Par Jibee dans le forum Services Web
    Réponses: 1
    Dernier message: 23/10/2008, 11h47
  4. Petit exemple web service avec CXF
    Par lucy in the sky dans le forum Services Web
    Réponses: 28
    Dernier message: 28/05/2008, 12h52
  5. Réponses: 4
    Dernier message: 11/04/2008, 17h29

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo