Class SpringContextUtils


  • public class SpringContextUtils
    extends Object

    Utility class for easy access of information stored at the context in a Spring-enabled application (such as the Spring ApplicationContext).

    Since:
    3.0.3
    Author:
    Daniel Fernández
    • Field Detail

      • WEB_SESSION_ATTRIBUTE_NAME

        public static final String WEB_SESSION_ATTRIBUTE_NAME

        This is the name of the model attribute that will hold the (asychronously resolved) WebSession object in order to be used whenever needed, avoiding the need to block for obtaining it from the ServerWebExchange.

        Note resolving the WebSession from the reactive Mono<WebSession> stream does mean the creation of a WebSession instance, but not the real creation of a persisted session sent to the browser.

        Value: "thymeleafWebSession"

        See Also:
        WebSession, Constant Field Values
    • Method Detail

      • getApplicationContext

        public static org.springframework.context.ApplicationContext getApplicationContext​(org.thymeleaf.context.ITemplateContext context)

        Get the ApplicationContext from the Thymeleaf template context.

        Note that the application context might not be always accessible (and thus this method can return null). Application Context will be accessible when the template is being executed as a Spring View, or else when an object of class ThymeleafEvaluationContext has been explicitly set into the ITemplateContext context with variable name ThymeleafEvaluationContext.THYMELEAF_EVALUATION_CONTEXT_CONTEXT_VARIABLE_NAME.

        Parameters:
        context - the template context.
        Returns:
        the application context, or null if it could not be accessed.
      • getRequestContext

        public static IThymeleafRequestContext getRequestContext​(org.thymeleaf.context.IExpressionContext context)

        Get the IThymeleafRequestContext from the Thymeleaf context.

        The returned object is a wrapper on the Spring request context that hides the fact of this request context corresponding to a Spring WebMVC or Spring WebFlux application.

        This will be done by looking for a context variable called SpringContextVariableNames.THYMELEAF_REQUEST_CONTEXT.

        Parameters:
        context - the context
        Returns:
        the thymeleaf request context