Convertir informes HTML a hojas de cálculo Excel es un requisito frecuente para aplicaciones web basadas en Java que necesitan permitir a los usuarios descargar análisis o facturas. GroupDocs.Conversion Cloud SDK for Java proporciona una API robusta que se encarga del trabajo pesado de la transformación de formatos sin requerir instalaciones locales de Office. En esta guía verás cómo configurar el SDK, escribir el código de conversión y también llamar al mismo servicio a través de una interfaz REST con cURL. Al final estarás listo para incrustar la conversión de HTML a XLSX en un servidor, servlet, aplicación Spring Boot o cualquier servicio Java multihilo.
Exportar informes HTML a XLSX en Java - Requisitos
Muchos portales empresariales generan paneles dinámicos en HTML que los usuarios desean exportar como libros de trabajo XLSX para análisis sin conexión. Los requisitos típicos incluyen:
- Acceso al código fuente HTML almacenado en el almacenamiento en la nube o generado sobre la marcha.
- Conservación de las estructuras de tabla, estilos de celda y formatos numéricos durante la conversión.
- Capacidad de ejecutar la conversión en un servidor backend, un contenedor de servlets o dentro de un microservicio sin instalar Microsoft Office.
La copia‑y‑pega manual o las bibliotecas del lado del cliente no pueden garantizar un formato consistente, especialmente al trabajar con informes grandes o escenarios de alta concurrencia, como un servidor de conversión de HTML a XLSX en Java.
Aprovechando GroupDocs.Conversion Cloud SDK for Java para satisfacer las necesidades de exportación
El SDK ofrece un motor de conversión basado en la nube que admite HTML como entrada y XLSX como salida, eliminando la necesidad de componentes locales de Office. Las capacidades clave que se alinean con los requisitos son:
- Procesamiento en la nube - la conversión intensiva se ejecuta en los servidores de GroupDocs, ideal para un servlet de conversión de HTML a XLSX en Java o una aplicación web Spring Boot.
- Opciones configurables - puedes preservar el formato original, establecer nombres de hojas de cálculo y controlar los tipos de datos de celdas mediante
XlsxConvertOptions. - Cliente seguro para subprocesos - adecuado para la conversión multihilo de HTML a XLSX en Java, permitiendo trabajos por lotes de alto rendimiento.
Para obtener más detalles, consulte la documentación oficial y la referencia de API.
Conversión de HTML a XLSX en Java: Implementación
Instalar GroupDocs.Conversion Cloud SDK
Agregue el SDK a su proyecto Maven:
<dependency>
<groupId>com.groupdocs</groupId>
<artifactId>groupdocs-conversion-cloud</artifactId>
<version>23.12</version>
</dependency>
O ejecute el comando de instalación:
mvn install com.groupdocs:groupdocs-conversion-cloud
Inicializar cliente API
Cree un ApiClient con sus credenciales e instancie ConversionApi.
import com.groupdocs.conversion.cloud.ApiClient;
import com.groupdocs.conversion.cloud.api.ConversionApi;
ApiClient apiClient = new ApiClient("YOUR_CLIENT_ID", "YOUR_CLIENT_SECRET");
ConversionApi conversionApi = new ConversionApi(apiClient);
Establecer información del archivo fuente
Especifique el archivo HTML que se encuentra en el almacenamiento en la nube predeterminado.
import com.groupdocs.conversion.cloud.model.FileInfo;
FileInfo sourceFile = new FileInfo();
sourceFile.setFilePath("input.html"); // path in the cloud storage
sourceFile.setStorageName("DefaultStorage"); // optional
Configurar opciones de conversión XLSX
Ajuste opciones como preservar el formato original.
import com.groupdocs.conversion.cloud.model.XlsxConvertOptions;
XlsxConvertOptions xlsxOptions = new XlsxConvertOptions();
xlsxOptions.setPreserveOriginalFormatting(true);
Realizar la conversión y obtener el resultado
Construya la solicitud, ejecútela y obtenga la ruta de salida.
import com.groupdocs.conversion.cloud.model.ConvertDocumentRequest;
import com.groupdocs.conversion.cloud.model.ConvertDocumentResponse;
ConvertDocumentRequest request = new ConvertDocumentRequest();
request.setFileInfo(sourceFile);
request.setFormat("xlsx"); // target format
request.setConvertOptions(xlsxOptions);
request.setOutputPath("output.xlsx"); // desired output path
try {
ConvertDocumentResponse response = conversionApi.convertDocument(request);
System.out.println("Conversion successful. Output file: " + response.getPath());
} catch (Exception e) {
System.err.println("Error during conversion: " + e.getMessage());
e.printStackTrace();
}
Transformar documentos HTML a XLSX usando Java - Ejemplo de código completo
El ejemplo a continuación reúne todas las piezas en una única clase ejecutable.
import com.groupdocs.conversion.cloud.ApiClient;
import com.groupdocs.conversion.cloud.api.ConversionApi;
import com.groupdocs.conversion.cloud.model.ConvertDocumentRequest;
import com.groupdocs.conversion.cloud.model.ConvertDocumentResponse;
import com.groupdocs.conversion.cloud.model.FileInfo;
import com.groupdocs.conversion.cloud.model.XlsxConvertOptions;
public class HtmlToXlsxConversionExample {
public static void main(String[] args) {
// Initialize API client (replace with your actual credentials)
ApiClient apiClient = new ApiClient("YOUR_CLIENT_ID", "YOUR_CLIENT_SECRET");
ConversionApi conversionApi = new ConversionApi(apiClient);
// Define source HTML file information
FileInfo sourceFile = new FileInfo();
sourceFile.setFilePath("input.html"); // path in the cloud storage
sourceFile.setStorageName("DefaultStorage"); // optional, use default if omitted
// Set conversion options specific to XLSX output
XlsxConvertOptions xlsxOptions = new XlsxConvertOptions();
// Example option: preserve original formatting (if needed)
xlsxOptions.setPreserveOriginalFormatting(true);
// Build conversion request
ConvertDocumentRequest request = new ConvertDocumentRequest();
request.setFileInfo(sourceFile);
request.setFormat("xlsx"); // target format
request.setConvertOptions(xlsxOptions);
request.setOutputPath("output.xlsx"); // desired output path in cloud storage
try {
// Perform conversion
ConvertDocumentResponse response = conversionApi.convertDocument(request);
System.out.println("Conversion successful. Output file: " + response.getPath());
} catch (Exception e) {
System.err.println("Error during conversion: " + e.getMessage());
e.printStackTrace();
}
}
}
Nota: Este ejemplo de código demuestra la funcionalidad principal. Antes de usarlo en su proyecto, asegúrese de actualizar las rutas de los archivos (
input.html,output.xlsx) para que coincidan con sus ubicaciones reales, verifique que todas las dependencias requeridas estén correctamente instaladas y pruebe exhaustivamente en su entorno de desarrollo. Si encuentra algún problema, consulte la documentación oficial o póngase en contacto con el equipo de soporte para obtener ayuda.
Ejecutando exportación a XLSX desde HTML con REST y cURL
Puede lograr la misma conversión sin escribir código Java llamando directamente a la API REST. El flujo refleja los pasos del SDK: obtener un token, cargar el archivo HTML, solicitar la conversión y descargar el resultado XLSX.
Obtener token de acceso
curl -X POST "https://api.groupdocs.cloud/v2.0/connect/token" \
-H "Content-Type: application/x-www-form-urlencoded" \
-d "grant_type=client_credentials&client_id=YOUR_CLIENT_ID&client_secret=YOUR_CLIENT_SECRET"
Subir HTML de origen
curl -X PUT "https://api.groupdocs.cloud/v2.0/storage/file/input.html" \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
-H "Content-Type: text/html" \
--data-binary @input.html
Solicitud de conversión
curl -X POST "https://api.groupdocs.cloud/v2.0/conversion/convert" \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"fileInfo": {
"filePath": "input.html",
"storageName": "DefaultStorage"
},
"outputPath": "output.xlsx",
"format": "xlsx",
"convertOptions": {
"preserveOriginalFormatting": true
}
}'
Descargar resultado XLSX
curl -X GET "https://api.groupdocs.cloud/v2.0/storage/file/output.xlsx" \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
-o output.xlsx
Para obtener una lista completa de los parámetros y ejemplos adicionales, consulte la documentación oficial de la API.
Conclusión
La conversión de HTML a XLSX en Java se vuelve sencilla cuando aprovechas el procesamiento basado en la nube de GroupDocs.Conversion Cloud SDK for Java. El SDK abstrae las complejidades de analizar tablas HTML, manejar estilos y generar un archivo XLSX que cumpla con los estándares, lo que lo hace ideal para aplicaciones web del lado del servidor, basadas en servlets o Spring Boot. Ya sea que estés construyendo un servidor de conversión dedicado, un microservicio o un procesador por lotes multihilo, la misma API escala para manejar la carga. Recuerda obtener una licencia temporal desde la página de licencia temporal para evaluación y revisar los detalles de precios para uso en producción. Con el código y los ejemplos de cURL en esta guía, ahora puedes integrar la exportación de HTML a XLSX en cualquier solución Java.
Preguntas frecuentes
¿Cómo puedo realizar la conversión de HTML a XLSX en un servlet Java?
Cree un servlet que reciba el archivo HTML cargado, use el GroupDocs.Conversion Cloud SDK for Java para llamar a convertDocument, y escriba el flujo XLSX resultante de vuelta en la respuesta HTTP. El cliente thread‑safe del SDK funciona bien dentro de contenedores servlet.
¿Es posible ejecutar la conversión de HTML a XLSX como un microservicio en Java?
Sí. Empaquete la lógica de conversión en una aplicación ligera Spring Boot, exponga un endpoint REST y deje que el SDK maneje la transformación real del formato. Este enfoque se ajusta al patrón de microservicio de conversión de HTML a XLSX en Java.
¿Puedo convertir HTML a XLSX en una aplicación Java multihilo?
El SDK está diseñado para ser thread‑safe, por lo que puedes lanzar múltiples tareas de conversión en paralelo, lo cual es útil para un servidor de conversión de HTML a XLSX de alto volumen en escenarios Java.
¿Dónde puedo encontrar más detalles sobre la licencia de GroupDocs.Conversion Cloud SDK for Java?
Visite la página de licencia temporal para obtener una clave de prueba y consulte la página de precios para opciones de licencia completa. Ambos enlaces se proporcionan en la página principal del producto.
