Before writing our first validation rule, the domain model must be imported. The following three global objects will be used:
- Report for storing messages.
- Factory for creating messages.
- Banking inquiry service for information lookup. It contains one method for testing if an account number is unique—
boolean isAccountNumberUnique(Account account)(We won't define and implement this service in this book).
This information goes into
validation.drl (rules will be gradually added into this file as we'll be implementing them).
package droolsbook.validation; import org.drools.runtime.rule.RuleContext; import droolsbook.bank.model.*; import droolsbook.bank.service.*; global ValidationReport validationReport; global ReportFactory reportFactory; ...