- プロジェクトの作成
「dbxml_gettingstart」という名前でJavaのプロジェクトを新規作成する。 - ライブラリの追加
以下のJar ファイルを追加する。- /opt/oracle/dbxml-2.4.16/lib/dbxml.jar
- /opt/oracle/dbxml-2.4.16/lib/db.jar
- DBD XML の例外処理のソースを記述する。
/*
* File Name :Chapter2_1.java
* Created on :2009/05/15, 22:13:25
* Copyright(c) Exacteye.com All Rights Reserved.
*/
package dbxml.chapter2;
import com.sleepycat.dbxml.XmlContainer;
import com.sleepycat.dbxml.XmlException;
import com.sleepycat.dbxml.XmlManager;
/**
DBXML 例外の処理
* @author obiwan
*/
public class Chapter2_1 {
public static void main(String[] args) throws Throwable{
XmlContainer myConatiner = null;
XmlManager myManager = null;
String theContainer = "container.dbxml";
// XmlConatiner と XmlManager のオープン
try {
myManager = new XmlManager();
myConatiner = myManager.openContainer(theContainer);
} catch (XmlException ex) {
// ここで例外処理を実装する。
ex.printStackTrace();
}
}
} - 実行させる。ソース上にある、container.dbxml は作成していないのでエラーが出るはず。
run:
「java.lang.UnsatisfiedLinkError: no db_java-4.6 in java.library.path」って違うエラーが出た。検索したら、「Thread: java.lang.UnsatisfiedLinkError on Mac OS X with 2.4.16」が参考になった。
Exception in thread "main" java.lang.UnsatisfiedLinkError: no db_java-4.6 in java.library.path
at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1709)
at java.lang.Runtime.loadLibrary0(Runtime.java:823)
at java.lang.System.loadLibrary(System.java:1030)
at com.sleepycat.db.internal.db_javaJNI.(db_javaJNI.java:52)
at com.sleepycat.db.internal.DbEnv.(DbEnv.java:264)
at com.sleepycat.dbxml.XmlManager.(XmlManager.java:78)
at com.sleepycat.dbxml.XmlManager.(XmlManager.java:102)
at dbxml.chapter2.Chapter2_1.main(Chapter2_1.java:27)
Java Result: 1
構築成功 (合計時間: 1 秒)
プロジェクトのプロパティを表示させ、VMオプションに「-Djava.library.path=/opt/oracle/dbxml-2.4.16/lib」を追加した。 - 再度、実行。
run:
com.sleepycat.dbxml.XmlException: Error: container.dbxml: container file not found, or not a container, errcode = CONTAINER_NOT_FOUND
at com.sleepycat.dbxml.dbxml_javaJNI.XmlManager_openContainer__SWIG_2(Native Method)
at com.sleepycat.dbxml.XmlManager.openContainer(XmlManager.java:585)
at com.sleepycat.dbxml.XmlManager.openContainer(XmlManager.java:218)
at com.sleepycat.dbxml.XmlManager.openContainer(XmlManager.java:160)
at dbxml.chapter2.Chapter2_1.main(Chapter2_1.java:28)
構築成功 (合計時間: 1 秒)
今度は想定していた、「container.dbxml」が無い例外が発生する。
2009年5月16日土曜日
Java で Berkely DB XML を操作する 第1回
Java で Berkely DB XML を扱う環境が整ったので、チュートリアル「Getting Started with Berkeley DB XML for Java(日本語訳)」を基にJavaで作ってみる。
登録:
コメントの投稿 (Atom)
0 コメント:
コメントを投稿