Comment obtenir multipartentity de httpservletrequest

Je suis en train d'invoquer un service web à partir d'java spring contrôleur. Ci-dessous est le code

private void storeImages(MultipartHttpServletRequest multipartRequest) {
    DefaultHttpClient httpClient = new DefaultHttpClient();
    HttpPost postRequest = new HttpPost(
                    "http://localhost:8080/dream/storeimages.htm");
    MultipartFile multipartFile1 = multipartRequest.getFile("file1");
    MultipartEntity multipartEntity = new MultipartEntity(
                    HttpMultipartMode.BROWSER_COMPATIBLE);
    multipartEntity.addPart("file1",
                    new ByteArrayBody(multipartFile1.getBytes(),
                                    multipartFile1.getContentType(),
                                    multipartFile1.getOriginalFilename()));
    postRequest.setEntity(multipartEntity);
    HttpResponse response = httpClient.execute(postRequest);
    if (response.getStatusLine().getStatusCode() != 201) {
        throw new RuntimeException("Failed : HTTP error code : "
                        + response.getStatusLine().getStatusCode());
    }
}

Ci-dessus est seulement partielle du code. Je suis en train de déterminer comment les récupérer sur le serveur. Sur le côté serveur, j'ai le Printemps suivant contrôleur de code

@RequestMapping(value = "/storeimages.htm", method = RequestMethod.POST)
public ModelAndView postItem(HttpServletRequest request,
                HttpServletResponse response) {
    logger.info("Inside /secure/additem/postitem.htm");
    try {
        //How to get the MultipartEntity object here. More specifically i
        //want to get back the Byte array from it
    } catch (Exception ex) {
        ex.printStackTrace();
    }
    return new ModelAndView("success");
}

J'ai exécuté ce code et mon contrôle est d'aller du côté serveur. Mais je suis coincé sur la façon de récupérer le tableau d'octets à partir de la multipartentity objet.

Édité exigence:
Ici, c'est l'exigence. L'utilisateur télécharge les images sur le site (Ce qui est fait et de travail) Le contrôle est du Ressort du contrôleur après le formulaire de soumission (Ce qui est fait et de travail) Au Printemps contrôleur, je suis en utilisant plusieurs parties pour obtenir le contenu de la forme. (Ce qui est fait et de travail) Maintenant, je veux appeler un service web qui va envoyer l'image en tableau d'octets à l'image du serveur.(Ce qui doit être fait) Sur le serveur d'image, je veux recevoir ce webservice demande obtenir tous les champs de HTTPServlerRequest, de stocker les images et retour(Ce qui doit être fait)

Ce Servlet version ciblez-vous? Depuis servlet 3.0 HttpServletRequest a eu un getParts() méthode qui peut être utilisé par la suite pour obtenir un InputStream.
Comment puis-je vérifier si je suis en utilisant la Servlet 3.0. J'utilise tomcat 7. J'ai essayé d'écrire cela, mais ne semble pas fonctionner. La taille de la Liste est de 0. Liste<Partie> formData = new ArrayList(requête.getParts()); Pièce = formData.get(0); String parameterName = partie.getName(); logger.info("STORC IMAGES -" + parameterName);
Tomcat 7 est un Conteneur de Servlet 3.0

OriginalL'auteur user1241438 | 2012-08-26