当ブログに掲載しているサンプルは、すべて利用者の自己責任という形でお願いします。
ただし、明らかな不具合がある場合、ご連絡いただければ、訂正記事を出します。
また、こちらのサンプルは、別のサイト等への公開、転載は一切禁止しています。
どうしてもと言う場合は、筆者にあらかじめご連絡ください。

テクてく Lotus 技術者 Slack に参加しよう!

2009年6月4日木曜日

ノーツDBの文書を取得する

昨日に引き続いてJavaのサンプルです。

このサンプルを実行するには、JRE(JDKでも良い)の他に、ノーツクライアントがインストールされていることが必須です。
また、CLASSPATH変数に、「c:\Lotus\Notes\jvm\lib\ext\Notes.jar」
を追加する必要もあります。
※c:\Lotus\Notes\は筆者のノーツクライアントのプログラムパスです。

このNotes.jarの中にノーツをJavaから扱うためのプログラムが格納されているんですね。
それを利用しますよ。と言っているのが
import lotus.domino.*;
です。


今回のサンプルは、ローカルPCにある"abcde.nsf"をオープンして、
"($All)"ビューにある文書を取得して、そのタイトルをコンソールに出力するというものです。
この場合のコンソールは、「コマンドプロンプト」になります(筆者は当然?Windows環境なので)。
実行すると以下の画面のようになります。


----------------------------------------------------------------
import lotus.domino.*;

public class OpenDocument extends NotesThread {
//メイン
public static void main( String[] args ) {
try {
//スレッドを開始する
NotesThread.sinitThread();

//Sessionの開始
Session session = NotesFactory.createSession();

//指定したNotes DBのオープン
Database curdb = session.getDatabase( "", "abcde.nsf" );

//ビューの取得
View view = curdb.getView( "($All)" );

//ビュー内の文書の取得
Document doc = view.getFirstDocument();

//全文書分ループ
while ( doc != null ) {
//文書のSUbjectフィールドを表示
System.out.println( doc.getItemValue( "Subject" ) );

//次の文書を取得
doc = view.getNextDocument( doc );
}

}
catch ( NotesException e ) {
System.out.println( e.id + " " + e.text );
}
}
}



【PR】ノーツ/ドミノに関するお問い合わせは下記まで【PR】
Lotus Notes/Domino カスタマイズとセキュリティ強化 - 株式会社エフ

0 件のコメント: