From bc8d37464756bf821acae003c6a140af6dcbaf09 Mon Sep 17 00:00:00 2001 From: Victor Sosa Date: Tue, 19 Jan 2016 08:54:15 -0400 Subject: [PATCH] WW-4456 - Got NPE when File Upload Limitation exceeds in portal env. --- .../multipart/JakartaMultiPartRequest.java | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/core/src/main/java/org/apache/struts2/dispatcher/multipart/JakartaMultiPartRequest.java b/core/src/main/java/org/apache/struts2/dispatcher/multipart/JakartaMultiPartRequest.java index e9ac67f60..643d73d23 100644 --- a/core/src/main/java/org/apache/struts2/dispatcher/multipart/JakartaMultiPartRequest.java +++ b/core/src/main/java/org/apache/struts2/dispatcher/multipart/JakartaMultiPartRequest.java @@ -83,9 +83,17 @@ public class JakartaMultiPartRequest implements MultiPartRequest { try { setLocale(request); processUpload(request, saveDir); - } catch (FileUploadBase.SizeLimitExceededException e) { + } catch (FileUploadException e) { LOG.warn("Request exceeded size limit!", e); - String errorMessage = buildErrorMessage(e, new Object[]{e.getPermittedSize(), e.getActualSize()}); + String errorMessage = null; + + if(e instanceof FileUploadBase.SizeLimitExceededException) { + FileUploadBase.SizeLimitExceededException ex = (FileUploadBase.SizeLimitExceededException) e; + errorMessage = buildErrorMessage(e, new Object[]{ex.getPermittedSize(), ex.getActualSize()}); + } else { + errorMessage = buildErrorMessage(e, new Object[]{}); + } + if (!errors.contains(errorMessage)) { errors.add(errorMessage); }