0

次のJavaコードがあります。XQJ api を使用してテスト XQuery プログラムを作成するために XQJ を使用しています。JSR-000225 XQuery API for Java 1.0 最終リリースをダウンロードし、クラスパスに xqjapi.jar を追加しました。Javaコードは次のように単純です

import javax.xml.xquery.XQConnection;
import javax.xml.xquery.XQDataSource;
import javax.xml.xquery.XQException;

public class SaxonExtJavaObject {

public static void main(String[] args) throws XQException, InstantiationException,       IllegalAccessException, ClassNotFoundException {

  XQDataSource xqds = (XQDataSource)
          Class.forName("com.jsr225.xqj").newInstance();

       // obtain a connection
       XQConnection con = xqds.getConnection("usr", "passwd");
       System.out.println("connected");
}
}

私の問題は、次の例外があることです

   Exception in thread "main" java.lang.ClassNotFoundException: com.jsr225.xqj
at java.net.URLClassLoader$1.run(Unknown Source)
at java.net.URLClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)

これを解決するのを手伝ってください。

4

1 に答える 1

3

実際のデータ ソースとして機能する製品 (つまり、XQuery プロセッサ) が必要です。サポートされている実装のリストはhttp://xqj.net/にあります。

JDBC と同じように、データベースで許可される操作を定義するインターフェースがあっても、選択したタスクを実行する実装 (MySQL、PostgreSQL、DB2 など) が必要です。

Java で記述された XML データベース用の XQJ 実装があります: BaseXeXist 、およびZorbaMarkLogic (商用)、およびSedna (C/C++ で記述)
へのインターフェース。

あなたの例では、Saxon を参照しています。Saxon と XQJ の使用に関する情報は、Saxon のドキュメントにあります。

これが少し問題を解決するのに役立ったことを願っています。

マイケル

于 2012-07-06T08:20:39.667 に答える