The easiest way to do this is in a microflow(perhaps the save/submit microflow for the application) via a retrieve for Application objects over xpath.
If you have the current application available in the microflow the xpath on the retrieve will look something like this:
[email = $CurrentApplication/email]
This will retrieve any applications that have the exact email as the current application. Its possible you will retrieve the current application if it has been committed already. To account for this add the xpath:
[id != $CurrentApplication]
From there you can decide to provide validation feedback to the user if there are objects retrieved or take any other actions you may need to take.
Hope this helps,
Good idea. I will try it
Thanks for your comment,
I want to point out a great tool, Papercut (opensource), you can install on your local client that acts as an SMTP server. It allows you to read all the emails you send out directly. The mail will not arrive at the destination, which helps to develop email communication and test it fast without setting up a test email account. When setting up the Email Connector and it asks for a password, you can fill in any password, but you can not leave it empty.
Go Make It