package jp.co.ulsystems.xmldb.logic; import javax.servlet.http.HttpServletRequest; import org.w3c.dom.Document; import jp.co.ulsystems.xmldb.ContentChange; import jp.co.ulsystems.xmldb.ZipCompress; import com.neocore.httpclient.SessionManagedNeoConnection; public class ProposalDownLogic { public static final String BEANNAME = "logic"; private String queryResultsXml = ""; private String docId = ""; public ProposalDownLogic(HttpServletRequest request) throws Exception { docId = request.getParameter("DocID"); } /** * XPathによる検索を実行 **/ public void execute() { String query = "/ND/document-content[../MetaData/DocID="; try { // XPathの条件構築 if (!docId.equals("")) { query += "'" + docId + "']"; } // XPathを使用し検索を実行する // XMLDBとのセッションを確立 SessionManagedNeoConnection session = new SessionManagedNeoConnection("localhost", 7701); session.login("Administrator", "admin"); // 検索実行 queryResultsXml = session.queryXML(query); // XMLDBからログアウト session.logout(); // 機密情報スタイルが定義された要素のテキスト変換処理 Document document = contentChange (queryResultsXml); //提案書を作成する処理 zipCompress (document, docId); } catch (Exception e) { e.printStackTrace(); } } }