When you run the codes on Glassfish, in the view, the Csrf field looks like:
Every request will generate a unique X-Requested-By value.
When the form is submitted, and it will be validated by MVC provider.
MvcContext
MvcContext interface includes the contextual data of MVC, such as context path, application path, etc. And also includes MVC security, such as Csrf and Encoders.
In the above section, we have used Csrf.
At the runtime environment, MvcContext is exposed by EL ${mvc} in the view.
${mvc.contextPath} will get context path.
${mvc.applicationPath} will get the application path declared in the Application class.
${mvc.csrf.name} generate the Csrf token name.
${mvc.csrf.token} generate the Csrf token value.
${mvc.encoders.js(jsValue)} will escape the js scripts.
${mvc.encoders.html(htmlValue)} will escape the html snippets.