Saxon sends log/error messages to stdout, which means they end up in catalina.out in production. This is not as tidy as it could be. This can be improved by configuring a custom error listener for the transformer, see metadata translator for an example:
https://trac.clarin.eu/ticket/853