レポートをword形式にエクスポート

1707 ワード

jsコード
ステップ1、画像をアップロード

$("object").each(function(index) {
				if(this.hasRendered()) {
					this.exportChart({
						exportFormat: "JPEG",
						exportAction: "save",
						exportFileName: this.id,
						exportHandler: "bulletin-image"
					});
					chartParams.push("chartIds=" + this.id);
					if (index % 2 == 0) {
						$("html,body").animate({
							scrollTop: $(this).offset().top
						}, 100).delay(5500);
					}
				} else {
					alert(" , 。");
					chartHasRendered = false;
					return false;
				}
			});

ステップ2、画像を保存する
ExportBean exportBean = FusionChartsExportHelper.parseExportRequestStream(request);
BufferedImage image = ImageGenerator.getChartImage(
					exportBean.getStream(), exportBean.getMetadata());
			String imageFileName = exportBean
					.getExportParameterValue("exportfilename") + ".jpg";
			File imageFile = new File(Dirs.BULLETIN_DIR + imageFileName);
			if (!imageFile.exists()) {
				imageFile.mkdirs();
				ImageIO.write(image, "jpeg", imageFile);
			}

ステップ3では、wordエクスポートを実行し、画像はサーバに保存されており、word生成は正しい画像ストリームを得るだけで完了する.
@Result(name = "success", type = "stream", params = {
			"contentType", "application/msword", "inputName", "bulletinDoc",
			"contentDisposition", "attachment;filename=${fileName}",
			"bufferSize", "8192" }) })