2010-03-22 9 views
2

Publier celui-ci pour un ami. Ils ont une application Icefaces qui utilise la fonctionnalité de fichier d'entrée Icefaces, mais il tente de télécharger le fichier dans un répertoire temporaire avant de pouvoir y accéder. Longue histoire courte, il n'y a pas d'accès à l'emplacement temporaire, donc la copie du fichier (qui finira enventuellement dans une base de données) n'est pas possible. Est-il possible d'utiliser une servlet Java à la place pour télécharger le fichier et diffuser le contenu là où il a accès sans avoir d'abord enregistré le fichier dans un emplacement temporaire?Existe-t-il un moyen de télécharger un fichier à l'aide d'une servlet qui permet de passer l'enregistrement dans un emplacement temporaire?

Répondre

3

Oui, c'est absolument possible. La méthode doPost() de la servlet peut faire ce qu'elle veut avec l'entrée, et est conçue pour le traiter en streaming. Cependant, avec une servlet nue, vous devez analyser le corps de la requête manuellement. Heureusement, Apache Commons FileUpload peut le faire pour vous.

+0

Merci, je vais donner un coup de feu. J'ai aussi entendu parler de Commons FileUpload. – Vinny

0

Depuis qu'il a été marqué avec iceFaces, je suppose que c'est ce que votre ami utilise pour développer cela. Si c'est le cas, vous pouvez utiliser le composant inputFile. Il s'agit d'un tutorial sur comment faire. Vous pouvez également spécifier le chemin absolu. Il utilise essentiellement Commons File Upload sous le capot.