私はXSLTをかなり使い慣れており、XSLTの中でJavaを使う方法についてはかなり混乱しています。 あるXMLを別のXMLに変換するXSLテンプレートがあります。私の要件は、私のXSLTの外部Javaクラスメソッドにアクセスすることです。 FileCopyというJavaクラスがあり、そのメソッドはcopyFile()です。 XSLT内のcopyFile()メソッドにアクセスする方法が必要です。XSLT- Javaのカスタムメソッドを参照
答えて
スタイルシートに拡張機能をバインドする必要があります。名前空間、クラス名、およびJavaクラスパスを使用する必要があります。例えば
、あなたのクラスを定義します。
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:filecopy="java:com.test.FileCopy"
exclude-result-prefixes="filecopy">
、その後、あなたはそれを使用することができます。
<xsl:value-of select="filecopy:copyFile($params)"/>
詳しい情報はhere
もちろん、クラスパスのコメントは重要です。上記の例では、上記の例では、スタイルシートを含むフォルダのサブフォルダcomのサブフォルダテストにjavaクラスを入れて、xsltエンジンによって見つけられるようにします。 – Kevan
私のxslファイルがあります例えばC:/ transformである。私はjavaファイルをC:/ transform/com/testに配置しました。私はxslを実行した後、私はエラー - エラー: 'クラス' java:com.test.FileCopy 'を見つけることができません。' 致命的なエラー: 'スタイルシートをコンパイルできませんでした' 工場設定が無効 javax.xml.transform.TransformerConfigurationException:スタイラスをコンパイルできませんでした eet – nishMaria
はFileCopyの "com.test"パッケージですか?私は例として追加しました。パッケージがない場合は、xmlns:filecopy = "java:FileCopy"を試すことができます。 –
- 1. XSLTネストされた参照
- 2. Javaワイルドカード参照
- 3. Javaでの参照
- 4. Java循環参照
- 5. Java:参照とGC
- 6. Java:元のオブジェクト参照を含むオブジェクト内のオブジェクト参照
- 7. JavaのStringオブジェクトの参照
- 8. Javaでのオブジェクトの参照
- 9. Javaのオブジェクトと参照
- 10. WebAppのJava Maven参照ファイル
- 11. Javaオブジェクト参照の問題?
- 12. スーパークラス参照のJavaキャスト
- 13. Javaの戻り参照値(または参照によって)
- 14. javaで参照渡し?
- 15. XSLT変数を動的名で参照する
- 16. 連鎖したXSLTの変数参照に関する質問
- 17. XSLT - 重複した要素への参照
- 18. Javaのオーバーロード:参照を曖昧
- 19. CとJavaの間のポインタの参照
- 20. avroのJavaクラスへの参照方法
- 21. Javaリンクリスト内のノードへの参照
- 22. Javaの更新ファイルの参照が
- 23. Javaでのオブジェクト参照の変更
- 24. C++の参照への参照を間接参照
- 25. Excel - 参照内の参照
- 26. Javaにカスタムメソッドを実装する
- 27. Javaで動的参照を作成
- 28. Javaコードでキーストアファイルを参照する
- 29. 弱い参照を持つJavaシングルトン
- 30. OSX Javaアプレットdebug - GET/POSTを参照
であるXSL中にファイルのコピーを行うには他のいくつかの方法があります外部javaクラスを呼び出すよりも、トランスフォーメーションが必要ですか? XSLTはファイルコピーをサポートしていますか? – nishMaria