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

La característica de subida de varios archivos se ha habilitado en HCL Commerce Version 9.0.1.11. Asegúrese de que ha instalado este paquete de correcciones de nivel o superior.

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. Una vez habilitado, puede implementar varios formularios de subida de archivos en el escaparate.

Procedimiento

  1. 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.
  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>
  3. 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()); }

Resultados

El sitio ahora está configurado para aceptar varias cargas de archivos a través de la misma página.