電子署名を利用するには、 FormデータBeanのgetPackageDataメソッドでDocumentクラスを取得し、それを引数としてSimplePackageDataManagerクラスのインスタンスを作成します。その後、SimplePackageDataManagerクラスの機能で電子署名を利用します。
import com.fujitsu.form.SimplePackageDataManager; import com.fujitsu.form.SMEEUserInfo; ... public Object onSend(DispatchContext context, FormDataBean formBean) { SimplePackageDataManager spdm = new SimplePackageDataManager(formBean.getPackageData()); // 署名確認 SMEEUserInfo userInfo = new SMEEUserInfo (); userInfo.setManageDirectory("file:///c:/home/user/sctldir"); userInfo.setSlotDirectory("file:///c:/home/user/cmidir"); userInfo.setLDAP(true); spdm.setUserInfo(userInfo); //署名付き申請データの検証 boolean verify = spdm.verify("SampleData"); if (verify != true) { // 改ざんされている。JSP画面でエラー表示 ErrorBean bean = new ErrorBean(); bean.setMessage(spdm.getErrorMessage()); context.setResponseBean("body", errorBean); ... return "base.jsp"; } // データを利用 XmlDataBean inData = formBean.getData(); ... }
SimplePackageDataManagerクラスの使用方法の詳細は“Formcoordinator署名オプションユーザーズガイド”を参照してください。