Formcoordinator ユーザーズガイド - ソフトウェア - Fujitsu
Formcoordinator ユーザーズガイド - ソフトウェア - Fujitsu Formcoordinator ユーザーズガイド - ソフトウェア - Fujitsu
・ コピーを行うドキュメントオブジェクトに存在する項目が、コンストラクタで指定したドキュメントオブジェクトに存在しな い場合は、コピーされません。 ・ コピーを行うドキュメントオブジェクトに存在しない項目が、コンストラクタで指定したドキュメントオブジェクトに存在す る場合は、その項目は無視されます。 ・ コピーを行うドキュメントオブジェクトの項目が、データを持たない場合(空要素の場合)は、データのコピーは行われ ません。 例: コンストラクタのドキュメントオブジェクト 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 -
- Seite 237 und 238: 付録C FormcoordinatorのAPI Web
- Seite 239 und 240: ■ メソッドの概要 戻り値
- Seite 241 und 242: データサイズの上限値、
- Seite 243 und 244: timeout データベース検索入
- Seite 245 und 246: 例外: java.lang.IllegalArgumentEx
- Seite 247 und 248: ・ hidden項目に指定した値
- Seite 249 und 250: } } } ・ ・ Webブラウザから
- Seite 251 und 252: パラメタに「申請」ボタ
- Seite 253 und 254: 型 名称 説明 public static fin
- Seite 255 und 256: DISPMODE_AUTO 形式: public static
- Seite 257 und 258: formName 例外: 電子フォーム
- Seite 259 und 260: public org.w3c.dom.Document getTemp
- Seite 261 und 262: 戻り値: なし 例外: java.io.I
- Seite 263 und 264: キャラクタセット。 Shift_J
- Seite 265 und 266: 例:複数のINPUTタグを埋め
- Seite 267 und 268: import org.w3c.dom.* ; import javax
- Seite 269 und 270: public void doPost(HttpServletReque
- Seite 271 und 272: ■ メソッドの詳細 getType()
- Seite 273 und 274: ■ コンストラクタの概要
- Seite 275 und 276: dataSizeLimit フォーム送信デ
- Seite 277 und 278: import javax.servlet.* ; import jav
- Seite 279 und 280: } } } ・ ・ データサイズの
- Seite 281 und 282: decode(java.lang.String) 形式: pu
- Seite 283 und 284: yte[] decode_data = Base64.decode(b
- Seite 285 und 286: public com.fujitsu.form.XmlDataAcce
- Seite 287: setValue(java.lang.String, java.lan
- Seite 291 und 292: 項目制御情報を設定しま
- Seite 293 und 294: 戻り値型 メソッド名 説明
- Seite 295 und 296: 関連項目: setBackgroundColor()
- Seite 297 und 298: setBackgroundColor()、setColor() T
- Seite 299 und 300: setSetcursor() SELECT 形式: publi
- Seite 301 und 302: 説明: com.fujitsu.form.XmlProcess
- Seite 303 und 304: 例外: java.lang.IllegalArgumentEx
- Seite 305 und 306: setUnderline(java.lang.String, java
- Seite 307 und 308: type 設定するカーソル設定
- Seite 309 und 310: setListBoxValue(java.lang.String, j
- Seite 311 und 312: XML構造: 出力結果: ・ 例5:
- Seite 313 und 314: パラメタ: formName 例外: 電
- Seite 315 und 316: com.fujitsu.form.FormIOException
- Seite 317 und 318: getXPathName(java.lang.String) 形
- Seite 319 und 320: getItemInfo(java.lang.String) 形
- Seite 321 und 322: switch(itemType){ // 数字項目
- Seite 323 und 324: import javax.servlet.http.HttpServl
- Seite 325 und 326: 項目種別が数字項目であ
- Seite 327 und 328: SENDTYPE_ALLDATA 形式: public sta
- Seite 329 und 330: getDataSendType() 形式: public in
- Seite 331 und 332: INPUTCLASS_LISTBOX 形式: public s
- Seite 333 und 334: 型 名称 説明 public static fin
- Seite 335 und 336: パラメタ: なし 戻り値: 処
- Seite 337 und 338: 入力タイプが混在である
入出力共に<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 -