xslt 変換を使用して、Apache FOP ライブラリを介して Java オブジェクトを pdf にフォーマットしています。特に、オブジェクトのフィールドである java.util.Date を DD/MM/YYYY 形式にフォーマットしたいと考えています。組み込み関数「format-dateTime」を使用してフォーマットできるようにするために、xslt バージョンを 2.0 に設定し、変換プロセッサを saxon-8.7 に切り替えました。これは、xalan がバージョン 2.0 をサポートしていなかったためです。次に、次のように xslt に日付フォーマット命令を追加しました。 :
Value date: <xsl:value-of select="format-dateTime(valueDate, '[D01]/[M01]/[Y0001]') " />
変換を開始する前に、Date フィールドを stdout に出力して、入力オブジェクトで正しく値が設定されていることを確認しました。
valueDate: Thu Jan 01 01:00:00 CET 1970
そして、それは私が期待したものです。
しかし、xsl 変換後の出力テキストには、(正しくフォーマットされた) 日付の前に望ましくない「言語」情報が表示されます。
[Language: en]01/01/1970
誰かが理由を知っていますか?