thymeleafの内部的には、th:で始まる各処理はStandardDialectというDialectの一つとして定義されています。
これらのStandardDialectは内部でOGNL式を評価していて、これに失敗したときに例外を投げるようになってます。
さらにすべてのDialectの処理を担うプロセッサーは、IProcessorの実装クラスとして定義されているため、このprocessメソッドをフックして、例外を補足すれば万事解決。
なので、IProcessorを実装した委譲クラスでStandardDiarect.getProcessors()あたりが返却しているProcessorをラップしてあげればOKです。
ただしラップするのは結構面倒です。
ひとつの方法としては、StandardDialect.getProcessorsをオーバーライドさせるために、テンプレートエンジンが保有しているDialectConfigurationを文字通り「差し替える」という方法があります。
(ここまでやるくらいなら、ダイアレクトつかっちゃったほうがいい気もします。。)
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。