Struts 2 Téléchargement de Fichiers Intercepteur des problèmes de configuration
Je vais avoir deux problèmes lorsque vous tentez de configurer les Struts 2 Téléchargement de Fichiers Intercepteur dans mon application. Je veux changer le paramètre maximumSize
(la valeur par défaut est de 2 MO, j'en ai besoin pour être de 5 MO) et le message de ressources struts.messages.error.file.too.large
(l'application locale est pt_BR, de sorte que le message est en portugais, anglais).
L'application actuelle de la configuration suivante:
struts.propriétés
struts.locale=pt_BR
struts.custom.i18n.resources=MessageResources
struts.xml
<package name="default" namespace="/" extends="struts-default">
<interceptors>
<interceptor name="login" class="br.com.probank.interceptor.LoginInterceptor"/>
<interceptor-stack name="defaultLoginStack">
<interceptor-ref name="login" />
<interceptor-ref name="defaultStack"/>
</interceptor-stack>
</interceptors>
<default-interceptor-ref name="defaultLoginStack" />
...
</package>
...
<package name="proposta" namespace="/proposta" extends="default">
<action name="salvarAnexoProposta" method="salvarAnexoProposta" class="br.com.probank.action.AnexoPropostaAction">
<interceptor-ref name="defaultLoginStack">
<param name="fileUpload.maximumSize">5242880</param>
</interceptor-ref>
<result name="success">/jsp/listagemAnexosPropostaForm.jsp</result>
<result name="input">/jsp/crudAnexoPropostaForm.jsp</result>
<result name="error">/jsp/error.jsp</result>
<result name="redirect" type="redirect">${redirectLink}</result>
</action>
</package>
MessageResources.propriétés
...
struts.messages.error.file.too.large=O tamanho do arquivo...
Il n'y a rien de spécial à propos de mon Action mise en œuvre et mon code JSP. Ils suivent l'exemple http://struts.apache.org/2.1.6/docs/file-upload-interceptor.html. Lorsque j'essaie de télécharger un fichier avec plus de 5 MO de l'application affiche le message "la demande a été rejetée en raison de sa taille (6229458) dépasse le maximum configuré (2097152)" - le Fichier par défaut message de chargement avec la valeur par défaut maximumSize valeur.
J'ai essayer de mettre le message de ressources struts.messages.error.file.too.large
dans un struts-messages.les propriétés, mais le message n'a pas changé par la suite. Quelle est la bonne façon de configurer le Téléchargement du Fichier Intercepteur? Je suis en utilisant Struts 2 2.1.7. Merci à l'avance.
struts.multipart.maxSize
propriété dans struts.properties
fichier à la valeur désirée. Mais le problème avec la version localisée de message d'erreur reste encore...
OriginalL'auteur matheus.emm | 2009-09-18
Vous devez vous connecter pour publier un commentaire.
Finalement résolu l'ensemble du puzzle!
struts.xml
etMessageResource.properties
ont été correctement configuré. Le problème a étéstruts.multipart.maxSize
valeur. Cette valeur doivent être plus grande que la densité de limite de téléchargement (5242880 dans mon application), donc je l'ai mis comme 10000000. Sistruts.multipart.maxSize
valeur est égale ou inférieure àfileUpload.maximumSize
la bibliothèque utilisée par Struts 2 pour faire l'upload s'arrête le processus de téléchargement (et écrit le message d'erreur) avant le chargement du fichier de l'intercepteur a une chance de faire son travail.OriginalL'auteur matheus.emm
De la solution fournie par vous n'est pas tout à fait correct, dans le sens que Si je veux des strictes limites de téléchargement avec i18n, cela ne fonctionne pas. J'ai également créé un problème avec strut2 pour cela. Veuillez consulter le lien suivant https://issues.apache.org/jira/browse/WW-3177. Ça devrait être corrigé dans struts2.1.9 et est déjà attribué à une struts membre de l'équipe.
Entre les deux, je suis à l'aide d'un hack. J'ai parcouru le struts2 code source et a trouvé le code pour FileUploadInterceptor. En utilisant ce code, j'ai créé mon propre. Voici le code ci-dessous. Vous pouvez trouver les détails de problème sur le lien ci-dessus. Espérons que cette aide.
OriginalL'auteur Amit Sharma
Essayer dans votre
struts.xml
, oùxxxxxxxx
est la limite:OriginalL'auteur daved
De la première utilisation de valider la méthode dans votre fichier "action"........
Pour le code complet,veuillez visiter http://knowledge-serve.blogspot.com/2011/10/upload-file-using-in-struts-2.html
OriginalL'auteur Knowledgeserve