Ich benutze Apache Wink für die Implementierung von REST-Diensten und ich kann nicht scheinen, Parameter des Typs Array oder Liste zu erhalten. Der Anruf wird von Ajax $ .post gemacht:@FormParam empfängt nur leere Liste/Array (Apache Wink)
$.post(url,
{ param: ['string1', 'param2', 'x', 'etc...etc....etc'],
str2: "str2"},
function(data) {// do something
});
Auf der Serverseite, Streicher und Ints korrekt empfangen werden, aber die ‚param‘ Parameter werden immer leer empfangen (nicht null, aber mit Null-Elementen), ob die Variable als String [], List, Set, ... definiert ist. Die Empfangsfunktion wird wie folgt definiert:
@POST @Produces("application/json") @Path("eee")
public Response eee(@FormParam("str1") String str1, @FormParam("param") String[] param, @FormParam("str2") String str2)
Während des Debuggens, kann ich eine Kontextvariable mit einem Tabelleneintrag sehen, wie:
wink.formParameters=[param%5B%5D=string1,param%5B%5D=param2,param%5B%5D=x,param%5B%5D=etc...etc....etc,str2=str2]
, die auf ‚param übersetzt [] = Zeichenfolge1, param [] = param2, .. ', keine Indexierung. Ich weiß nicht, ob das stimmt.
Irgendwelche Ideen?
Einige Syntaxprobleme dort. Aber mit den Daten {x: "string1", x: "string2", x: "string3", str: "str"} und der Liste Deklaration erhält die Liste nur 1 Element (das letzte). –
user1292542