Bonjour,

J'ai développé un webservice sur Axis2 1.4.1 et Apache Tomcat 6.0.18 qui fonctionnait très bien mais il nous a été demandé de migrer ça sur les nouvelles releases des plateforme cités et là les problèmes ont commencé :

Les méthodes retournant des types simples (String, int, ...) fonctionnent toujours comme avant, mais les méthodes retournant des types complexes (des POJOs bien formés) ne fonctionne plus et lorsque l'on les appelle, la sortie de Tomcat est la 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
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
 
10 juin 2009 09:58:01 org.apache.tomcat.util.digester.SetPropertiesRule begin
ATTENTION: [SetPropertiesRule]{Server/Service/Engine/Host/Context} Setting property 'debug' to '0' did not find a matching property.
10 juin 2009 09:58:02 org.apache.catalina.core.AprLifecycleListener init
INFO: The APR based Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: .:/Library/Java/Extensions:/System/Library/Java/Extensions:/usr/lib/java
10 juin 2009 09:58:02 org.apache.coyote.http11.Http11Protocol init
INFO: Initialisation de Coyote HTTP/1.1 sur http-8080
10 juin 2009 09:58:02 org.apache.catalina.startup.Catalina load
INFO: Initialization processed in 572 ms
10 juin 2009 09:58:02 org.apache.catalina.core.StandardService start
INFO: Démarrage du service Catalina
10 juin 2009 09:58:02 org.apache.catalina.core.StandardEngine start
INFO: Starting Servlet Engine: Apache Tomcat/6.0.20
[INFO] Clustering has been disabled
[INFO] Deploying module: addressing-1.5 - file:/opt/share/apache-tomcat-6.0.20/webapps/axis2/WEB-INF/modules/addressing-1.5.mar
[INFO] Deploying module: metadataExchange-1.5 - file:/opt/share/apache-tomcat-6.0.20/webapps/axis2/WEB-INF/modules/mex-1.5.mar
[INFO] Deploying module: mtompolicy-1.5 - file:/opt/share/apache-tomcat-6.0.20/webapps/axis2/WEB-INF/modules/mtompolicy-1.5.mar
[INFO] Deploying module: ping-1.5 - file:/opt/share/apache-tomcat-6.0.20/webapps/axis2/WEB-INF/modules/ping-1.5.mar
[INFO] Deploying module: script-1.5 - file:/opt/share/apache-tomcat-6.0.20/webapps/axis2/WEB-INF/modules/scripting-1.5.mar
[INFO] Deploying module: soapmonitor-1.5 - file:/opt/share/apache-tomcat-6.0.20/webapps/axis2/WEB-INF/modules/soapmonitor-1.5.mar
[INFO] Deploying module: metadataExchange-1.5 - file:/opt/share/apache-tomcat-6.0.20/webapps/axis2/WEB-INF/lib/mex-1.5.jar
[INFO] Deploying Web service: Services.aar - file:/opt/share/apache-tomcat-6.0.20/webapps/axis2/WEB-INF/services/Services.aar
[INFO] Deploying Web service: version.aar - file:/opt/share/apache-tomcat-6.0.20/webapps/axis2/WEB-INF/services/version.aar
10 juin 2009 09:58:05 org.apache.coyote.http11.Http11Protocol start
INFO: Démarrage de Coyote HTTP/1.1 sur http-8080
10 juin 2009 09:58:05 org.apache.jk.common.ChannelSocket init
INFO: JK: ajp13 listening on /0.0.0.0:8009
10 juin 2009 09:58:05 org.apache.jk.server.JkMain start
INFO: Jk running ID=0 time=1/21  config=null
10 juin 2009 09:58:05 org.apache.catalina.startup.Catalina start
INFO: Server startup in 3123 ms
log4j:ERROR LogMananger.repositorySelector was null likely due to error in class reloading, using NOPLoggerRepository.
10 juin 2009 09:58:16 org.apache.catalina.core.StandardContext reload
INFO: Le rechargement de ce contexte a démarré
[INFO] Clustering has been disabled
[INFO] Deploying module: addressing-1.5 - file:/opt/share/apache-tomcat-6.0.20/webapps/axis2/WEB-INF/modules/addressing-1.5.mar
[INFO] Deploying module: metadataExchange-1.5 - file:/opt/share/apache-tomcat-6.0.20/webapps/axis2/WEB-INF/modules/mex-1.5.mar
[INFO] Deploying module: mtompolicy-1.5 - file:/opt/share/apache-tomcat-6.0.20/webapps/axis2/WEB-INF/modules/mtompolicy-1.5.mar
[INFO] Deploying module: ping-1.5 - file:/opt/share/apache-tomcat-6.0.20/webapps/axis2/WEB-INF/modules/ping-1.5.mar
[INFO] Deploying module: script-1.5 - file:/opt/share/apache-tomcat-6.0.20/webapps/axis2/WEB-INF/modules/scripting-1.5.mar
[INFO] Deploying module: soapmonitor-1.5 - file:/opt/share/apache-tomcat-6.0.20/webapps/axis2/WEB-INF/modules/soapmonitor-1.5.mar
[INFO] Deploying module: metadataExchange-1.5 - file:/opt/share/apache-tomcat-6.0.20/webapps/axis2/WEB-INF/lib/mex-1.5.jar
[INFO] Deploying Web service: Services.aar - file:/opt/share/apache-tomcat-6.0.20/webapps/axis2/WEB-INF/services/Services.aar
[INFO] Deploying Web service: version.aar - file:/opt/share/apache-tomcat-6.0.20/webapps/axis2/WEB-INF/services/version.aar
[ERROR] 
java.lang.IllegalArgumentException
        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:585)
        at org.apache.axis2.rpc.receivers.RPCUtil.invokeServiceClass(RPCUtil.java:194)
        at org.apache.axis2.rpc.receivers.RPCMessageReceiver.invokeBusinessLogic(RPCMessageReceiver.java:102)
        at org.apache.axis2.receivers.AbstractInOutMessageReceiver.invokeBusinessLogic(AbstractInOutMessageReceiver.java:40)
        at org.apache.axis2.receivers.AbstractMessageReceiver.receive(AbstractMessageReceiver.java:114)
        at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:173)
        at org.apache.axis2.transport.http.util.RESTUtil.invokeAxisEngine(RESTUtil.java:135)
        at org.apache.axis2.transport.http.util.RESTUtil.processURLRequest(RESTUtil.java:130)
        at org.apache.axis2.transport.http.AxisServlet$RestRequestProcessor.processURLRequest(AxisServlet.java:838)
        at org.apache.axis2.transport.http.AxisServlet.doGet(AxisServlet.java:262)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
        at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
        at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
        at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
        at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
        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.Http11Processor.process(Http11Processor.java:849)
        at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
        at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:454)
        at java.lang.Thread.run(Thread.java:613)
[ERROR] 
org.apache.axis2.AxisFault
        at org.apache.axis2.AxisFault.makeFault(AxisFault.java:430)
        at org.apache.axis2.rpc.receivers.RPCMessageReceiver.invokeBusinessLogic(RPCMessageReceiver.java:161)
        at org.apache.axis2.receivers.AbstractInOutMessageReceiver.invokeBusinessLogic(AbstractInOutMessageReceiver.java:40)
        at org.apache.axis2.receivers.AbstractMessageReceiver.receive(AbstractMessageReceiver.java:114)
        at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:173)
        at org.apache.axis2.transport.http.util.RESTUtil.invokeAxisEngine(RESTUtil.java:135)
        at org.apache.axis2.transport.http.util.RESTUtil.processURLRequest(RESTUtil.java:130)
        at org.apache.axis2.transport.http.AxisServlet$RestRequestProcessor.processURLRequest(AxisServlet.java:838)
        at org.apache.axis2.transport.http.AxisServlet.doGet(AxisServlet.java:262)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
        at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
        at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
        at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
        at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
        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.Http11Processor.process(Http11Processor.java:849)
        at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
        at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:454)
        at java.lang.Thread.run(Thread.java:613)
Caused by: java.lang.IllegalArgumentException
        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:585)
        at org.apache.axis2.rpc.receivers.RPCUtil.invokeServiceClass(RPCUtil.java:194)
        at org.apache.axis2.rpc.receivers.RPCMessageReceiver.invokeBusinessLogic(RPCMessageReceiver.java:102)
        ... 21 more
Sachant que j'ai développé mon webservice directement en Java et en générant le WSDL avec Java2WSDL, voici le WSDL généré (en XML pour l'upload) :

Services.xml

Et voici le code source du webservice en question qui pour le moment qui n'utilise que du JDBC :

Services.java

Si vous pouviez m'éclairer sur les erreurs que j'aurais pu commettre ou sur une configuration que j'aurais oublié. Merci d'avance.

Marc