schien ich die folgende Ausnahme zu bekommen, wenn ich meine Anwendung bereitstellen:java.util.List ist eine Schnittstelle, und JAXB nicht verarbeiten kann Schnittstellen
Caused by: com.sun.xml.bind.v2.runtime.IllegalAnnotationsException: 2 counts of IllegalAnnotationExceptions
java.util.List is an interface, and JAXB can't handle interfaces.
this problem is related to the following location:
at java.util.List
at private java.util.List foobar.alkohol.register.webservice.jaxws.GetRelationsFromPersonResponse._return
at foobar.alkohol.register.webservice.jaxws.GetRelationsFromPersonResponse
java.util.List does not have a no-arg default constructor.
this problem is related to the following location:
at java.util.List
at private java.util.List foobar.alkohol.register.webservice.jaxws.GetRelationsFromPersonResponse._return
at foobar.alkohol.register.webservice.jaxws.GetRelationsFromPersonResponse
Mein Code nur gut funktioniert, bis ich geändert der Rückgabetyp von zur Liste < Liste <RelationCanonical> >
Hier ist die partielle webservice:
@Name("relationService")
@Stateless
@WebService(name = "RelationService", serviceName = "RelationService")
@SOAPBinding(style = SOAPBinding.Style.DOCUMENT, use = SOAPBinding.Use.LITERAL, parameterStyle = SOAPBinding.ParameterStyle.WRAPPED)
public class RelationService implements RelationServiceLocal {
private boolean login(String username, String password) {
Identity.instance().setUsername(username);
Identity.instance().setPassword(password);
Identity.instance().login();
return Identity.instance().isLoggedIn();
}
private boolean logout() {
Identity.instance().logout();
return !Identity.instance().isLoggedIn();
}
@WebMethod
public List<List<RelationCanonical>> getRelationsFromPerson(@WebParam(name = "username")
String username, @WebParam(name = "password")
String password, @WebParam(name = "foedselsnummer")
String... foedselsnummer) {
......
......
......
}
Ich habe auch versucht, indem Sie die @SOAPBinding und versuchen, Standard, aber das gleiche Ergebnis auftritt. jede Hilfe dankbar
UPDATE
Ich möchte etwas beachten, aus. Ich habe alle List in ArrayList geändert und dann kompiliert. Der Grund, warum ich kompiliert und nicht gearbeitet habe, ist, dass es sich merkwürdig verhält. Ich bekomme ein Objekt vom Typ: RelationServiceStub.ArrayList , aber das Objekt hat keine Methoden abrufen oder verhält sich nicht als eine Liste. Ich habe auch versucht, es auf eine Liste zu setzen, aber das hat nicht funktioniert.
Beachten Sie, dass dies nachdem ich Achse 2 und wsdl2java verwendet habe Also ja, jetzt kompiliert es, aber ich weiß nicht, wie Sie die Daten erhalten.
Ja ich schon in der Frage erwähnt, dass ich das tue, aber es immer noch nicht funktioniert. Lesen Sie das Update –