AH Formatter / XSL Formatter
Q&A



プログラミング

Java プログラミング

トップ
基本・一般
AH Formatter について
XSL Formatter について
操作方法
プログラミング
XSLT/XSL-FO/SVG/MathML 仕様について
XSLT/XSL-FO/MathML テクニック
索引
Q.  JavaVM+Tomcatの環境でXSLFormatterのJavaインタフェースを使って組版した時に、エラーが発生することがあります。 [No.2008022001]
A. 

XSL FormatterのJavaサンプルプログラムのsample5.javaでは以下のようになっていました。

TransformerFactory transFactory = TransformerFactory.newInstance();
Transformer transformer = transFactory.newTransformer(new StreamSource(fisXsl));
transformer.transform(new StreamSource(fisXml), new StreamResult(bosFo));
bisFo = new ByteArrayInputStream(bosFo.toByteArray());				
axfo.render(bisFo, fosPdf, "@PDF");
			

toByteArray()メソッドは、FOデータをbyte配列でメモリ上に展開します。したがって、大きなサイズのFOデータを組版する場合にメモリ不足が発生し、予期せぬエラーが起こる場合があります。toByteArray()メソッドを使用せず、FOを一時ファイルに保存する方法に変更するとこの問題が解消される可能性があります。

XSL Formatter V4.2 改訂5版以降のsample5.javaはこの方法に変更されております。


Copyright © 1999-2011 Antenna House, Inc. All rights reserved.
Antenna House is a trademark of Antenna House, Inc.