TDM Portal Maximum upload size exceeded - FileSizeLimitExceededException: The field file exceeds its maximum permitted size
search cancel

TDM Portal Maximum upload size exceeded - FileSizeLimitExceededException: The field file exceeds its maximum permitted size

book

Article ID: 138851

calendar_today

Updated On:

Products

CA Test Data Manager (Data Finder / Grid Tools)

Issue/Introduction

Unable to register new files( CSV or XML) in TDM Portal. When clicking the Register button, no action is performed, or it just spins and never returns.

Environment

All supported TDM releases.

Component : CA Test Data Manager - TDM Web Portal

Cause

The error in the TDMModelService.log contains an error, which points to a file size limitation enforced by tomcat.


 

HTTP Error - INTERNAL SERVER ERROR: Exception: Maximum upload size exceeded; nested exception is java.lang.IllegalStateException: org.apache.tomcat.util.http.fileupload.FileUploadBase$FileSizeLimitExceededException: The field file exceeds its maximum permitted size of 1048576 bytes.

Resolution

The reason this issue is now being seen, is likely because we upgraded the release of Tomcat that we are using with TDM Portal. It's possible that the newer Tomcat release has tighter file restrictions that the older release. By default Tomcat has set a file size limitation of 1 MB for files being loaded. There is also a limitation on the number of items a folder is allowed to contain, when loading files. The item limitation is set to 266 items by default.

 

To Resolve this issue, we need to make a couple of changes to the Tomcat configuration to disable the file limitations imposed by Tomcat

1) Open a Windows File Explorer

2) Navigate to the TDMWeb installation folder, which is Program Files\CA\CA Test Data Manager Portal

3) Go to tomcat\conf directory

4) Open the server.xml file for edit, in the text editor of your choice.

5) Find the Connector xml tag starting from the top.

6) Add a parameter maxSwallowSize="-1". This will tell Tomcat to ignore size limitations.

 

For example:

<Connector port="8443" protocol="HTTP/1.1" 

SSLEnabled="true" 

scheme="https" 

secure="true" 

clientAuth="false" 

sslProtocol="TLSv1.2" 

keystoreFile="${tdmweb.keystorePath}" 

keystorePass="${tdmweb.keystorePassword}" 

keyAlias="${tdmweb.keyAlias}" 

ciphers="TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256, TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384, TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256, TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384,TLS_DHE_RSA_WITH_AES_256_GCM_SHA384,TLS_DHE_RSA_WITH_AES_128_GCM_SHA256" 

connectionTimeout="60000"

maxSwallowSize="-1"/>

 

7) Navigate to Program Files\CA\CA Test Data Manger Portal\conf\ directory

8) Edit the application.properties file, comment or replace spring.http.multipart.max-file-size and  spring.http.multipart.max-request-size with spring.servlet.multipart.max-file-size and  spring.servlet.multipart.max-request-size to the #File Size section.

For Example:
     #File Size
     #spring.http.multipart.max-file-size=200MB
     #spring.http.multipart.max-request-size=100MB
     spring.servlet.multipart.max-file-size=-1
     spring.servlet.multipart.max-request-size=-1


9) Save the changes to the application.properties file

10) Restart the CA Test Data Manager Portal Service.

 

Both of these records may enable unlimited upload of files with respect to its size. Engineering is updating the TDM documentation, and will consider making changes to the xml files in a future release.