Class WebMvcUtils

java.lang.Object
io.microsphere.spring.webmvc.util.WebMvcUtils

public abstract class WebMvcUtils extends Object
Spring Web MVC Utilities Class
Since:
1.0.0
Author:
Mercy
  • Field Details

    • HANDLER_METHOD_ARGUMENTS_ATTRIBUTE_NAME_PREFIX

      public static final String HANDLER_METHOD_ARGUMENTS_ATTRIBUTE_NAME_PREFIX
      See Also:
    • HANDLER_METHOD_REQUEST_BODY_ARGUMENT_ATTRIBUTE_NAME_PREFIX

      public static final String HANDLER_METHOD_REQUEST_BODY_ARGUMENT_ATTRIBUTE_NAME_PREFIX
      See Also:
    • HANDLER_METHOD_RETURN_VALUE_ATTRIBUTE_NAME_PREFIX

      public static final String HANDLER_METHOD_RETURN_VALUE_ATTRIBUTE_NAME_PREFIX
      See Also:
    • supportedConverterTypes

      public static final Set<Class<? extends org.springframework.http.converter.HttpMessageConverter<?>>> supportedConverterTypes
  • Constructor Details

    • WebMvcUtils

      public WebMvcUtils()
  • Method Details

    • getHttpServletRequest

      public static jakarta.servlet.http.HttpServletRequest getHttpServletRequest() throws IllegalStateException
      Gets the current HttpServletRequest object

      By default, HttpServletRequest is initialized in RequestContextFilter, HttpServletRequest from the Servlet HTTP request thread ThreadLocal is obtained from InheritableThreadLocal and can be obtained in the child thread.

      Returns:
      null returns the current HttpServletRequest object.
      Throws:
      IllegalStateException
    • getHttpServletRequest

      public static jakarta.servlet.http.HttpServletRequest getHttpServletRequest(org.springframework.web.context.request.WebRequest webRequest)
    • getWebApplicationContext

      public static org.springframework.web.context.WebApplicationContext getWebApplicationContext() throws IllegalStateException
      Gets the WebApplicationContext associated with the current Servlet Request request
      Returns:
      Current Servlet Request associated with WebApplicationContext
      Throws:
      IllegalStateException - In a non-Web scenario, an exception is thrown
    • setHandlerMethodRequestBodyArgument

      public static void setHandlerMethodRequestBodyArgument(Method method, Object requestBodyArgument)
      Set the @RequestBody method parameter in HandlerMethod to the ServletRequest context
      Parameters:
      method - Handler Method
      requestBodyArgument - @RequestBody The method parameters
    • setHandlerMethodReturnValue

      public static void setHandlerMethodReturnValue(jakarta.servlet.http.HttpServletRequest request, Method method, Object returnValue)
    • setHandlerMethodRequestBodyArgument

      public static void setHandlerMethodRequestBodyArgument(jakarta.servlet.ServletRequest request, Method method, Object requestBodyArgument)
      Set the @RequestBody method parameter in HandlerMethod to the ServletRequest context
      Parameters:
      request - ServletRequest
      method - Handler Method
      requestBodyArgument - @RequestBody The method parameters
    • getHandlerMethodRequestBodyArgument

      public static <T> T getHandlerMethodRequestBodyArgument(jakarta.servlet.ServletRequest request, org.springframework.web.method.HandlerMethod handlerMethod)
      Gets the @RequestBody method parameter from the ServletRequest context
      Type Parameters:
      T - @RequestBody Method parameter Types
      Parameters:
      request - ServletRequest
      handlerMethod - HandlerMethod
      Returns:
      @RequestBody Method parameters if present, otherwise,null
    • getHandlerMethodRequestBodyArgument

      public static <T> T getHandlerMethodRequestBodyArgument(jakarta.servlet.ServletRequest request, Method method)
      Gets the @RequestBody method parameter from the ServletRequest context
      Type Parameters:
      T - @RequestBody Method parameter Types
      Parameters:
      request - ServletRequest
      method - Handler Method
      Returns:
      @RequestBody method parameter if present, otherwise null
    • getHandlerMethodArguments

      public static Object[] getHandlerMethodArguments(org.springframework.web.context.request.WebRequest webRequest, org.springframework.web.method.HandlerMethod handlerMethod)
    • getHandlerMethodArguments

      public static Object[] getHandlerMethodArguments(org.springframework.web.context.request.WebRequest webRequest, org.springframework.core.MethodParameter parameter)
    • getHandlerMethodArguments

      public static Object[] getHandlerMethodArguments(org.springframework.web.context.request.WebRequest webRequest, Method method)
    • getHandlerMethodArguments

      public static Object[] getHandlerMethodArguments(jakarta.servlet.ServletRequest request, org.springframework.web.method.HandlerMethod handlerMethod)
      Gets the HandlerMethod method parameter
      Parameters:
      request - ServletRequest
      handlerMethod - HandlerMethod
      Returns:
      non-null
    • getHandlerMethodArguments

      public static Object[] getHandlerMethodArguments(jakarta.servlet.ServletRequest request, Method method)
      Gets the HandlerMethod method parameter
      Parameters:
      request - ServletRequest
      method - Method
      Returns:
      non-null
    • getHandlerMethodArguments

      public static Object[] getHandlerMethodArguments(Method method)
      Gets the HandlerMethod method parameter
      Parameters:
      method - Method
      Returns:
      non-null
    • getHandlerMethodReturnValue

      public static <T> T getHandlerMethodReturnValue(jakarta.servlet.ServletRequest request, org.springframework.web.method.HandlerMethod handlerMethod)
      Gets the value returned by the HandlerMethod method
      Type Parameters:
      T - Method return value type
      Parameters:
      request - ServletRequest
      handlerMethod - HandlerMethod
      Returns:
      HandlerMethod Method return value
    • getHandlerMethodReturnValue

      public static <T> T getHandlerMethodReturnValue(jakarta.servlet.ServletRequest request, Method method)
      Gets the value returned by the HandlerMethod method
      Type Parameters:
      T - Method return value type
      Parameters:
      request - ServletRequest
      method - Method
      Returns:
      HandlerMethod Method return value
    • getHandlerMethodReturnValue

      public static <T> T getHandlerMethodReturnValue(Method method)
      Gets the value returned by the HandlerMethod method
      Type Parameters:
      T - Method return value type
      Parameters:
      method - Method
      Returns:
      HandlerMethod Method return value
    • isControllerAdviceBeanType

      public static boolean isControllerAdviceBeanType(Class<?> beanType)
      Determine whether the Bean Type is present annotated by ControllerAdvice
      Parameters:
      beanType - Bean Type
      Returns:
      If ControllerAdvice bean type is present , return true , or false.
    • getWebApplicationContext

      public static org.springframework.web.context.WebApplicationContext getWebApplicationContext(jakarta.servlet.http.HttpServletRequest request, jakarta.servlet.ServletContext servletContext)
      Get the WebApplicationContext from HttpServletRequest
      Parameters:
      request - HttpServletRequest
      servletContext - ServletContext
      Returns:
      WebApplicationContext
      Throws:
      IllegalStateException - if no servlet-specific context has been found
      See Also:
      • RequestContextUtils#getWebApplicationContext(ServletRequest)
      • DispatcherServlet.WEB_APPLICATION_CONTEXT_ATTRIBUTE
    • appendInitParameter

      protected static String appendInitParameter(String existedParameterValue, String... parameterValues)
    • appendInitParameters

      public static void appendInitParameters(jakarta.servlet.ServletContext servletContext, String parameterName, String... parameterValues)
      Append ServletContext Intialized Parameters
      Parameters:
      servletContext - ServletContext
      parameterName - the name of init parameter
      parameterValues - the values of init parameters
    • appendGlobalInitializerClassInitParameter

      public static void appendGlobalInitializerClassInitParameter(jakarta.servlet.ServletContext servletContext, Class<? extends org.springframework.context.ApplicationContextInitializer> contextInitializerClass)
      Append initialized parameter for Global Initializer Class
      Parameters:
      servletContext - ServletContext
      contextInitializerClass - the class of ApplicationContextInitializer
      See Also:
      • ContextLoader.GLOBAL_INITIALIZER_CLASSES_PARAM
    • appendContextInitializerClassInitParameter

      public static void appendContextInitializerClassInitParameter(jakarta.servlet.ServletContext servletContext, Class<? extends org.springframework.context.ApplicationContextInitializer> contextInitializerClass)
      Append initialized parameter for Context Initializer Class
      Parameters:
      servletContext - ServletContext
      contextInitializerClass - the class of ApplicationContextInitializer
      See Also:
      • ContextLoader.CONTEXT_INITIALIZER_CLASSES_PARAM
    • appendFrameworkServletContextInitializerClassInitParameter

      public static void appendFrameworkServletContextInitializerClassInitParameter(jakarta.servlet.ServletContext servletContext, Class<? extends org.springframework.context.ApplicationContextInitializer> contextInitializerClass)
      Append initialized parameter for Context Initializer Class into FrameworkServlet
      Parameters:
      servletContext - ServletContext
      contextInitializerClass - the class of ApplicationContextInitializer
      See Also:
      • FrameworkServlet.applyInitializers(ConfigurableApplicationContext)
    • isPageRenderRequest

      public static boolean isPageRenderRequest(org.springframework.web.servlet.ModelAndView modelAndView)
      Is page render request
      Parameters:
      modelAndView - ModelAndView
      Returns:
      If current request is for page render , return true , or false.