bonjour,
J'essai vainement de renvoyer un tableau d'objets (ArrayList, List, etc...) mais j'ai toujours le même warning et plantage avec RAD7 et JAX-RPC 1.1 :
ArrayList ne valide pas les spéc JAX-RPC 1.1
Pourtant il semble que ce sont des types supportés.
J'ai essayé de passer par un tableau d'objets, mais la encore une erreur propre WS :
Voici le code du service à implémenté :
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 [11/01/10 17:31:09:239 CET] 00000034 ServletWrappe E SRVE0068E: Exception non interceptée émise par une des méthodes de service du servlet : com_bnpparibas_services_appli_dlf_evt_Appli_Dlf_Evt. Exception : java.lang.NullPointerException at com.ibm.ws.webservices.engine.transport.http.WebServicesServlet.processWsdlRequest(WebServicesServlet.java:315) at com.ibm.ws.webservices.engine.transport.http.WebServicesServlet.doGet(WebServicesServlet.java:624) at javax.servlet.http.HttpServlet.service(HttpServlet.java:743) at com.ibm.ws.webservices.engine.transport.http.WebServicesServletBase.service(WebServicesServletBase.java:341) at javax.servlet.http.HttpServlet.service(HttpServlet.java:856) at com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:1146) at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:593) at com.ibm.ws.wswebcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:533) at com.ibm.ws.webcontainer.webapp.WebApp.handleRequest(WebApp.java:3548) at com.ibm.ws.webcontainer.webapp.WebGroup.handleRequest(WebGroup.java:269) at com.ibm.ws.webcontainer.WebContainer.handleRequest(WebContainer.java:818) at com.ibm.ws.wswebcontainer.WebContainer.handleRequest(WebContainer.java:1478) at com.ibm.ws.webcontainer.channel.WCChannelLink.ready(WCChannelLink.java:125) at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleDiscrimination(HttpInboundLink.java:458) at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleNewInformation(HttpInboundLink.java:387) at com.ibm.ws.http.channel.inbound.impl.HttpICLReadCallback.complete(HttpICLReadCallback.java:102) at com.ibm.ws.tcp.channel.impl.AioReadCompletionListener.futureCompleted(AioReadCompletionListener.java:165) at com.ibm.io.async.AbstractAsyncFuture.invokeCallback(AbstractAsyncFuture.java:217) at com.ibm.io.async.AsyncChannelFuture.fireCompletionActions(AsyncChannelFuture.java:161) at com.ibm.io.async.AsyncFuture.completed(AsyncFuture.java:136) at com.ibm.io.async.ResultHandler.complete(ResultHandler.java:196) at com.ibm.io.async.ResultHandler.runEventProcessingLoop(ResultHandler.java:751) at com.ibm.io.async.ResultHandler$2.run(ResultHandler.java:881) at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1497)
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 public class Appli_Evt { public Appli_Evt(){ super(); } public Evt[] getEvt(String dateFile){ List<Evt> evtList = new ArrayList<Evt>(); try{ File f = new File(dateFile); System.out.println("Used file : "+f.getCanonicalPath()); FileReader fr = new FileReader(f.getName()); BufferedReader br = new BufferedReader(fr); String line = br.readLine(); while ((line = br.readLine()) != null){ if (line.trim().length() > 11){ Evt evt = new Evt(); evt.setXXX(line.substring(02, 11)); evt.setYYY(line.substring(11,21)); evt.setDDD(line.substring(21,25)); evt.setEEE(line.substring(25,29)); ... evtList.add(evt); } } }catch(IOException ioe){ ioe.printStackTrace(); } return (Evt[])evtList.toArray(); } }
Quelles sont les solutions possible ?
Merci.
Partager