javax.xml.transform.Transformer
に基づいてXSLT処理を行うJavaアプリケーションを実行しています。私はjava-7-openjdk-amd64
を使って古いノートブックでそれを開発しました。別のマシンでJava XSLT処理がTransformerConfigurationExceptionをスローする
javax.xml.transform.TransformerConfigurationException: コンパイルスタイルシートに失敗しました
java-8-openjdk-amd64
と 私は別のマシン上でそれを実行するトランスには、次の例外がスローされますインストールされています。 1エラーが検出されました。XPST0017:XPathの構文エラーは、[...] はnet.sf.saxon.PreparedStylesheet.prepare(PreparedStylesheetで{http://xml.apache.org/xslt/java} java.text.SimpleDateFormat.new() 名前マッチング1引数の機能を見つけることができません。 Javaの:net.sf.saxon.TransformerFactoryImpl.newTemplates(net.sf.saxon.TransformerFactoryImpl.newTransformerでTransformerFactoryImpl.java:139) (TransformerFactoryImpl.java:91)
XSLファイルのルックスで176) このように(重要でない部分は除外します):
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="2.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:java="http://xml.apache.org/xslt/java" exclude-result-prefixes="java">
<xsl:template match="/">
<html>
<body>
<h1>Test Report</h1>
<h2>Test run</a> at
[<xsl:value-of
select="java:format(java:java.text.SimpleDateFormat.new('dd.MM.yyyy HH:mm:ss'), java:java.util.Date.new())" />]
</h2>
トランスフォーマーには明らかにSimpleDateFormat
を呼び出す際に問題がありますが、なぜですか?私はJava7とJava8に関してこれに関する情報を見つけることができませんでした。私はJdk7でコンパイルされたJarファイルをコピーし、それを他のマシンで実行しました。同じ問題ですので、実行時の問題と思われます。 JavaとXSLTについては、まだいくつかのQ + Aがありますが、私にとっては役に立たないものは何もありません。