Did you migrate to the Action based file upload interceptor? https://cwiki.apache.org/confluence/display/WW/Struts+6.x.x+to+7.x.x+migration#Struts6.x.xto7.x.xmigration-Fileupload
Support for old FileuploadInterceptor has been removed in Struts 7 also it's related to the security vulnerability https://cwiki.apache.org/confluence/display/WW/S2-067 pt., 16 maj 2025 o 22:08 Deborah White <deborah.wh...@doj.ca.gov.invalid> napisaĆ(a): > > Hello, migrating from 2.3 to 7.0 and this no longer works. I am not getting > the document or the document name. I have this in my jsp page: > > var options = { > target: > '#complaintDetailsDiv', > beforeSubmit: showRequest1, > success: showResponse1, > url: '<s:url > value="complaintMgmtAddDocs.action" encode="true"/>', > type: 'post' > }; > > > $('#complaintMgmtAddDocsForm').submit(function() { > > $('#complaintMgmtAddDocsForm').ajaxSubmit(options); > return false; > }); > function showRequest1(formData, jqForm, options) { > > var queryString = $.param(formData); > > if (documentValidateForm('complaintMgmtAddDocsForm')){ > $('#StatusMessage').html("<img > src='../web/images/busySmall.gif'>"); > > document.getElementById("button_submit_docs").disabled = "disabled"; > return true; > }else{ > return false; > } > } > > function showResponse1(responseText, > statusText) { > if (statusText == 'success'){ > > initComplaintDetails(); > } > > $('#complaintMgmtTabs').tabs('select', 2); > } > > <div id="complaintDocumentAccordion" class="accordion"> > <div> > <h3><a > href="#">Add Document</a></h3> > <div> > > <form name="complaintMgmtAddDocsForm" id="complaintMgmtAddDocsForm" > ENCTYPE="multipart/form-data" action="" method="post"> > > > <fieldset style="width:725px;"> > > <legend>Add Document</legend> > > <table border="0" cellpadding="0" cellspacing="0" > width="695" style="margin:5px"> > > <tr> > > <td width="40%"> > > > <label class="desc" for="documentData.documentTypeId">Select Document > Type <span class="req" title="Required">*</span></label> > > </td> > > <td width="60%"> > > > <label class="desc" for="documentData.receivedDate">Processed > Date <span class="req" title="Required">*</span></label> > > </td> > > </tr> > > <tr> > > <td> > > > <s:select > > > name="documentData.documentTypeId" > > > id="documentData.documentTypeId" > > > headerKey="" > > > headerValue="Select Document Type" > > > list="#session.documentTypeList" > > /> > > </td> > > <td> > > > <input type="text" name="documentData.receivedDate" > id="documentData.receivedDate" value="<s:property value="systemDate"/>" > maxlength="10" style="width:80px;"/> > > </td> > > </tr> > > </table> > > <table border="0" cellpadding="0" cellspacing="0" > width="695" style="margin:5px"> > > <tr> > > <td width="40%"> > > > <label class="desc" for="documentData.documentDesc">Document Desc <span > class="req" title="Required">*</span></label> > > </td> > > <td width="60%"> > > > <label class="desc" for="documentData.documentImage">Attach > Document <span class="req" title="Required">*</span></label> > > </td> > > </tr> > > <tr> > > <td> > > > <input type="text" name="documentData.documentDesc" > id="documentData.documentDesc" value="" maxlength="50" class="text medium" > style="width:200px;"/> > > </td> > > <td> > > > <input type="file" name="documentData.documentImage" > id="documentData.documentImage" size="50"/> > > </td> > > </tr> > > </table> > > <table border="0" cellpadding="0" cellspacing="0" > width="695" style="margin:5px"> > > <tr> > > <td colspan="2" > align="center"> > > > <input id="button_submit_docs" class="button" type="submit" value="Add" > name="button_submit_docs"/> > > >    > > <span > id="StatusMessage" class="statusMessage"></span> > > </td> > > </tr> > > > </table> > > > </fieldset> > > <input type="hidden" name="complaintId" id="complaintId" > value="<s:property value="complaintDisplayData.complaintId"/>"> > > > </form> > </div> > </div> > </div> > > > And this is my class: > package gov.ca.doj.sotas.action; > > import gov.ca.doj.sotas.businesshandler.SotasManager; > import gov.ca.doj.sotas.databean.ComplaintData; > import gov.ca.doj.sotas.databean.DocumentData; > import gov.ca.doj.sotas.util.SotasConstants; > import gov.ca.doj.sotas.util.SotasUtil; > > > /** > * Implementation of Action for Complaint Add Documents. > * > * @Author: Hitesh Parekh > * @version 1.0 > * @since 03/15/2011 > */ > public final class ComplaintAddDocsAction extends BaseWebAction { > > ComplaintData complaintDisplayData = null; > DocumentData documentData = null; > int complaintId; > > > public String execute() { > logger.debug("In ComplaintAddDocsAction.execute"); > > String status = super.execute(); > > if (status == SUCCESS) { > SotasManager manager = new SotasManager(); > try { > if (documentData.getDocumentImage() != null) { > > documentData.setDocumentBytes(SotasUtil.getBytesFromFile(documentData.getDocumentImage())); > > documentData.setDocumentSize(documentData.getDocumentImage().length()); > } > > documentData.setId(complaintId); > > documentData.setTableListId(SotasConstants.CONSUMER_COMPLAINT); > manager.addDocument(documentData,getUserId()); > complaintDisplayData = > manager.getComplaintForDisplay(complaintId); > status = SUCCESS; > } catch (Exception e) { > logger.error("In ComplaintAddDocsAction.execute", e); > addActionError(getText("error.system")); > status = ERROR; > } > } > return status; > } > > public void setComplaintDisplayData(ComplaintData complaintDisplayData) { > this.complaintDisplayData = complaintDisplayData; > } > > public ComplaintData getComplaintDisplayData() { > return complaintDisplayData; > } > > public void setDocumentData(DocumentData documentData) { > this.documentData = documentData; > } > > public DocumentData getDocumentData() { > return documentData; > } > > public void setComplaintId(int complaintId) { > this.complaintId = complaintId; > } > > public int getComplaintId() { > return complaintId; > } > } > > Any ideas?? > > CONFIDENTIALITY NOTICE: This communication with its contents may contain > confidential and/or legally privileged information. It is solely for the use > of the intended recipient(s). Unauthorized interception, review, use or > disclosure is prohibited and may violate applicable laws including the > Electronic Communications Privacy Act. If you are not the intended recipient, > please contact the sender and destroy all copies of the communication. --------------------------------------------------------------------- To unsubscribe, e-mail: user-unsubscr...@struts.apache.org For additional commands, e-mail: user-h...@struts.apache.org