Maillot De Téléchargement D'Images Client

Je suis en train de télécharger l'image à l'aide de Jersey webservice , je suis en utilisant jersey client pour télécharger l'image.
ci-dessous est en jersey de service web qui prend inputstream et upload de l'image sur le serveur. il fonctionne très bien lorsque je l'ai directement appel à l'aide de jsp multipart formulaire de télécharger, mais ne parvient pas quand je télécharger des images à l'aide de jersey client

@POST
@Path("/upload")
@Consumes(MediaType.MULTIPART_FORM_DATA)
public Response uploadFile(
        @FormDataParam("file") InputStream uploadedInputStream,
        @FormDataParam("file") FormDataContentDisposition fileDetail) throws ServiceException
{
    //upload code
}

Ci-dessous Jersey Client pour télécharger l'Image, le code du client est la partie d'un autre service web qui est appelée à partir de php reste client et ce maillot appel du client à jersey service web pour télécharger l'image, si j'ai d'appeler directement le maillot de service web pour télécharger l'image que le travail est très bien, mais il ne fonctionne pas quand je le télécharge à l'aide de jersey client.

ClientConfig config = new DefaultClientConfig();
Client client = Client.create(config);
client.setChunkedEncodingSize(1024);
WebResource wr = client
        .resource("http://localhost:8080/rest/upload");

String contentDisposition = "attachment; filename=\""
        + fileDetail.getName() + "\"";
FormDataMultiPart form = new FormDataMultiPart();
ContentDisposition contentDisposition2 = new ContentDisposition(contentDisposition);
form.setContentDisposition(contentDisposition2);
FormDataBodyPart fdp = new FormDataBodyPart("file",
        uploadedInputStream, MediaType.MULTIPART_FORM_DATA_TYPE);
form.bodyPart(fdp);
ClientResponse response = wr.type(MediaType.MULTIPART_FORM_DATA).post(
        ClientResponse.class, form)

S'il vous plaît aidez-moi de ne pas sûr de ce que je suis absent ici.
Merci.

  • Pouvez-vous préciser ce que "ne pas travailler" signifie? J'ai testé avec votre code exact, à l'aide de FileInputStream type de uploadedInputStream et il fonctionne très bien. Une chose que je voudrais changer (si elle n'était pas la cause de l'échec pour moi) est MediaType.MULTIPART_FORM_DATA_TYPE pour fdp à MediaType.APPLICATION_OCTET_STREAM_TYPE
  • Je veux dire, c'est en passant uploadedInputStream à jersey, webservice, mais il ne contient pas de même des morceaux et même type de contenu qui nous avons passé de jersey client.
  • formulaire de données est le principal type de contenu de la demande. Mais les données de formulaire est livré avec les parties et chaque partie a son propre type de contenu. Le fichier doit être octet-stream et pas de données de formulaire
  • vous avez raison, il devrait être MediaType.APPLICATION_OCTET_STREAM_TYPE