A number of Zanata's system properties are required for proper operation. Without them, authentication may not work, or important files may be stored in the JBoss process's current directory (whatever that happens to be).
Most of these properties are described in the documentation, but it would be better to catch their absence early in the boot process (I suggest using io.undertow.servlet.ServletExtension). That way, third party code like JavaMelody might not get a chance to write files to the wrong directory.
The main properties (as of Zanata 4.0):
Abort if absent - the first two also need to be documented:
Exactly one of these is required, except you may combine internal and openid - otherwise abort deployment.
Ignore these; just listed for completeness.
(along with ehcache.xml and any cache files in this directory)
For Zanata 4.0, we should consider aborting the deployment if this is present.