WSO2 WSAS アプリケーション サーバー内の Axis2 上にある私の Web サービスには、次のコードが含まれています。
String prop = "javax.xml.transform.TransformerFactory";
String val = "net.sf.saxon.TransformerFactoryImpl";
public static TransformerFactory getTransformerFactory() {
System.setProperty(prop, val); // This line executes normally
return TransformerFactory.newInstance(); // Error occurs inside this call
}
サービスを実行すると、次のエラーが発生します。
[2013-04-15 12:22:41,263] ERROR
{org.apache.axis2.transport.base.threads.NativeWorkerPool} - Uncaught
exception
javax.xml.transform.TransformerFactoryConfigurationError: Provider
net.sf.saxon.TransformerFactoryImpl not found
at javax.xml.transform.TransformerFactory.newInstance(Unknown Source)
at com.example.Setup.getTransformerFactory(Setup.java:40)
at com.example.ProcessFiles.init(ProcessFiles.java:336)
at com.example.TorgApp.incoming(TorgApp.java:229)
...
Saxon-HE-9.4.jar
クラスパスにあり、読み取り可能です。Axis2 ( ) でも使用できます/foo/bar/wso2as/wso2as-4.0.0/tmp/axis2-tmp-6436419317930731973.tmp/axis67573163200472779114Saxon-HE-9.4.jar
。
の Javadoc にnewInstance()
よると、私が設定しているシステム プロパティは、どれを使用するかを識別する他のすべての方法を無効にする必要があるTransformerFactory
ため、優先順位は問題ではありません。
このエラーの原因は何ですか? また、目的の Saxon 変圧器工場を取得するにはどうすればよいですか?