Ich möchte ArrayList zurückgeben, die List-Objekte über JAX-WS enthält.Kann ArrayList von Listen nicht von Jax-ws-Webdienst zurückgeben
Dies ist meine Methode
public ArrayList allTokens() {
ArrayList allItems = new ArrayList();
List myList1 = new ArrayList();
myList1.add("Indunil");
myList1.add(22);
List myList2 = new ArrayList();
myList2.add("Tharanga");
myList2.add(20);
//adding lists to all items
allItems.add(myList1);
allItems.add(myList2);
return(allItems);
}
Schleppfehler zeigt, wird, wenn ich Web-Service-Aufruf:
javax.xml.ws.WebServiceException: javax.xml.bind.MarshalException - mit verknüpften Ausnahme: [com.sun.istack.SAXException2: class java.util.ArrayList noch eine seiner Super-Klassen ist diesem Kontext bekannt. javax.xml.bind.JAXBException: class java.util.ArrayList noch eine beliebige seiner Super-Klasse ist in diesem Zusammenhang bekannt.] unter com.sun.xml.ws.message.jaxb.JAXBMessage.writePayloadTo (JAXBMessage.java: 325) bei com.sun.xml.ws.message.AbstractMessageImpl.writeTo (AbstractMessageImpl.java:142) bei com.sun.xml.ws.encoding.StreamSOAPCodec.encode (StreamSOAPCodec.java:109) bei com.sun.xml.ws.encoding.SOAPBindingCodec.encode (SOAPBindingCodec.java:278) bei com.sun.xml.ws.transport.http.HttpAdapter.encodePacket (HttpAdapter.java:380) bei com .sun.xml.ws.transport.http.HttpAdapter.access $ 100 (HttpAdapter.java:92) um com.sun.xml.ws.transport.http.HttpAdapter $ HttpToolkit.handle (HttpAdapter.java:525) um com.sun.xml.ws.transport.http.HttpAdapter.handle (HttpAdapter.java: 285) bei com.sun.xml.ws.transport.http.server.WSHttpHandler.handleExchange (WSHttpHandler.java:106) bei com.sun.xml.ws.transport.http.server.WSHttpHandler.handle (WSHttpHandler.java:91) bei com.sun.net.httpserver.Filter $ Chain.doFilter (Filter.java:79) um sun.net.httpserver.AuthFilter.doFilter (AuthFilter.java:83) um com. sun.net.httpserver.Filter $ Chain.doFilter (Filter.java:82) um sun.net.httpserver.ServerImpl $ Exchange $ LinkHandler.handle (ServerImpl.java:675) bei com.sun.net.httpserver.Filter $ Chain.doFilter (Filter.java:79) um sun.net.httpserver.ServerImpl $ Exchange.run (ServerImpl.java:647) um java.util.concurrent. ThreadPoolExecutor.runWorker (ThreadPoolExecutor.java:1142) bei java.util.concurrent.ThreadPoolExecutor $ Worker.run (ThreadPoolExecutor.java:617) bei java.lang.Thread.run (Thread.java:745) verursacht durch: javax.xml.bind.MarshalException - mit verknüpfter Ausnahme: [com.sun.istack.SAXException2: class java.util.ArrayList noch eine seiner Super-Klasse ist diesem Kontext bekannt. javax.xml.bind.JAXBException: class java.util.ArrayList noch eine beliebige Superklasse ist in diesem Zusammenhang bekannt.] unter com.sun.xml.bind.v2.runtime.MarshallerImpl.write (MarshallerImpl.java: 269) unter com.sun.xml.bind.v2.runtime.BridgeImpl.marshal (BridgeImpl.java:100) unter com.sun.xml.bind.api.Bridge.marshal (Bridge.java:141) um com.sun.xml.ws.message.jaxb.JAXBMessage.writePayloadTo (JAXBMessage.java:317) ... 18 mehr Verursacht von: com.sun.istack.SAXException2: Klasse java.util.ArrayList noch irgendeine von seine Superklasse ist diesem Kontext bekannt. javax.xml.bind.JAXBException: class java.util.ArrayList noch eine beliebige seiner Super-Klasse ist in diesem Zusammenhang bekannt. unter com.sun.xml.bind.v2.runtime.XMLSerializer.reportError (XMLSerializer.java:246) um com.sun.xml.bind.v2.runtime.XMLSerializer.reportError (XMLSerializer.java:261) bei com.sun.xml.bind.v2.runtime.XMLSerializer.childAsXsiType (XMLSerializer.java:653) bei com.sun.xml. bind.v2.runtime.property.ArrayElementNodeProperty.serializeItem (ArrayElementNodeProperty.java:65) bei com.sun.xml.bind.v2.runtime.property.ArrayElementProperty.serializeListBody (ArrayElementProperty.java:168) bei com. sun.xml.bind.v2.runtime.property.ArrayERProperty.serializeBody (ArrayERProperty.java:155) bei com.sun.xml.bind.v2.runtime.ClassBeanInfoImpl.serializeBody (ClassBeanInfoImpl.java:340) bei com.sun.xml.bind.v2.runtime.XMLSerializer.child AsXsiType (XMLSerializer.java:696) bei com.sun.xml.bind.v2.runtime.MarshallerImpl.write (MarshallerImpl.java:264) ... 21 mehr verursacht durch: javax.xml.bind.JAXBException: Klasse java.util.ArrayList noch einer seiner Super-Klasse ist diesem Kontext bekannt. bei com.sun.xml.bind.v2.runtime.JAXBContextImpl.getBeanInfo (JAXBContextImpl.java:594) bei com.sun.xml.bind.v2.runtime.XMLSerializer.childAsXsiType (XMLSerializer.java:648) ... 27 mehr
Ich habe versucht, einige JAXB, aber nicht in der Lage, mein Problem zu lösen. Ich weiß nicht, wie man JXAB richtig macht. Dies ist für mein Abschlussprojekt meines Abschlusses.
könnten Sie die Implementierung der Methode allTokens() teilen? –
Welchen möchten Sie? Dies ist die Methode auf meiner Serverseite. Ich benutze Apache Tomcat 7.0.59 –
Es wäre viel einfacher, entweder eine "Liste" mit NameNumber eine Klasse für die Darstellung der Liste Elemente * richtig *, oder nur eine flache Liste, dh Speichern von "" Indunil ",' 22 ', '" Tharanga "', '20' usw. in eine" Liste