= Validator実装サービス jp.ossc.nimbus.service.validator.!MasterValidatorService [http://nimbus.sourceforge.jp/reports/apidocs/jp/ossc/nimbus/service/validator/MasterValidatorService.html jp.ossc.nimbus.service.validator.MasterValidatorService]は、オブジェクトがマスタに含まれているかを検証する[http://nimbus.sourceforge.jp/reports/apidocs/jp/ossc/nimbus/util/validator/Validator.html Validator]実装サービスです。 このサービスは、複合的なサービスで、以下のサービスを下位サービスとして使用します。 ||下位サービスインタフェース||用途|| ||[wiki:Function/service/connection#header_ConnectionFactory jp.ossc.nimbus.service.connection.ConnectionFactory]||JDBCコネクションを取得する。|| ||[wiki:Function/service/connection#header_PersistentManager jp.ossc.nimbus.service.connection.PersistentManager]||データベースからマスタを読み込む。|| ||[wiki:Function/service/codemaster#header_CodeMasterFinder jp.ossc.nimbus.service.codemaster.CodeMasterFinder]||コードマスタを取得する。|| ||[wiki:Function/service/context/ThreadContextService jp.ossc.nimbus.service.context.ThreadContextService]||コードマスタを取得する。|| 以下に検証の都度データベースに問い合わせて検証するサービス定義を示します。 {{{ code xml <?xml version="1.0" encoding="Shift_JIS"?> <!DOCTYPE server PUBLIC "-//Nimbus//DTD Nimbus 1.0//JA" "http://nimbus.sourceforge.jp/dtd/nimbus-service_1_0.dtd"> <server> <manager> <!-- マスタに含まれているかを検証するValidatorサービス --> <service name="Validator" code="jp.ossc.nimbus.service.validator.MasterValidatorService"> <!-- ConnectionFactoryサービスのサービス名を設定する --> <attribute name="ConnectionFactoryServiceName">#ConnectionFactory</attribute> <!-- PersistentManagerサービスのサービス名を設定する --> <attribute name="PersistentManagerServiceName">#PersistentManager</attribute> <!-- マスタ問い合わせクエリを設定する --> <attribute name="Query">select count(1) from USER_MST where ID=?</attribute> <depends>ConnectionFactory</depends> <depends>PersistentManager</depends> </service> <!-- JDBCドライバ経由でConnectionを取得するConnectionFactoryサービス --> <service name="ConnectionFactory" code="jp.ossc.nimbus.service.connection.JDBCConnectionFactoryService"> <attribute name="DriverName">org.hsqldb.jdbcDriver</attribute> <attribute name="ConnectionURL">jdbc:hsqldb:./localDB</attribute> <attribute name="UserName">sa</attribute> <attribute name="Password"></attribute> </service> <!-- Java BeansとデータベースをO/R MappingするPersistentManagerサービス --> <service name="PersistentManager" code="jp.ossc.nimbus.service.connection.DefaultPersistentManagerService"/> </manager> </server> }}} 以下に[wiki:Function/service/codemaster#header_CodeMasterFinder コードマスタ]を使って検証するサービス定義を示します。 {{{ code xml <?xml version="1.0" encoding="Shift_JIS"?> <!DOCTYPE server PUBLIC "-//Nimbus//DTD Nimbus 1.0//JA" "http://nimbus.sourceforge.jp/dtd/nimbus-service_1_0.dtd"> <server> <manager> <!-- マスタに含まれているかを検証するValidatorサービス --> <service name="Validator" code="jp.ossc.nimbus.service.validator.MasterValidatorService"> <!-- CodeMasterFinderサービスのサービス名を設定する --> <attribute name="CodeMasterFinderServiceName">#CodeMasterFinder</attribute> <!-- マスタ問い合わせクエリを設定する --> <attribute name="CodeMasterName">codemaster/USER_MST</attribute> <depends>CodeMasterFinder</depends> </service> <!-- マスターを取得するCodeMasterFinderサービス --> <service name="CodeMasterFinder" code="jp.ossc.nimbus.service.codemaster.CodeMasterService"> <attribute name="BeanFlowInvokerFactoryServiceName">#BeanFlowInvokerFactory</attribute> <attribute name="MasterNames"> codemaster/USER_MST </attribute> <depends>BeanFlowInvokerFactory</depends> </service> <!-- 業務フローを生成するBeanFlowInvokerFactoryサービス --> <service name="BeanFlowInvokerFactory" code="jp.ossc.nimbus.service.beancontrol.DefaultBeanFlowInvokerFactoryService"> <attribute name="DirPaths">flow</attribute> <attribute name="BeanFlowInvokerAccessClass">jp.ossc.nimbus.service.beancontrol.BeanFlowInvokerAccessImpl2</attribute> <attribute name="Validate">true</attribute> </service> </manager> </server> }}} ---- [wiki:Function/service/validator#header_Validator 検証/Validator]