Habilitar varias carga de archivos
Puede habilitar varias cargas con pequeños ajustes en la HCL Commerce característica subida de archivo de Struts 2.
Antes de empezar
Por qué y cuándo se efectúa esta tarea
La subida de archivos de Struts 2 está soportada en HCL Commerce. Esta característica utiliza el interceptor de subida de archivos para cumplir solicitudes.
- Para habilitar la subida de archivos de Struts 2 en HCL Commerce, consulte Habilitar la característica de subida de archivos de Struts 2.
- Para obtener detalles sobre la implementación de subida de archivos de Struts 2, consulte Carga de archivos en la documentación de Apache Struts 2.
Procedimiento
-
Modifique los archivos JavaServer Page (JSP) del escaparate para habilitar varias cargas de archivos.
Por ejemplo:
<form id=MyUploadForm" enctype ="multipart/form-data" action="./MyFileUpload?storeId=1&langId=-1&catalogId=10001 "method="post" name="MyUploadForm"> <input name="filenames" type="file" size="50" id="UploadedFile1"/> <input name="filenames" type="file" size="50" id="UploadedFile2"/> <input type="submit"> </form>
Nota:- Es necesario que el valor de la propiedad name sea filenames cuando se suben varios archivos.
- También puede utilizar etiquetas estándar de Struts 2.
-
Asegúrese de que se define la acción en el archivo de configuración Struts.Por ejemplo:
<action class="com.ibm.commerce.struts.v2.BaseAction" name="MyFileUpload"> <param name="authenticate">0:0</param> <param name="https">0:1</param> <param name="csrfProtected">0:0</param> <param name="parameter">com.my.commerce.commands.MyFileUploadCmd</param> </action>
-
Amplíe el método
com.my.commerce.commands.MyFileUploadCmdImpl
performExecute
para dar soporte a varios archivos.UploadedFile[] upLoadFiles = (UploadedFile[]) requestProperties.get(ECConstants.EC_UPLOADED_FILES, null); for (UploadedFile file : upLoadFiles) { System.out.println("upLoadFile: " + file.getFileName() + ", Size: " + file.getLength()); }