- PR -

サーブレットを用いたXindiceでのドキュメントの削除方法は?

1
投稿者投稿内容
Green
会議室デビュー日: 2003/09/07
投稿数: 17
投稿日時: 2004-09-12 23:30
こんにちは。
現在TomcatとXindiceを用いてサーブレットからXMLファイルの登録を行っております。
データベースに登録はできたのですが、ドキュメントの削除方法がわからなくて困っております。
サーブレットでドキュメントの削除はできるのでしょうか。
どなたかよい方法がありましたらご教授お願いします。

参考までに下記にサーブレットでドキュメントを追加したコードを記載しておきます。

=====================================

import org.xmldb.api.base.Collection;
import org.xmldb.api.modules.CollectionManagementService;
import org.xmldb.api.modules.XMLResource;
import org.xmldb.api.*;
import org.xmldb.api.base.*;
import org.xmldb.api.modules.*;
import java.io.*;
import java.util.*;
import javax.servlet.*;
import javax.servlet.http.*;
import org.w3c.dom.*;

public class Save extends HttpServlet {
Collection col = null;
public void doPost(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {
response.setContentType("text/html; charset=Shift_JIS");
request.setCharacterEncoding("JISAutoDetect");
PrintWriter out=response.getWriter();

//登録するXMLドキュメントを生成する組み合わせ
String A ="<?xml version=\"1.0\" encoding=\"Shift_JIS\" standalone=\"yes\"?>\n" ;
String B ="<XML>\n <SAMPLE>ABC</SAMPLE>\n</XML>";
String Document = A+B;

//Database実装クラスの登録
try{
String driver = "org.apache.xindice.client.xmldb.DatabaseImpl";
Class c = Class.forName(driver);
Database database = (Database) c.newInstance();
DatabaseManager.registerDatabase(database);

//コレクションの取得
col = DatabaseManager.getCollection("xmldb:xindice:///db/SampleDB");

// テストドキュメントをXMLResourceオブジェクトとして、Xindiceに追加する
String xmldataname = "Sample_XML";
XMLResource resource = (XMLResource)col.createResource(xmldataname, XMLResource.RESOURCE_TYPE);
resource.setContent( Document );

// XMLResourceオブジェクトとなったテストドキュメントをコレクションに追加する
col.storeResource(resource);
System.out.println("XindiceのデータベースにXMLドキュメントを追加しました" );
if (col != null) {
col.close();
}
}
catch(Throwable ef){
System.out.println(ef);
}
response.setContentType("text/html;charset=Shift_JIS");
out.println("<HTML><HEAD></HEAD><BODY>データベースに登録完了しました!</BODY></HTML>");

// コレクションのクローズ はしない
// if (col != null) {
// col.close();
// }
}
}

[ メッセージ編集済み 編集者: Green 編集日時 2004-09-12 23:34 ]
1

スキルアップ/キャリアアップ(JOB@IT)