2016-01-11 5 views
1

Ajouter ce qui suit à l'struts.xml dans struts2.3.24:Après la migration vers struts 2.3.24, télécharger des fichiers toujours pas pris en charge pour plus de 2gb

<constant name="struts.multipart.parser" value="jakarta-stream" /> 
<constant name="struts.multipart.maxSize" value="3147483648" /> 

Pour référence, le téléchargement fonctionne comme suit le jsp:

<s:form id="uploadData" action="abc_UploadAction?method=Upload" namespace="xyz" validateFields="false" method="post" enctype="multipart/form-data"> 

Pour le mappage d'action, nous utilisons le concept de DMI. La configuration d'action est la suivante:

<action name="abc_*" class="ABCAction"> 
<result type="chain">invoke_${module}_{1}_${method}</result> 
</action> 

Mais le téléchargement de fichiers ne fonctionne toujours pas pour les fichiers volumineux de plus de 2gb. Mais le code ci-dessus fonctionne très bien pour les téléchargements de taille moindre,

+0

Voir ce - http://stackoverflow.com/q/2947683/1700321. –

+0

@AleksandrM autant que je l'ai compris, il est capable de télécharger des fichiers de 1,9 Go, mais pas de 2,1 Go gils ... la limite de fichier de 2 Mo devrait avoir été frappé avant, je suppose (mais ça vaut le coup, peut-être hes ' essayer avec 1 Mo et 2,1 Go) –

+0

@Aleksandr, Nous avons déjà configuré (pour les limites de taille supérieures à 2 Go) le server.xml et web.xml comme mentionné dans ce message. –

Répondre

0

Pourquoi êtes-vous un haricot déclarant, si the documentation ne vous dit pas de le faire?

il suffit de changer

<bean type="org.apache.struts2.dispatcher.multipart.MultiPartRequest" name="jakartaStream" 
    class="org.apache.struts2.dispatcher.multipart.JakartaStreamMultiPartRequest" 
    scope="default" /> 
<constant name="struts.multipart.parser" value="jakartaStream" /> 

à la bonne configuration qui devrait être (hyphenized, non capitalisé):

<constant name="struts.multipart.parser" value="jakarta-stream" /> 
+0

Merci pour votre réponse. J'ai fait les changements ci-dessus, mais même alors, les téléchargements de fichiers de plus de 2 Go ne réussissent pas. –

+0

veuillez poster la liste des jars que vous utilisez –

+0

PS: J'ai vu maintenant que votre code provient de la JIRA, mais il n'est plus nécessaire de déclarer le bean, puisqu'il a été mis dans le noyau de struts de 2.3.18 –