Estructuración de las operaciones de carga y descarga de archivos
Puede implementar la función de carga/descarga de archivos a través de los contratos de interfaz de la infraestructura de interfaz de usuario web y Rich Client Platform. Las implementaciones de carga/descarga se pueden conectar a través de web.xml como parámetros de contexto o mediante programación utilizando métodos ampliados.
Esto le permite hacer lo siguiente:
- Personalizar la función de carga/descarga de la misma manera que puede personalizar la autorización, la autenticación y otras tareas.
- Implementar la función de carga/descarga para aplicaciones que no utilicen Sterling Application Platform.
Estas tareas pueden utilizar las clases base siguientes que están presentes en Sterling Application Platform (el archivo platform_afc.jar) y en el archivo jar adjunto de archivo base (platform_fa.jar) que se utiliza cuando no se trabaja con Sterling Application Platform:
- Las interfaces IFileUploadProvider y IFileDownloadProvider
- La clase abstracta PLTFileUploadProvider
- Los servlets PLTFileUploadservlet y PLTFileDownloadServlet
Implementaciones de carga/descarga de archivos predeterminadas
El gráfico siguiente muestra la implementación predeterminada de la función de carga/descarga en aplicaciones basadas en Sterling Application Platform pero que no utilizan la infraestructura de interfaz de usuario web (como Rich Client Platform).
En el gráfico, Platform y Platform_AFC se refiere a Sterling Application Platform.

Las clases de la implementación predeterminada son las siguientes:
- Para la operación de carga: com.sterlingcommerce.woodstock.util.frame.file.impl.PLTFileUploadProviderImpl
- Para la operación de descarga: com.sterlingcommerce.woodstock.util.frame.file.impl.PLTFileDownloadProviderImpl
El gráfico siguiente muestra la implementación predeterminada de la función de carga/descarga en aplicaciones basadas en Sterling Application Platform que utilizan la infraestructura de interfaz de usuario web:
En el gráfico, Platform y Platform_AFC se refiere a Sterling Application Platform.

Las clases de la implementación predeterminada son las siguientes:
- Para la operación de carga: com.sterlingcommerce.ui.web.platform.file.SCUIFileUploadProviderImpl
- Para la operación de descarga: com.sterlingcommerce.ui.web.platform.file.SCUIFileDownloadProviderImpl
Conexión de implementaciones de carga/descarga de archivos a través de web.xml
Cuando se conectan implementaciones de carga/descarga de archivos a través de web.xml, se utilizan los parámetros de contexto siguientes:
- Para la operación de carga: sc-file-upload-provider
- Para la operación de descarga: sc-file-download-provider
El valor de los parámetros de contexto mencionados debe ser una ruta de clase Java™ cualificada que implemente IFileUploadProvider e IFileDownloadProvider para carga y descarga, respectivamente.
Parámetros de contexto de ejemplo que se van a conectar a aplicaciones basadas en Sterling Application Platform, pero que no utilizan la infraestructura WUF (observe el prefijo PLT en el nombre de método):
<context-param>
<param-name>sc-file-upload-provider</param-name>
<param-value>
com.sterlingcommerce.woodstock.util.frame.file.impl.PLTFileUploadProviderImpl
</param-value>
</context-param>
<context-param>
<param-name>sc-file-download-provider</param-name>
<param-value>
com.sterlingcommerce.woodstock.util.frame.file.impl.PLTFileDownloadProviderImpl
</param-value>
</context-param> <context-param>
<param-name>sc-file-upload-provider</param-name>
<param-value>
com.sterlingcommerce.ui.web.platform.file.SCUIFileUploadProviderImpl
</param-value>
</context-param>
<context-param>
<param-name>sc-file-download-provider</param-name>
<param-value>
com.sterlingcommerce.ui.web.platform.file.SCUIFileDownloadProviderImpl
</param-value>
</context-param>Conexión de implementaciones de carga/descarga de archivos utilizando métodos ampliados
Los métodos setFileUploadProvider y setFileDownloadProvider se amplían en la clase PLTFileUploadDownloadHelper para conectar implementaciones de carga/descarga de archivos mediante programa utilizando los contratos de interfaces.
PLTFileUploadDownloadHelper.setUploadProviderImpl(uploadImpl);
PLTFileUploadDownloadHelper.setDownloadProviderImpl(downloadImpl);En este caso, uploadImpl y downloadImpl son objetos de clase que implementan IFileUploadProvider e IFileDownloadProvider respectivamente.