HTMLレポートをExcelスプレッドシートに変換することは、ユーザーが分析結果や請求書をダウンロードできるようにする必要があるJavaベースのWebアプリケーションで頻繁に求められる要件です。 GroupDocs.Conversion Cloud SDK for Java は、ローカルにOfficeをインストールすることなく、フォーマット変換の重い処理を処理する堅牢なAPIを提供します。このガイドでは、SDKのセットアップ方法、変換コードの記述方法、そしてcURLを使用したRESTインターフェイス経由で同じサービスを呼び出す方法を紹介します。最後まで読めば、HTMLからXLSX への変換をサーバー、サーブレット、Spring Bootアプリ、または任意のマルチスレッドJavaサービスに組み込む準備が整います。
JavaでHTMLレポートをXLSXにエクスポートする - 要件
多くのエンタープライズ ポータルは、ユーザーがオフライン分析のために XLSX ワークブックとしてエクスポートしたい動的な HTML ダッシュボードを生成します。典型的な要件は次のとおりです:
- クラウドストレージに保存されている、またはオンザフライで生成されたHTMLソースへのアクセス。
- 変換時にテーブル構造、cell スタイル、数値形式を保持。
- Microsoft Office をインストールせずに、バックエンドサーバー、サーブレットコンテナ、またはマイクロサービス内で変換を実行できる機能。
手動のコピー‑ペーストやクライアント側のライブラリでは、一貫したフォーマットを保証できません。特に、大規模なレポートや高並行性シナリオ(例:Java の HTML から XLSX への変換サーバー)を扱う場合は注意が必要です。
エクスポート要件に対応するための GroupDocs.Conversion Cloud SDK for Java の活用
SDK は、HTML を入力として、XLSX を出力としてサポートするクラウドベースの変換エンジンを提供し、ローカルの Office コンポーネントは不要です。要件に合致する主な機能は次のとおりです:
- Cloud processing - 重い変換は GroupDocs サーバー上で実行され、Java の HTML から XLSX への変換サーブレットや Spring Boot Web アプリケーションに最適です。
- Configurable options - 元の書式を保持し、ワークシート名を設定し、
XlsxConvertOptionsを使用してセルのデータ型を制御できます。 - Thread‑safe client - Java における HTML から XLSX への変換のマルチスレッド処理に適しており、高スループットのバッチジョブを実現します。
詳細については、公式ドキュメント と APIリファレンス を参照してください。
Java における HTML から XLSX への変換: 実装
GroupDocs.Conversion Cloud SDK のインストール
Maven プロジェクトに SDK を追加します:
<dependency>
<groupId>com.groupdocs</groupId>
<artifactId>groupdocs-conversion-cloud</artifactId>
<version>23.12</version>
</dependency>
または、インストールコマンドを実行してください:
mvn install com.groupdocs:groupdocs-conversion-cloud
APIクライアントの初期化
認証情報を使用して ApiClient を作成し、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);
ソースファイル情報の設定
デフォルトのクラウドストレージにある HTML ファイルを指定します。
import com.groupdocs.conversion.cloud.model.FileInfo;
FileInfo sourceFile = new FileInfo();
sourceFile.setFilePath("input.html"); // path in the cloud storage
sourceFile.setStorageName("DefaultStorage"); // optional
XLSX 変換オプションの構成
元の書式設定を保持するなどのオプションを調整します。
import com.groupdocs.conversion.cloud.model.XlsxConvertOptions;
XlsxConvertOptions xlsxOptions = new XlsxConvertOptions();
xlsxOptions.setPreserveOriginalFormatting(true);
変換を実行し、結果を取得する
リクエストを作成し、実行して、出力パスを取得します。
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();
}
Java を使用した HTML ドキュメントの XLSX への変換 - 完全なコード例
以下の例は、すべての要素を単一の実行可能クラスにまとめています。
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();
}
}
}
注: このコード例はコア機能を示しています。プロジェクトで使用する前に、ファイルパス(
input.html、output.xlsx)を実際の場所に合わせて更新し、必要なすべての依存関係が正しくインストールされていることを確認し、開発環境で徹底的にテストしてください。問題が発生した場合は、公式ドキュメント を参照するか、サポートチーム にお問い合わせください。
REST と cURL を使用した HTML からの XLSX エクスポートの実行
Javaコードを書かずに直接REST APIを呼び出すことで、同じ変換を実行できます。フローはSDKの手順と同様で、トークンを取得し、HTMLファイルをアップロードし、変換をリクエストし、XLSX結果をダウンロードします。
アクセストークンの取得
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"
ソースHTMLをアップロード
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
変換リクエスト
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
}
}'
XLSX 結果のダウンロード
curl -X GET "https://api.groupdocs.cloud/v2.0/storage/file/output.xlsx" \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
-o output.xlsx
パラメータの完全な一覧と追加の例については、公式 API ドキュメントをご覧ください。
結論
HTMLからXLSXへの変換は、GroupDocs.Conversion Cloud SDK for Java のクラウドベース処理を活用することでシンプルになります。SDKはHTMLテーブルの解析、スタイルの処理、標準準拠のXLSXファイル生成という複雑さを抽象化し、サーバーサイド、サーブレットベース、またはSpring Bootウェブアプリケーションに最適です。専用の変換サーバー、マイクロサービス、またはマルチスレッドバッチプロセッサを構築する場合でも、同じAPIが負荷に応じてスケールします。評価のために一時ライセンスページから一時ライセンスを取得し、実運用時の価格詳細を確認してください。このガイドのコードとcURL例を使用すれば、任意のJavaソリューションにHTMLからXLSXへのエクスポートを統合できます。
よくある質問
JavaサーブレットでHTMLからXLSXへの変換を実行するにはどうすればよいですか?
アップロードされたHTMLファイルを受け取るサーブレットを作成し、GroupDocs.Conversion Cloud SDK for Java を使用して convertDocument を呼び出し、生成されたXLSXストリームをHTTPレスポンスに書き戻します。SDK のスレッドセーフなクライアントはサーブレットコンテナ内でうまく機能します。
HTML を XLSX 変換を Java のマイクロサービスとして実行することは可能ですか?
はい。変換ロジックを軽量な Spring Boot アプリケーションにパッケージ化し、REST エンドポイントを公開し、SDK に実際のフォーマット変換を任せます。このアプローチは Java の HTML から XLSX 変換マイクロサービス パターンに適しています。
マルチスレッドの Java アプリケーションで HTML を XLSX に変換できますか?
SDK はスレッドセーフに設計されているため、複数の変換タスクを並行して起動できます。これにより、Java シナリオでの大量の HTML から XLSX への変換サーバーに役立ちます。
GroupDocs.Conversion Cloud SDK for Java のライセンスに関する詳細はどこで確認できますか?
一時ライセンスページにアクセスしてトライアルキーを取得し、価格ページでフルライセンスオプションを確認してください。両方のリンクは製品のメインページに掲載されています。
