Formcoordinator ユーザーズガイド - ソフトウェア - Fujitsu

Formcoordinator ユーザーズガイド - ソフトウェア - Fujitsu Formcoordinator ユーザーズガイド - ソフトウェア - Fujitsu

software.fujitsu.com
von software.fujitsu.com Mehr von diesem Publisher
14.02.2013 Aufrufe

・ コピーを行うドキュメントオブジェクトに存在する項目が、コンストラクタで指定したドキュメントオブジェクトに存在しな い場合は、コピーされません。 ・ コピーを行うドキュメントオブジェクトに存在しない項目が、コンストラクタで指定したドキュメントオブジェクトに存在す る場合は、その項目は無視されます。 ・ コピーを行うドキュメントオブジェクトの項目が、データを持たない場合(空要素の場合)は、データのコピーは行われ ません。 例: コンストラクタのドキュメントオブジェクト abc ABC xyz パラメタ: doc ↓ コピー後のドキュメントオブジェク ト あいうえお かきくけこ さしすせそ ABC はひふへほ たちつてと 引数のドキュメントオブジェクト あいうえお かきくけこ さしすせそ たちつてと なにぬねの はひふへほ ドキュメントオブジェクト コピーを行うXMLデータのドキュメントオブジェクトを指定してください。 例外: java.lang.IllegalArgumentException パラメタ「doc」がnullまたは空のオブジェクトの場合 com.fujitsu.form.XmlProcessorException ■ 使用例 次に示すどちらかの場合 - XMLパーサでエラーが発生した場合 - ドキュメントオブジェクトの操作に失敗した場合 XmlDataAccessクラスおよびItemAttributeAccessクラスの使用例を示します。 - 275 -

入出力共にFormcoordinatorの場合 import org.w3c.dom.*; import com.fujitsu.form.*; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.io.IOException; import javax.servlet.ServletException; public class SampleServlet extends HttpServlet { public void doPost(HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException { try{ InputDataBuilder idb = new InputDataBuilder(request); Document idoc = idb.getXMLData(); XmlDataAccess xdai = new XmlDataAccess(idoc); // 入力データから個々の項目を取得します。 String 氏名 = xdai.getValue("個人データ/氏名"); String 年齢 = xdai.getValue("個人データ/年齢"); String 性別 = xdai.getValue("個人データ/性別"); String 部署名 = xdai.getValue("会社情報/部署名"); String 社員番号 = xdai.getValue("会社情報/社員番号"); // データベースなどへデータを登録します。 ・ ・ ・ // Webブラウザで未入力の項目は、送信されないので、その項目を編集する場合 // は、雛形で補う必要があります。 // Windowsの場合は以下のように記述します。 OutputDataBuilder odb = new OutputDataBuilder(request, java.net.URLEncoder.encode("file:///c:/pmd", System.getProperty("file.encoding")), "sample"); // SolarisおよびLinuxの場合は以下のように記述します。 // OutputDataBuilder odb = // new OutputDataBuilder(request, // java.net.URLEncoder.encode("file:////home/pmd", // System.getProperty("file.encoding")), "sample"); // 雛形のXMLデータをドキュメントオブジェクトで取得します。 Document odoc = odb.getTemplateXMLData(); // 入力データで未入力部分に対して、出力データで値を設定する場合、 // 次に示すように指定します。 XmlDataAccess xdao = new XmlDataAccess(odoc); xdao.copy(idoc); xdao.setValue("入社/入社年度", "入力を御願いします"); // 項目に項目制御情報を設定します。 ItemAttributeAccess iaa = new ItemAttributeAccess("項目制御情報"); iaa.setColor("syear", ItemAttributeAccess.RED); iaa.setColor("name", ItemAttributeAccess.BLUE); odb.setXMLData(xdao.getDocument(), true); - 276 -

入出力共に<strong>Formcoordinator</strong>の場合<br />

import org.w3c.dom.*;<br />

import com.fujitsu.form.*;<br />

import javax.servlet.http.HttpServlet;<br />

import javax.servlet.http.HttpServletRequest;<br />

import javax.servlet.http.HttpServletResponse;<br />

import java.io.IOException;<br />

import javax.servlet.ServletException;<br />

public class SampleServlet extends HttpServlet {<br />

public void doPost(HttpServletRequest request,<br />

HttpServletResponse response)<br />

throws IOException, ServletException<br />

{<br />

try{<br />

InputDataBuilder idb = new InputDataBuilder(request);<br />

Document idoc = idb.getXMLData();<br />

XmlDataAccess xdai = new XmlDataAccess(idoc);<br />

// 入力データから個々の項目を取得します。<br />

String 氏名 = xdai.getValue("個人データ/氏名");<br />

String 年齢 = xdai.getValue("個人データ/年齢");<br />

String 性別 = xdai.getValue("個人データ/性別");<br />

String 部署名 = xdai.getValue("会社情報/部署名");<br />

String 社員番号 = xdai.getValue("会社情報/社員番号");<br />

// データベースなどへデータを登録します。<br />

・<br />

・<br />

・<br />

// Webブラウザで未入力の項目は、送信されないので、その項目を編集する場合<br />

// は、雛形で補う必要があります。<br />

// Windowsの場合は以下のように記述します。<br />

OutputDataBuilder odb =<br />

new OutputDataBuilder(request,<br />

java.net.URLEncoder.encode("file:///c:/pmd",<br />

System.getProperty("file.encoding")), "sample");<br />

// SolarisおよびLinuxの場合は以下のように記述します。<br />

// OutputDataBuilder odb =<br />

// new OutputDataBuilder(request,<br />

// java.net.URLEncoder.encode("file:////home/pmd",<br />

// System.getProperty("file.encoding")), "sample");<br />

// 雛形のXMLデータをドキュメントオブジェクトで取得します。<br />

Document odoc = odb.getTemplateXMLData();<br />

// 入力データで未入力部分に対して、出力データで値を設定する場合、<br />

// 次に示すように指定します。<br />

XmlDataAccess xdao = new XmlDataAccess(odoc);<br />

xdao.copy(idoc);<br />

xdao.setValue("入社/入社年度", "入力を御願いします");<br />

// 項目に項目制御情報を設定します。<br />

ItemAttributeAccess iaa = new ItemAttributeAccess("項目制御情報");<br />

iaa.setColor("syear", ItemAttributeAccess.RED);<br />

iaa.setColor("name", ItemAttributeAccess.BLUE);<br />

odb.setXMLData(xdao.getDocument(), true);<br />

- 276 -

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!