@MultipartForm Comment obtenir le nom de fichier d'origine?
Je suis à l'aide de jboss repos-facile multipart fournisseur pour l'importation d'un fichier. J'ai lu ici http://docs.jboss.org/resteasy/docs/1.0.0.GA/userguide/html/Content_Marshalling_Providers.html#multipartform_annotation en matière de @MultipartForm parce que je peux exactement la carte avec mon POJO.
Ci-dessous est mon POJO
public class SoftwarePackageForm {
@FormParam("softwarePackage")
private File file;
private String contentDisposition;
public File getFile() {
return file;
}
public void setFile(File file) {
this.file = file;
}
public String getContentDisposition() {
return contentDisposition;
}
public void setContentDisposition(String contentDisposition) {
this.contentDisposition = contentDisposition;
}
}
Puis j'ai obtenu le fichier de l'objet imprimé et son chemin d'accès absolu et qu'il a renvoyé un nom de fichier type de fichier. L'extension et le fichier téléchargé nom sont perdus. Mon client est essayer de télécharger un fichier d'archive(zip,tar,z)
J'ai besoin de cette information sur le serveur afin que je puisse appliquer l'onu-archive le programme correctement.
Le nom de fichier original est envoyé au serveur en-tête content-disposition.
Comment puis-je obtenir cette information? Ou au moins comment puis-je dire de jboss pour enregistrer le fichier avec le fichier nom et extension? Il est configurable à partir de mon application?
@PartType("application/zip")
à votre file
et voir si cela fonctionne? L'ensemble complet est org.jboss.resteasy.annotations.providers.multipart.PartType
.Ouais je vais essayer. Quelle sera la valeur pour le goudron et les fichiers Z?
Aucune utilisation 🙁 Il n'a pas de travail. Je ne comprends pas pourquoi les gens envelopper api quand ils ne fournissent pas toutes les fonctionnalités de l'original api fournissent. Ils disent quelque chose qui peut être mieux fait, ils fournissent des api, ils présentent plus de problèmes, et par le temps de nous connaître, nous nous sommes enfermés. Je suis en train de travailler sur ce depuis presque 3 jours et en a marre.
OriginalL'auteur Krishna Chaitanya | 2014-10-13
Vous devez vous connecter pour publier un commentaire.
Après avoir regardé un peu autour de lui pour Resteasy exemples, y compris ce un, il semble comme il n'y a aucun moyen de récupérer le nom de fichier d'origine et la vulgarisation de l'information lors de l'utilisation d'une classe POJO avec le
@MultipartForm
annotation.Les exemples que j'ai vu jusqu'à présent récupérer le nom de fichier à partir de la
Content-Disposition
en-tête du "dossier" de la partie de l'soumis multipartites forme de données via HTTP POST, qui, pour l'essentiel, ressemble à quelque chose comme:Vous devrez mettre à jour votre fichier de téléchargement RESTE de la classe du service de l'extrait de cet en-tête comme ceci:
Espère que cette aide.
Sonne bien. Allez-vous envisager de marquer que cette réponse est acceptée, alors? 🙂 Merci.
OriginalL'auteur ivan.sim
Vous pouvez utiliser @PartFilename mais malheureusement ce n'est actuellement utilisé que pour l'écriture de formes, pas de lecture de formes: RESTEASY-1069.
Jusqu'à ce problème est résolu vous pouvez utiliser
MultipartFormDataInput
en tant que paramètre pour votre méthode.OriginalL'auteur lefloh
Il semble que Isim est juste, mais il y a une solution.
Créer un champ caché dans le formulaire et de mettre à jour sa valeur, avec le nom du fichier. Lorsque le formulaire est soumis, le nom de fichier sera présenté comme un @FormParam.
Voici un code que vous pourriez avoir besoin (jquery nécessaire).
OriginalL'auteur Αλέκος