Usage by the framework

The Web UI (Wicket viewer) supports user registration, relying on both the EmailNotificationService and EmailService.

The framework provides default implementations of both of these services. The notification service requires no further configuration. The email service (EmailServiceDefault) does require a couple of configuration properties to be set (specifying the SMTP mail server/accounts/password).

User sign-up

For user sign-up, the Web UI (Wicket viewer) will check whether an implementation of this service (and also the EmailNotificationService) is available, and if so will render a sign-up page where the user enters their email address. A verification email is sent (using the aforementioned EmailNotificationService) which includes a link back to the running application; this allows the user then to complete their registration process (choose user name, password and so on). When the user has provided the additional details, the Wicket viewer calls this service in order to create an account for them, and then logs the user on.

Password reset

For the password reset feature, the Wicket viewer will render a password reset page, and use the EmailNotificationService to send a "password forgotten" email. This service provides the ability to reset a password based on the user’s email address.

Further details on the user registration feature (as supported by the Wicket viewer) are discussed here.

Other usages

It is of course possible for domain objects to use this service; it will be injected into domain object or other domain services in the usual way. That said, we expect that such use cases will be comparatively rare; the primary use case is for the Wicket viewer’s sign-up page.