Bonjour à tous,
J'ai développé un WS REST avec jax-rs, jetty, jersey qui permet de recevoir un fichier et d'autres paramètres pour sauvegarder.
J'ai d'abord créé mon WS pour recevoir un seul fichier, et là, tout fonctionne.
j'ai ensuite voulu permettre la réception d'un nombre indéfini de fichiers, et là, j'obtiens mon erreur 500 : Wrong number of arguments
Voici l'entête de mon WS :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
|
@POST
@Path("/add")
@Produces(MediaType.APPLICATION_JSON)
@Consumes(MediaType.MULTIPART_FORM_DATA)
public Response addAnnounce(@FormDataParam("userId") long userId,
@FormDataParam("catId") long catId, @FormDataParam("sCatId") long sCatId,
@FormDataParam("title") String title, @FormDataParam("desc") String desc,
@FormDataParam("price") long price,
@FormDataParam("toDiscuss") boolean toDiscuss,
@FormDataParam("minPrice") long minPrice,
@FormDataParam("durationId") int durationId,
@FormDataParam("paymentId") long paymentId,
@FormDataParam("addressId") long addressId,
@FormDataParam("photos") List<InputStream> photos)
throws Exception { |
Pour que ça fonctionne avec un seul fichier, j'avais remplacé simplement la ligne du paramètre "photos" par :
@FormDataParam("photos") InputStream photos)
Je fais mes tests depuis un formulaire HTML qui contient ceci pour le fichier :
<input type="file" name="photos" />
que j'ai modifié comme ceci pour essayer l'envoi multiplue :
<input type="file" name="photos[]" />
Après avoir obtenu ce message d'erreur, j'ai tenté d'envoyer mon form sans sélectionner de fichier, et j'obtiens la même erreur.
Quelqu'un aurait-il une explication ?
D'avance merci
Vince
Partager