public abstract class org.springframework.web.servlet.FrameworkServlet extends org.springframework.web.servlet.HttpServletBean implements org.springframework.context.ApplicationContextAware
  minor version: 0
  major version: 59
  flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
  this_class: org.springframework.web.servlet.FrameworkServlet
  super_class: org.springframework.web.servlet.HttpServletBean
{
  public static final java.lang.String DEFAULT_NAMESPACE_SUFFIX;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "-servlet"

  public static final java.lang.Class<?> DEFAULT_CONTEXT_CLASS;
    descriptor: Ljava/lang/Class;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    Signature: Ljava/lang/Class<*>;

  public static final java.lang.String SERVLET_CONTEXT_PREFIX;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  private static final java.lang.String INIT_PARAM_DELIMITERS;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: ",; \t\n"

  private java.lang.String contextAttribute;
    descriptor: Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE
    RuntimeVisibleAnnotations: 
      org.springframework.lang.Nullable()

  private java.lang.Class<?> contextClass;
    descriptor: Ljava/lang/Class;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/lang/Class<*>;

  private java.lang.String contextId;
    descriptor: Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE
    RuntimeVisibleAnnotations: 
      org.springframework.lang.Nullable()

  private java.lang.String namespace;
    descriptor: Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE
    RuntimeVisibleAnnotations: 
      org.springframework.lang.Nullable()

  private java.lang.String contextConfigLocation;
    descriptor: Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE
    RuntimeVisibleAnnotations: 
      org.springframework.lang.Nullable()

  private final java.util.List<org.springframework.context.ApplicationContextInitializer<org.springframework.context.ConfigurableApplicationContext>> contextInitializers;
    descriptor: Ljava/util/List;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/List<Lorg/springframework/context/ApplicationContextInitializer<Lorg/springframework/context/ConfigurableApplicationContext;>;>;

  private java.lang.String contextInitializerClasses;
    descriptor: Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE
    RuntimeVisibleAnnotations: 
      org.springframework.lang.Nullable()

  private boolean publishContext;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  private boolean publishEvents;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  private boolean threadContextInheritable;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  private boolean dispatchOptionsRequest;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  private boolean dispatchTraceRequest;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  private boolean enableLoggingRequestDetails;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  private org.springframework.web.context.WebApplicationContext webApplicationContext;
    descriptor: Lorg/springframework/web/context/WebApplicationContext;
    flags: (0x0002) ACC_PRIVATE
    RuntimeVisibleAnnotations: 
      org.springframework.lang.Nullable()

  private boolean webApplicationContextInjected;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  private volatile boolean refreshEventReceived;
    descriptor: Z
    flags: (0x0042) ACC_PRIVATE, ACC_VOLATILE

  private final java.lang.Object onRefreshMonitor;
    descriptor: Ljava/lang/Object;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=3, locals=0, args_size=0
         0: .line 155
            ldc Lorg/springframework/web/context/support/XmlWebApplicationContext;
            putstatic org.springframework.web.servlet.FrameworkServlet.DEFAULT_CONTEXT_CLASS:Ljava/lang/Class;
         1: .line 161
            new java.lang.StringBuilder
            dup
            ldc Lorg/springframework/web/servlet/FrameworkServlet;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc ".CONTEXT."
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            putstatic org.springframework.web.servlet.FrameworkServlet.SERVLET_CONTEXT_PREFIX:Ljava/lang/String;
         2: .line 167
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.springframework.web.servlet.FrameworkServlet this
         0: .line 246
            aload 0 /* this */
            invokespecial org.springframework.web.servlet.HttpServletBean.<init>:()V
         1: .line 175
            aload 0 /* this */
            getstatic org.springframework.web.servlet.FrameworkServlet.DEFAULT_CONTEXT_CLASS:Ljava/lang/Class;
            putfield org.springframework.web.servlet.FrameworkServlet.contextClass:Ljava/lang/Class;
         2: .line 190
            aload 0 /* this */
         3: .line 191
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            putfield org.springframework.web.servlet.FrameworkServlet.contextInitializers:Ljava/util/List;
         4: .line 198
            aload 0 /* this */
            iconst_1
            putfield org.springframework.web.servlet.FrameworkServlet.publishContext:Z
         5: .line 201
            aload 0 /* this */
            iconst_1
            putfield org.springframework.web.servlet.FrameworkServlet.publishEvents:Z
         6: .line 204
            aload 0 /* this */
            iconst_0
            putfield org.springframework.web.servlet.FrameworkServlet.threadContextInheritable:Z
         7: .line 207
            aload 0 /* this */
            iconst_0
            putfield org.springframework.web.servlet.FrameworkServlet.dispatchOptionsRequest:Z
         8: .line 210
            aload 0 /* this */
            iconst_0
            putfield org.springframework.web.servlet.FrameworkServlet.dispatchTraceRequest:Z
         9: .line 213
            aload 0 /* this */
            iconst_0
            putfield org.springframework.web.servlet.FrameworkServlet.enableLoggingRequestDetails:Z
        10: .line 220
            aload 0 /* this */
            iconst_0
            putfield org.springframework.web.servlet.FrameworkServlet.webApplicationContextInjected:Z
        11: .line 223
            aload 0 /* this */
            iconst_0
            putfield org.springframework.web.servlet.FrameworkServlet.refreshEventReceived:Z
        12: .line 226
            aload 0 /* this */
            new java.lang.Object
            dup
            invokespecial java.lang.Object.<init>:()V
            putfield org.springframework.web.servlet.FrameworkServlet.onRefreshMonitor:Ljava/lang/Object;
        13: .line 247
            return
        end local 0 // org.springframework.web.servlet.FrameworkServlet this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   14     0  this  Lorg/springframework/web/servlet/FrameworkServlet;

  public void <init>(org.springframework.web.context.WebApplicationContext);
    descriptor: (Lorg/springframework/web/context/WebApplicationContext;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.springframework.web.servlet.FrameworkServlet this
        start local 1 // org.springframework.web.context.WebApplicationContext webApplicationContext
         0: .line 289
            aload 0 /* this */
            invokespecial org.springframework.web.servlet.HttpServletBean.<init>:()V
         1: .line 175
            aload 0 /* this */
            getstatic org.springframework.web.servlet.FrameworkServlet.DEFAULT_CONTEXT_CLASS:Ljava/lang/Class;
            putfield org.springframework.web.servlet.FrameworkServlet.contextClass:Ljava/lang/Class;
         2: .line 190
            aload 0 /* this */
         3: .line 191
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            putfield org.springframework.web.servlet.FrameworkServlet.contextInitializers:Ljava/util/List;
         4: .line 198
            aload 0 /* this */
            iconst_1
            putfield org.springframework.web.servlet.FrameworkServlet.publishContext:Z
         5: .line 201
            aload 0 /* this */
            iconst_1
            putfield org.springframework.web.servlet.FrameworkServlet.publishEvents:Z
         6: .line 204
            aload 0 /* this */
            iconst_0
            putfield org.springframework.web.servlet.FrameworkServlet.threadContextInheritable:Z
         7: .line 207
            aload 0 /* this */
            iconst_0
            putfield org.springframework.web.servlet.FrameworkServlet.dispatchOptionsRequest:Z
         8: .line 210
            aload 0 /* this */
            iconst_0
            putfield org.springframework.web.servlet.FrameworkServlet.dispatchTraceRequest:Z
         9: .line 213
            aload 0 /* this */
            iconst_0
            putfield org.springframework.web.servlet.FrameworkServlet.enableLoggingRequestDetails:Z
        10: .line 220
            aload 0 /* this */
            iconst_0
            putfield org.springframework.web.servlet.FrameworkServlet.webApplicationContextInjected:Z
        11: .line 223
            aload 0 /* this */
            iconst_0
            putfield org.springframework.web.servlet.FrameworkServlet.refreshEventReceived:Z
        12: .line 226
            aload 0 /* this */
            new java.lang.Object
            dup
            invokespecial java.lang.Object.<init>:()V
            putfield org.springframework.web.servlet.FrameworkServlet.onRefreshMonitor:Ljava/lang/Object;
        13: .line 290
            aload 0 /* this */
            aload 1 /* webApplicationContext */
            putfield org.springframework.web.servlet.FrameworkServlet.webApplicationContext:Lorg/springframework/web/context/WebApplicationContext;
        14: .line 291
            return
        end local 1 // org.springframework.web.context.WebApplicationContext webApplicationContext
        end local 0 // org.springframework.web.servlet.FrameworkServlet this
      LocalVariableTable:
        Start  End  Slot                   Name  Signature
            0   15     0                   this  Lorg/springframework/web/servlet/FrameworkServlet;
            0   15     1  webApplicationContext  Lorg/springframework/web/context/WebApplicationContext;
    MethodParameters:
                       Name  Flags
      webApplicationContext  

  public void setContextAttribute(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.springframework.web.servlet.FrameworkServlet this
        start local 1 // java.lang.String contextAttribute
         0: .line 299
            aload 0 /* this */
            aload 1 /* contextAttribute */
            putfield org.springframework.web.servlet.FrameworkServlet.contextAttribute:Ljava/lang/String;
         1: .line 300
            return
        end local 1 // java.lang.String contextAttribute
        end local 0 // org.springframework.web.servlet.FrameworkServlet this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    2     0              this  Lorg/springframework/web/servlet/FrameworkServlet;
            0    2     1  contextAttribute  Ljava/lang/String;
    RuntimeVisibleParameterAnnotations: 
      0:
        org.springframework.lang.Nullable()
    MethodParameters:
                  Name  Flags
      contextAttribute  

  public java.lang.String getContextAttribute();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.springframework.web.servlet.FrameworkServlet this
         0: .line 308
            aload 0 /* this */
            getfield org.springframework.web.servlet.FrameworkServlet.contextAttribute:Ljava/lang/String;
            areturn
        end local 0 // org.springframework.web.servlet.FrameworkServlet this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/springframework/web/servlet/FrameworkServlet;
    RuntimeVisibleAnnotations: 
      org.springframework.lang.Nullable()

  public void setContextClass(java.lang.Class<?>);
    descriptor: (Ljava/lang/Class;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.springframework.web.servlet.FrameworkServlet this
        start local 1 // java.lang.Class contextClass
         0: .line 321
            aload 0 /* this */
            aload 1 /* contextClass */
            putfield org.springframework.web.servlet.FrameworkServlet.contextClass:Ljava/lang/Class;
         1: .line 322
            return
        end local 1 // java.lang.Class contextClass
        end local 0 // org.springframework.web.servlet.FrameworkServlet this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    2     0          this  Lorg/springframework/web/servlet/FrameworkServlet;
            0    2     1  contextClass  Ljava/lang/Class<*>;
    Signature: (Ljava/lang/Class<*>;)V
    MethodParameters:
              Name  Flags
      contextClass  

  public java.lang.Class<?> getContextClass();
    descriptor: ()Ljava/lang/Class;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.springframework.web.servlet.FrameworkServlet this
         0: .line 328
            aload 0 /* this */
            getfield org.springframework.web.servlet.FrameworkServlet.contextClass:Ljava/lang/Class;
            areturn
        end local 0 // org.springframework.web.servlet.FrameworkServlet this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/springframework/web/servlet/FrameworkServlet;
    Signature: ()Ljava/lang/Class<*>;

  public void setContextId(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.springframework.web.servlet.FrameworkServlet this
        start local 1 // java.lang.String contextId
         0: .line 336
            aload 0 /* this */
            aload 1 /* contextId */
            putfield org.springframework.web.servlet.FrameworkServlet.contextId:Ljava/lang/String;
         1: .line 337
            return
        end local 1 // java.lang.String contextId
        end local 0 // org.springframework.web.servlet.FrameworkServlet this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    2     0       this  Lorg/springframework/web/servlet/FrameworkServlet;
            0    2     1  contextId  Ljava/lang/String;
    RuntimeVisibleParameterAnnotations: 
      0:
        org.springframework.lang.Nullable()
    MethodParameters:
           Name  Flags
      contextId  

  public java.lang.String getContextId();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.springframework.web.servlet.FrameworkServlet this
         0: .line 344
            aload 0 /* this */
            getfield org.springframework.web.servlet.FrameworkServlet.contextId:Ljava/lang/String;
            areturn
        end local 0 // org.springframework.web.servlet.FrameworkServlet this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/springframework/web/servlet/FrameworkServlet;
    RuntimeVisibleAnnotations: 
      org.springframework.lang.Nullable()

  public void setNamespace(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.springframework.web.servlet.FrameworkServlet this
        start local 1 // java.lang.String namespace
         0: .line 352
            aload 0 /* this */
            aload 1 /* namespace */
            putfield org.springframework.web.servlet.FrameworkServlet.namespace:Ljava/lang/String;
         1: .line 353
            return
        end local 1 // java.lang.String namespace
        end local 0 // org.springframework.web.servlet.FrameworkServlet this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    2     0       this  Lorg/springframework/web/servlet/FrameworkServlet;
            0    2     1  namespace  Ljava/lang/String;
    MethodParameters:
           Name  Flags
      namespace  

  public java.lang.String getNamespace();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.springframework.web.servlet.FrameworkServlet this
         0: .line 360
            aload 0 /* this */
            getfield org.springframework.web.servlet.FrameworkServlet.namespace:Ljava/lang/String;
            ifnull 1
            aload 0 /* this */
            getfield org.springframework.web.servlet.FrameworkServlet.namespace:Ljava/lang/String;
            goto 2
      StackMap locals:
      StackMap stack:
         1: new java.lang.StringBuilder
            dup
            aload 0 /* this */
            invokevirtual org.springframework.web.servlet.FrameworkServlet.getServletName:()Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc "-servlet"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
      StackMap locals:
      StackMap stack: java.lang.String
         2: areturn
        end local 0 // org.springframework.web.servlet.FrameworkServlet this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/springframework/web/servlet/FrameworkServlet;

  public void setContextConfigLocation(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.springframework.web.servlet.FrameworkServlet this
        start local 1 // java.lang.String contextConfigLocation
         0: .line 369
            aload 0 /* this */
            aload 1 /* contextConfigLocation */
            putfield org.springframework.web.servlet.FrameworkServlet.contextConfigLocation:Ljava/lang/String;
         1: .line 370
            return
        end local 1 // java.lang.String contextConfigLocation
        end local 0 // org.springframework.web.servlet.FrameworkServlet this
      LocalVariableTable:
        Start  End  Slot                   Name  Signature
            0    2     0                   this  Lorg/springframework/web/servlet/FrameworkServlet;
            0    2     1  contextConfigLocation  Ljava/lang/String;
    RuntimeVisibleParameterAnnotations: 
      0:
        org.springframework.lang.Nullable()
    MethodParameters:
                       Name  Flags
      contextConfigLocation  

  public java.lang.String getContextConfigLocation();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.springframework.web.servlet.FrameworkServlet this
         0: .line 377
            aload 0 /* this */
            getfield org.springframework.web.servlet.FrameworkServlet.contextConfigLocation:Ljava/lang/String;
            areturn
        end local 0 // org.springframework.web.servlet.FrameworkServlet this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/springframework/web/servlet/FrameworkServlet;
    RuntimeVisibleAnnotations: 
      org.springframework.lang.Nullable()

  public void setContextInitializers(org.springframework.context.ApplicationContextInitializer<?>[]);
    descriptor: ([Lorg/springframework/context/ApplicationContextInitializer;)V
    flags: (0x0081) ACC_PUBLIC, ACC_VARARGS
    Code:
      stack=2, locals=6, args_size=2
        start local 0 // org.springframework.web.servlet.FrameworkServlet this
        start local 1 // org.springframework.context.ApplicationContextInitializer[] initializers
         0: .line 388
            aload 1 /* initializers */
            ifnull 6
         1: .line 389
            aload 1 /* initializers */
            dup
            astore 5
            arraylength
            istore 4
            iconst_0
            istore 3
            goto 5
      StackMap locals: org.springframework.web.servlet.FrameworkServlet org.springframework.context.ApplicationContextInitializer[] top int int org.springframework.context.ApplicationContextInitializer[]
      StackMap stack:
         2: aload 5
            iload 3
            aaload
            astore 2 /* initializer */
        start local 2 // org.springframework.context.ApplicationContextInitializer initializer
         3: .line 390
            aload 0 /* this */
            getfield org.springframework.web.servlet.FrameworkServlet.contextInitializers:Ljava/util/List;
            aload 2 /* initializer */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 2 // org.springframework.context.ApplicationContextInitializer initializer
         4: .line 389
            iinc 3 1
      StackMap locals:
      StackMap stack:
         5: iload 3
            iload 4
            if_icmplt 2
         6: .line 393
      StackMap locals: org.springframework.web.servlet.FrameworkServlet org.springframework.context.ApplicationContextInitializer[]
      StackMap stack:
            return
        end local 1 // org.springframework.context.ApplicationContextInitializer[] initializers
        end local 0 // org.springframework.web.servlet.FrameworkServlet this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    7     0          this  Lorg/springframework/web/servlet/FrameworkServlet;
            0    7     1  initializers  [Lorg/springframework/context/ApplicationContextInitializer;
            3    4     2   initializer  Lorg/springframework/context/ApplicationContextInitializer<*>;
    Signature: ([Lorg/springframework/context/ApplicationContextInitializer<*>;)V
    RuntimeVisibleParameterAnnotations: 
      0:
        org.springframework.lang.Nullable()
    MethodParameters:
              Name  Flags
      initializers  

  public void setContextInitializerClasses(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.springframework.web.servlet.FrameworkServlet this
        start local 1 // java.lang.String contextInitializerClasses
         0: .line 402
            aload 0 /* this */
            aload 1 /* contextInitializerClasses */
            putfield org.springframework.web.servlet.FrameworkServlet.contextInitializerClasses:Ljava/lang/String;
         1: .line 403
            return
        end local 1 // java.lang.String contextInitializerClasses
        end local 0 // org.springframework.web.servlet.FrameworkServlet this
      LocalVariableTable:
        Start  End  Slot                       Name  Signature
            0    2     0                       this  Lorg/springframework/web/servlet/FrameworkServlet;
            0    2     1  contextInitializerClasses  Ljava/lang/String;
    MethodParameters:
                           Name  Flags
      contextInitializerClasses  

  public void setPublishContext(boolean);
    descriptor: (Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.springframework.web.servlet.FrameworkServlet this
        start local 1 // boolean publishContext
         0: .line 412
            aload 0 /* this */
            iload 1 /* publishContext */
            putfield org.springframework.web.servlet.FrameworkServlet.publishContext:Z
         1: .line 413
            return
        end local 1 // boolean publishContext
        end local 0 // org.springframework.web.servlet.FrameworkServlet this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    2     0            this  Lorg/springframework/web/servlet/FrameworkServlet;
            0    2     1  publishContext  Z
    MethodParameters:
                Name  Flags
      publishContext  

  public void setPublishEvents(boolean);
    descriptor: (Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.springframework.web.servlet.FrameworkServlet this
        start local 1 // boolean publishEvents
         0: .line 422
            aload 0 /* this */
            iload 1 /* publishEvents */
            putfield org.springframework.web.servlet.FrameworkServlet.publishEvents:Z
         1: .line 423
            return
        end local 1 // boolean publishEvents
        end local 0 // org.springframework.web.servlet.FrameworkServlet this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    2     0           this  Lorg/springframework/web/servlet/FrameworkServlet;
            0    2     1  publishEvents  Z
    MethodParameters:
               Name  Flags
      publishEvents  

  public void setThreadContextInheritable(boolean);
    descriptor: (Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.springframework.web.servlet.FrameworkServlet this
        start local 1 // boolean threadContextInheritable
         0: .line 438
            aload 0 /* this */
            iload 1 /* threadContextInheritable */
            putfield org.springframework.web.servlet.FrameworkServlet.threadContextInheritable:Z
         1: .line 439
            return
        end local 1 // boolean threadContextInheritable
        end local 0 // org.springframework.web.servlet.FrameworkServlet this
      LocalVariableTable:
        Start  End  Slot                      Name  Signature
            0    2     0                      this  Lorg/springframework/web/servlet/FrameworkServlet;
            0    2     1  threadContextInheritable  Z
    MethodParameters:
                          Name  Flags
      threadContextInheritable  

  public void setDispatchOptionsRequest(boolean);
    descriptor: (Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.springframework.web.servlet.FrameworkServlet this
        start local 1 // boolean dispatchOptionsRequest
         0: .line 458
            aload 0 /* this */
            iload 1 /* dispatchOptionsRequest */
            putfield org.springframework.web.servlet.FrameworkServlet.dispatchOptionsRequest:Z
         1: .line 459
            return
        end local 1 // boolean dispatchOptionsRequest
        end local 0 // org.springframework.web.servlet.FrameworkServlet this
      LocalVariableTable:
        Start  End  Slot                    Name  Signature
            0    2     0                    this  Lorg/springframework/web/servlet/FrameworkServlet;
            0    2     1  dispatchOptionsRequest  Z
    MethodParameters:
                        Name  Flags
      dispatchOptionsRequest  

  public void setDispatchTraceRequest(boolean);
    descriptor: (Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.springframework.web.servlet.FrameworkServlet this
        start local 1 // boolean dispatchTraceRequest
         0: .line 475
            aload 0 /* this */
            iload 1 /* dispatchTraceRequest */
            putfield org.springframework.web.servlet.FrameworkServlet.dispatchTraceRequest:Z
         1: .line 476
            return
        end local 1 // boolean dispatchTraceRequest
        end local 0 // org.springframework.web.servlet.FrameworkServlet this
      LocalVariableTable:
        Start  End  Slot                  Name  Signature
            0    2     0                  this  Lorg/springframework/web/servlet/FrameworkServlet;
            0    2     1  dispatchTraceRequest  Z
    MethodParameters:
                      Name  Flags
      dispatchTraceRequest  

  public void setEnableLoggingRequestDetails(boolean);
    descriptor: (Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.springframework.web.servlet.FrameworkServlet this
        start local 1 // boolean enable
         0: .line 486
            aload 0 /* this */
            iload 1 /* enable */
            putfield org.springframework.web.servlet.FrameworkServlet.enableLoggingRequestDetails:Z
         1: .line 487
            return
        end local 1 // boolean enable
        end local 0 // org.springframework.web.servlet.FrameworkServlet this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    2     0    this  Lorg/springframework/web/servlet/FrameworkServlet;
            0    2     1  enable  Z
    MethodParameters:
        Name  Flags
      enable  

  public boolean isEnableLoggingRequestDetails();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.springframework.web.servlet.FrameworkServlet this
         0: .line 495
            aload 0 /* this */
            getfield org.springframework.web.servlet.FrameworkServlet.enableLoggingRequestDetails:Z
            ireturn
        end local 0 // org.springframework.web.servlet.FrameworkServlet this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/springframework/web/servlet/FrameworkServlet;

  public void setApplicationContext(org.springframework.context.ApplicationContext);
    descriptor: (Lorg/springframework/context/ApplicationContext;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.springframework.web.servlet.FrameworkServlet this
        start local 1 // org.springframework.context.ApplicationContext applicationContext
         0: .line 509
            aload 0 /* this */
            getfield org.springframework.web.servlet.FrameworkServlet.webApplicationContext:Lorg/springframework/web/context/WebApplicationContext;
            ifnonnull 3
            aload 1 /* applicationContext */
            instanceof org.springframework.web.context.WebApplicationContext
            ifeq 3
         1: .line 510
            aload 0 /* this */
            aload 1 /* applicationContext */
            checkcast org.springframework.web.context.WebApplicationContext
            putfield org.springframework.web.servlet.FrameworkServlet.webApplicationContext:Lorg/springframework/web/context/WebApplicationContext;
         2: .line 511
            aload 0 /* this */
            iconst_1
            putfield org.springframework.web.servlet.FrameworkServlet.webApplicationContextInjected:Z
         3: .line 513
      StackMap locals:
      StackMap stack:
            return
        end local 1 // org.springframework.context.ApplicationContext applicationContext
        end local 0 // org.springframework.web.servlet.FrameworkServlet this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0    4     0                this  Lorg/springframework/web/servlet/FrameworkServlet;
            0    4     1  applicationContext  Lorg/springframework/context/ApplicationContext;
    MethodParameters:
                    Name  Flags
      applicationContext  

  protected final void initServletBean();
    descriptor: ()V
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL
    Code:
      stack=6, locals=4, args_size=1
        start local 0 // org.springframework.web.servlet.FrameworkServlet this
         0: .line 522
            aload 0 /* this */
            invokevirtual org.springframework.web.servlet.FrameworkServlet.getServletContext:()Ljavax/servlet/ServletContext;
            new java.lang.StringBuilder
            dup
            ldc "Initializing Spring "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            invokevirtual java.lang.Class.getSimpleName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc " '"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            invokevirtual org.springframework.web.servlet.FrameworkServlet.getServletName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "'"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokeinterface javax.servlet.ServletContext.log:(Ljava/lang/String;)V
         1: .line 523
            aload 0 /* this */
            getfield org.springframework.web.servlet.FrameworkServlet.logger:Lorg/apache/commons/logging/Log;
            invokeinterface org.apache.commons.logging.Log.isInfoEnabled:()Z
            ifeq 3
         2: .line 524
            aload 0 /* this */
            getfield org.springframework.web.servlet.FrameworkServlet.logger:Lorg/apache/commons/logging/Log;
            new java.lang.StringBuilder
            dup
            ldc "Initializing Servlet '"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            invokevirtual org.springframework.web.servlet.FrameworkServlet.getServletName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "'"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokeinterface org.apache.commons.logging.Log.info:(Ljava/lang/Object;)V
         3: .line 526
      StackMap locals:
      StackMap stack:
            invokestatic java.lang.System.currentTimeMillis:()J
            lstore 1 /* startTime */
        start local 1 // long startTime
         4: .line 529
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual org.springframework.web.servlet.FrameworkServlet.initWebApplicationContext:()Lorg/springframework/web/context/WebApplicationContext;
            putfield org.springframework.web.servlet.FrameworkServlet.webApplicationContext:Lorg/springframework/web/context/WebApplicationContext;
         5: .line 530
            aload 0 /* this */
            invokevirtual org.springframework.web.servlet.FrameworkServlet.initFrameworkServlet:()V
         6: .line 531
            goto 10
         7: .line 532
      StackMap locals: org.springframework.web.servlet.FrameworkServlet long
      StackMap stack: java.lang.Exception
            astore 3 /* ex */
        start local 3 // java.lang.Exception ex
         8: .line 533
            aload 0 /* this */
            getfield org.springframework.web.servlet.FrameworkServlet.logger:Lorg/apache/commons/logging/Log;
            ldc "Context initialization failed"
            aload 3 /* ex */
            invokeinterface org.apache.commons.logging.Log.error:(Ljava/lang/Object;Ljava/lang/Throwable;)V
         9: .line 534
            aload 3 /* ex */
            athrow
        end local 3 // java.lang.Exception ex
        10: .line 537
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.springframework.web.servlet.FrameworkServlet.logger:Lorg/apache/commons/logging/Log;
            invokeinterface org.apache.commons.logging.Log.isDebugEnabled:()Z
            ifeq 18
        11: .line 538
            aload 0 /* this */
            getfield org.springframework.web.servlet.FrameworkServlet.enableLoggingRequestDetails:Z
            ifeq 13
        12: .line 539
            ldc "shown which may lead to unsafe logging of potentially sensitive data"
            goto 14
        13: .line 540
      StackMap locals:
      StackMap stack:
            ldc "masked to prevent unsafe logging of potentially sensitive data"
        14: .line 538
      StackMap locals:
      StackMap stack: java.lang.String
            astore 3 /* value */
        start local 3 // java.lang.String value
        15: .line 541
            aload 0 /* this */
            getfield org.springframework.web.servlet.FrameworkServlet.logger:Lorg/apache/commons/logging/Log;
            new java.lang.StringBuilder
            dup
            ldc "enableLoggingRequestDetails='"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield org.springframework.web.servlet.FrameworkServlet.enableLoggingRequestDetails:Z
            invokevirtual java.lang.StringBuilder.append:(Z)Ljava/lang/StringBuilder;
        16: .line 542
            ldc "': request parameters and headers will be "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 3 /* value */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        17: .line 541
            invokeinterface org.apache.commons.logging.Log.debug:(Ljava/lang/Object;)V
        end local 3 // java.lang.String value
        18: .line 545
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.springframework.web.servlet.FrameworkServlet.logger:Lorg/apache/commons/logging/Log;
            invokeinterface org.apache.commons.logging.Log.isInfoEnabled:()Z
            ifeq 20
        19: .line 546
            aload 0 /* this */
            getfield org.springframework.web.servlet.FrameworkServlet.logger:Lorg/apache/commons/logging/Log;
            new java.lang.StringBuilder
            dup
            ldc "Completed initialization in "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            invokestatic java.lang.System.currentTimeMillis:()J
            lload 1 /* startTime */
            lsub
            invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
            ldc " ms"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokeinterface org.apache.commons.logging.Log.info:(Ljava/lang/Object;)V
        20: .line 548
      StackMap locals:
      StackMap stack:
            return
        end local 1 // long startTime
        end local 0 // org.springframework.web.servlet.FrameworkServlet this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   21     0       this  Lorg/springframework/web/servlet/FrameworkServlet;
            4   21     1  startTime  J
            8   10     3         ex  Ljava/lang/Exception;
           15   18     3      value  Ljava/lang/String;
      Exception table:
        from    to  target  type
           4     6       7  Class javax.servlet.ServletException
           4     6       7  Class java.lang.RuntimeException
    Exceptions:
      throws javax.servlet.ServletException

  protected org.springframework.web.context.WebApplicationContext initWebApplicationContext();
    descriptor: ()Lorg/springframework/web/context/WebApplicationContext;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=4, args_size=1
        start local 0 // org.springframework.web.servlet.FrameworkServlet this
         0: .line 561
            aload 0 /* this */
            invokevirtual org.springframework.web.servlet.FrameworkServlet.getServletContext:()Ljavax/servlet/ServletContext;
            invokestatic org.springframework.web.context.support.WebApplicationContextUtils.getWebApplicationContext:(Ljavax/servlet/ServletContext;)Lorg/springframework/web/context/WebApplicationContext;
         1: .line 560
            astore 1 /* rootContext */
        start local 1 // org.springframework.web.context.WebApplicationContext rootContext
         2: .line 562
            aconst_null
            astore 2 /* wac */
        start local 2 // org.springframework.web.context.WebApplicationContext wac
         3: .line 564
            aload 0 /* this */
            getfield org.springframework.web.servlet.FrameworkServlet.webApplicationContext:Lorg/springframework/web/context/WebApplicationContext;
            ifnull 11
         4: .line 566
            aload 0 /* this */
            getfield org.springframework.web.servlet.FrameworkServlet.webApplicationContext:Lorg/springframework/web/context/WebApplicationContext;
            astore 2 /* wac */
         5: .line 567
            aload 2 /* wac */
            instanceof org.springframework.web.context.ConfigurableWebApplicationContext
            ifeq 11
         6: .line 568
            aload 2 /* wac */
            checkcast org.springframework.web.context.ConfigurableWebApplicationContext
            astore 3 /* cwac */
        start local 3 // org.springframework.web.context.ConfigurableWebApplicationContext cwac
         7: .line 569
            aload 3 /* cwac */
            invokeinterface org.springframework.web.context.ConfigurableWebApplicationContext.isActive:()Z
            ifne 11
         8: .line 572
            aload 3 /* cwac */
            invokeinterface org.springframework.web.context.ConfigurableWebApplicationContext.getParent:()Lorg/springframework/context/ApplicationContext;
            ifnonnull 10
         9: .line 575
            aload 3 /* cwac */
            aload 1 /* rootContext */
            invokeinterface org.springframework.web.context.ConfigurableWebApplicationContext.setParent:(Lorg/springframework/context/ApplicationContext;)V
        10: .line 577
      StackMap locals: org.springframework.web.context.WebApplicationContext org.springframework.web.context.WebApplicationContext org.springframework.web.context.ConfigurableWebApplicationContext
      StackMap stack:
            aload 0 /* this */
            aload 3 /* cwac */
            invokevirtual org.springframework.web.servlet.FrameworkServlet.configureAndRefreshWebApplicationContext:(Lorg/springframework/web/context/ConfigurableWebApplicationContext;)V
        end local 3 // org.springframework.web.context.ConfigurableWebApplicationContext cwac
        11: .line 581
      StackMap locals:
      StackMap stack:
            aload 2 /* wac */
            ifnonnull 13
        12: .line 586
            aload 0 /* this */
            invokevirtual org.springframework.web.servlet.FrameworkServlet.findWebApplicationContext:()Lorg/springframework/web/context/WebApplicationContext;
            astore 2 /* wac */
        13: .line 588
      StackMap locals:
      StackMap stack:
            aload 2 /* wac */
            ifnonnull 15
        14: .line 590
            aload 0 /* this */
            aload 1 /* rootContext */
            invokevirtual org.springframework.web.servlet.FrameworkServlet.createWebApplicationContext:(Lorg/springframework/web/context/WebApplicationContext;)Lorg/springframework/web/context/WebApplicationContext;
            astore 2 /* wac */
        15: .line 593
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.springframework.web.servlet.FrameworkServlet.refreshEventReceived:Z
            ifne 22
        16: .line 597
            aload 0 /* this */
            getfield org.springframework.web.servlet.FrameworkServlet.onRefreshMonitor:Ljava/lang/Object;
            dup
            astore 3
            monitorenter
        17: .line 598
            aload 0 /* this */
            aload 2 /* wac */
            invokevirtual org.springframework.web.servlet.FrameworkServlet.onRefresh:(Lorg/springframework/context/ApplicationContext;)V
        18: .line 597
            aload 3
            monitorexit
        19: goto 22
      StackMap locals: org.springframework.web.servlet.FrameworkServlet org.springframework.web.context.WebApplicationContext org.springframework.web.context.WebApplicationContext java.lang.Object
      StackMap stack: java.lang.Throwable
        20: aload 3
            monitorexit
        21: athrow
        22: .line 602
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.springframework.web.servlet.FrameworkServlet.publishContext:Z
            ifeq 25
        23: .line 604
            aload 0 /* this */
            invokevirtual org.springframework.web.servlet.FrameworkServlet.getServletContextAttributeName:()Ljava/lang/String;
            astore 3 /* attrName */
        start local 3 // java.lang.String attrName
        24: .line 605
            aload 0 /* this */
            invokevirtual org.springframework.web.servlet.FrameworkServlet.getServletContext:()Ljavax/servlet/ServletContext;
            aload 3 /* attrName */
            aload 2 /* wac */
            invokeinterface javax.servlet.ServletContext.setAttribute:(Ljava/lang/String;Ljava/lang/Object;)V
        end local 3 // java.lang.String attrName
        25: .line 608
      StackMap locals:
      StackMap stack:
            aload 2 /* wac */
            areturn
        end local 2 // org.springframework.web.context.WebApplicationContext wac
        end local 1 // org.springframework.web.context.WebApplicationContext rootContext
        end local 0 // org.springframework.web.servlet.FrameworkServlet this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   26     0         this  Lorg/springframework/web/servlet/FrameworkServlet;
            2   26     1  rootContext  Lorg/springframework/web/context/WebApplicationContext;
            3   26     2          wac  Lorg/springframework/web/context/WebApplicationContext;
            7   11     3         cwac  Lorg/springframework/web/context/ConfigurableWebApplicationContext;
           24   25     3     attrName  Ljava/lang/String;
      Exception table:
        from    to  target  type
          17    19      20  any
          20    21      20  any

  protected org.springframework.web.context.WebApplicationContext findWebApplicationContext();
    descriptor: ()Lorg/springframework/web/context/WebApplicationContext;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=3, args_size=1
        start local 0 // org.springframework.web.servlet.FrameworkServlet this
         0: .line 623
            aload 0 /* this */
            invokevirtual org.springframework.web.servlet.FrameworkServlet.getContextAttribute:()Ljava/lang/String;
            astore 1 /* attrName */
        start local 1 // java.lang.String attrName
         1: .line 624
            aload 1 /* attrName */
            ifnonnull 3
         2: .line 625
            aconst_null
            areturn
         3: .line 628
      StackMap locals: java.lang.String
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.springframework.web.servlet.FrameworkServlet.getServletContext:()Ljavax/servlet/ServletContext;
            aload 1 /* attrName */
            invokestatic org.springframework.web.context.support.WebApplicationContextUtils.getWebApplicationContext:(Ljavax/servlet/ServletContext;Ljava/lang/String;)Lorg/springframework/web/context/WebApplicationContext;
         4: .line 627
            astore 2 /* wac */
        start local 2 // org.springframework.web.context.WebApplicationContext wac
         5: .line 629
            aload 2 /* wac */
            ifnonnull 7
         6: .line 630
            new java.lang.IllegalStateException
            dup
            ldc "No WebApplicationContext found: initializer not registered?"
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
            athrow
         7: .line 632
      StackMap locals: org.springframework.web.context.WebApplicationContext
      StackMap stack:
            aload 2 /* wac */
            areturn
        end local 2 // org.springframework.web.context.WebApplicationContext wac
        end local 1 // java.lang.String attrName
        end local 0 // org.springframework.web.servlet.FrameworkServlet this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    8     0      this  Lorg/springframework/web/servlet/FrameworkServlet;
            1    8     1  attrName  Ljava/lang/String;
            5    8     2       wac  Lorg/springframework/web/context/WebApplicationContext;
    RuntimeVisibleAnnotations: 
      org.springframework.lang.Nullable()

  protected org.springframework.web.context.WebApplicationContext createWebApplicationContext(org.springframework.context.ApplicationContext);
    descriptor: (Lorg/springframework/context/ApplicationContext;)Lorg/springframework/web/context/WebApplicationContext;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=5, locals=5, args_size=2
        start local 0 // org.springframework.web.servlet.FrameworkServlet this
        start local 1 // org.springframework.context.ApplicationContext parent
         0: .line 651
            aload 0 /* this */
            invokevirtual org.springframework.web.servlet.FrameworkServlet.getContextClass:()Ljava/lang/Class;
            astore 2 /* contextClass */
        start local 2 // java.lang.Class contextClass
         1: .line 652
            ldc Lorg/springframework/web/context/ConfigurableWebApplicationContext;
            aload 2 /* contextClass */
            invokevirtual java.lang.Class.isAssignableFrom:(Ljava/lang/Class;)Z
            ifne 8
         2: .line 653
            new org.springframework.context.ApplicationContextException
            dup
         3: .line 654
            new java.lang.StringBuilder
            dup
            ldc "Fatal initialization error in servlet with name '"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            invokevirtual org.springframework.web.servlet.FrameworkServlet.getServletName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         4: .line 655
            ldc "': custom WebApplicationContext class ["
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 2 /* contextClass */
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         5: .line 656
            ldc "] is not of type ConfigurableWebApplicationContext"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         6: .line 654
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         7: .line 653
            invokespecial org.springframework.context.ApplicationContextException.<init>:(Ljava/lang/String;)V
            athrow
         8: .line 659
      StackMap locals: java.lang.Class
      StackMap stack:
            aload 2 /* contextClass */
            invokestatic org.springframework.beans.BeanUtils.instantiateClass:(Ljava/lang/Class;)Ljava/lang/Object;
            checkcast org.springframework.web.context.ConfigurableWebApplicationContext
         9: .line 658
            astore 3 /* wac */
        start local 3 // org.springframework.web.context.ConfigurableWebApplicationContext wac
        10: .line 661
            aload 3 /* wac */
            aload 0 /* this */
            invokevirtual org.springframework.web.servlet.FrameworkServlet.getEnvironment:()Lorg/springframework/core/env/ConfigurableEnvironment;
            invokeinterface org.springframework.web.context.ConfigurableWebApplicationContext.setEnvironment:(Lorg/springframework/core/env/ConfigurableEnvironment;)V
        11: .line 662
            aload 3 /* wac */
            aload 1 /* parent */
            invokeinterface org.springframework.web.context.ConfigurableWebApplicationContext.setParent:(Lorg/springframework/context/ApplicationContext;)V
        12: .line 663
            aload 0 /* this */
            invokevirtual org.springframework.web.servlet.FrameworkServlet.getContextConfigLocation:()Ljava/lang/String;
            astore 4 /* configLocation */
        start local 4 // java.lang.String configLocation
        13: .line 664
            aload 4 /* configLocation */
            ifnull 15
        14: .line 665
            aload 3 /* wac */
            aload 4 /* configLocation */
            invokeinterface org.springframework.web.context.ConfigurableWebApplicationContext.setConfigLocation:(Ljava/lang/String;)V
        15: .line 667
      StackMap locals: org.springframework.web.context.ConfigurableWebApplicationContext java.lang.String
      StackMap stack:
            aload 0 /* this */
            aload 3 /* wac */
            invokevirtual org.springframework.web.servlet.FrameworkServlet.configureAndRefreshWebApplicationContext:(Lorg/springframework/web/context/ConfigurableWebApplicationContext;)V
        16: .line 669
            aload 3 /* wac */
            areturn
        end local 4 // java.lang.String configLocation
        end local 3 // org.springframework.web.context.ConfigurableWebApplicationContext wac
        end local 2 // java.lang.Class contextClass
        end local 1 // org.springframework.context.ApplicationContext parent
        end local 0 // org.springframework.web.servlet.FrameworkServlet this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   17     0            this  Lorg/springframework/web/servlet/FrameworkServlet;
            0   17     1          parent  Lorg/springframework/context/ApplicationContext;
            1   17     2    contextClass  Ljava/lang/Class<*>;
           10   17     3             wac  Lorg/springframework/web/context/ConfigurableWebApplicationContext;
           13   17     4  configLocation  Ljava/lang/String;
    RuntimeVisibleParameterAnnotations: 
      0:
        org.springframework.lang.Nullable()
    MethodParameters:
        Name  Flags
      parent  

  protected void configureAndRefreshWebApplicationContext(org.springframework.web.context.ConfigurableWebApplicationContext);
    descriptor: (Lorg/springframework/web/context/ConfigurableWebApplicationContext;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.springframework.web.servlet.FrameworkServlet this
         0: .line 682
            new java.lang.Error
            dup
            ldc "Unresolved compilation problem: \n\tThe method getContextPath() is undefined for the type ServletContext\n"
            invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
            athrow
        end local 0 // org.springframework.web.servlet.FrameworkServlet this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/springframework/web/servlet/FrameworkServlet;
    MethodParameters:
      Name  Flags
      wac   

  protected org.springframework.web.context.WebApplicationContext createWebApplicationContext(org.springframework.web.context.WebApplicationContext);
    descriptor: (Lorg/springframework/web/context/WebApplicationContext;)Lorg/springframework/web/context/WebApplicationContext;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.springframework.web.servlet.FrameworkServlet this
        start local 1 // org.springframework.web.context.WebApplicationContext parent
         0: .line 715
            aload 0 /* this */
            aload 1 /* parent */
            invokevirtual org.springframework.web.servlet.FrameworkServlet.createWebApplicationContext:(Lorg/springframework/context/ApplicationContext;)Lorg/springframework/web/context/WebApplicationContext;
            areturn
        end local 1 // org.springframework.web.context.WebApplicationContext parent
        end local 0 // org.springframework.web.servlet.FrameworkServlet this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0    this  Lorg/springframework/web/servlet/FrameworkServlet;
            0    1     1  parent  Lorg/springframework/web/context/WebApplicationContext;
    RuntimeVisibleParameterAnnotations: 
      0:
        org.springframework.lang.Nullable()
    MethodParameters:
        Name  Flags
      parent  

  protected void postProcessWebApplicationContext(org.springframework.web.context.ConfigurableWebApplicationContext);
    descriptor: (Lorg/springframework/web/context/ConfigurableWebApplicationContext;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=0, locals=2, args_size=2
        start local 0 // org.springframework.web.servlet.FrameworkServlet this
        start local 1 // org.springframework.web.context.ConfigurableWebApplicationContext wac
         0: .line 733
            return
        end local 1 // org.springframework.web.context.ConfigurableWebApplicationContext wac
        end local 0 // org.springframework.web.servlet.FrameworkServlet this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/springframework/web/servlet/FrameworkServlet;
            0    1     1   wac  Lorg/springframework/web/context/ConfigurableWebApplicationContext;
    MethodParameters:
      Name  Flags
      wac   

  protected void applyInitializers(org.springframework.context.ConfigurableApplicationContext);
    descriptor: (Lorg/springframework/context/ConfigurableApplicationContext;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=4, locals=7, args_size=2
        start local 0 // org.springframework.web.servlet.FrameworkServlet this
        start local 1 // org.springframework.context.ConfigurableApplicationContext wac
         0: .line 748
            aload 0 /* this */
            invokevirtual org.springframework.web.servlet.FrameworkServlet.getServletContext:()Ljavax/servlet/ServletContext;
            ldc "globalInitializerClasses"
            invokeinterface javax.servlet.ServletContext.getInitParameter:(Ljava/lang/String;)Ljava/lang/String;
            astore 2 /* globalClassNames */
        start local 2 // java.lang.String globalClassNames
         1: .line 749
            aload 2 /* globalClassNames */
            ifnull 7
         2: .line 750
            aload 2 /* globalClassNames */
            ldc ",; \t\n"
            invokestatic org.springframework.util.StringUtils.tokenizeToStringArray:(Ljava/lang/String;Ljava/lang/String;)[Ljava/lang/String;
            dup
            astore 6
            arraylength
            istore 5
            iconst_0
            istore 4
            goto 6
      StackMap locals: org.springframework.web.servlet.FrameworkServlet org.springframework.context.ConfigurableApplicationContext java.lang.String top int int java.lang.String[]
      StackMap stack:
         3: aload 6
            iload 4
            aaload
            astore 3 /* className */
        start local 3 // java.lang.String className
         4: .line 751
            aload 0 /* this */
            getfield org.springframework.web.servlet.FrameworkServlet.contextInitializers:Ljava/util/List;
            aload 0 /* this */
            aload 3 /* className */
            aload 1 /* wac */
            invokevirtual org.springframework.web.servlet.FrameworkServlet.loadInitializer:(Ljava/lang/String;Lorg/springframework/context/ConfigurableApplicationContext;)Lorg/springframework/context/ApplicationContextInitializer;
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 3 // java.lang.String className
         5: .line 750
            iinc 4 1
      StackMap locals:
      StackMap stack:
         6: iload 4
            iload 5
            if_icmplt 3
         7: .line 755
      StackMap locals: org.springframework.web.servlet.FrameworkServlet org.springframework.context.ConfigurableApplicationContext java.lang.String
      StackMap stack:
            aload 0 /* this */
            getfield org.springframework.web.servlet.FrameworkServlet.contextInitializerClasses:Ljava/lang/String;
            ifnull 13
         8: .line 756
            aload 0 /* this */
            getfield org.springframework.web.servlet.FrameworkServlet.contextInitializerClasses:Ljava/lang/String;
            ldc ",; \t\n"
            invokestatic org.springframework.util.StringUtils.tokenizeToStringArray:(Ljava/lang/String;Ljava/lang/String;)[Ljava/lang/String;
            dup
            astore 6
            arraylength
            istore 5
            iconst_0
            istore 4
            goto 12
      StackMap locals: org.springframework.web.servlet.FrameworkServlet org.springframework.context.ConfigurableApplicationContext java.lang.String top int int java.lang.String[]
      StackMap stack:
         9: aload 6
            iload 4
            aaload
            astore 3 /* className */
        start local 3 // java.lang.String className
        10: .line 757
            aload 0 /* this */
            getfield org.springframework.web.servlet.FrameworkServlet.contextInitializers:Ljava/util/List;
            aload 0 /* this */
            aload 3 /* className */
            aload 1 /* wac */
            invokevirtual org.springframework.web.servlet.FrameworkServlet.loadInitializer:(Ljava/lang/String;Lorg/springframework/context/ConfigurableApplicationContext;)Lorg/springframework/context/ApplicationContextInitializer;
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 3 // java.lang.String className
        11: .line 756
            iinc 4 1
      StackMap locals:
      StackMap stack:
        12: iload 4
            iload 5
            if_icmplt 9
        13: .line 761
      StackMap locals: org.springframework.web.servlet.FrameworkServlet org.springframework.context.ConfigurableApplicationContext java.lang.String
      StackMap stack:
            aload 0 /* this */
            getfield org.springframework.web.servlet.FrameworkServlet.contextInitializers:Ljava/util/List;
            invokestatic org.springframework.core.annotation.AnnotationAwareOrderComparator.sort:(Ljava/util/List;)V
        14: .line 762
            aload 0 /* this */
            getfield org.springframework.web.servlet.FrameworkServlet.contextInitializers:Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 4
            goto 17
      StackMap locals: org.springframework.web.servlet.FrameworkServlet org.springframework.context.ConfigurableApplicationContext java.lang.String top java.util.Iterator
      StackMap stack:
        15: aload 4
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.springframework.context.ApplicationContextInitializer
            astore 3 /* initializer */
        start local 3 // org.springframework.context.ApplicationContextInitializer initializer
        16: .line 763
            aload 3 /* initializer */
            aload 1 /* wac */
            invokeinterface org.springframework.context.ApplicationContextInitializer.initialize:(Lorg/springframework/context/ConfigurableApplicationContext;)V
        end local 3 // org.springframework.context.ApplicationContextInitializer initializer
        17: .line 762
      StackMap locals:
      StackMap stack:
            aload 4
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 15
        18: .line 765
            return
        end local 2 // java.lang.String globalClassNames
        end local 1 // org.springframework.context.ConfigurableApplicationContext wac
        end local 0 // org.springframework.web.servlet.FrameworkServlet this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   19     0              this  Lorg/springframework/web/servlet/FrameworkServlet;
            0   19     1               wac  Lorg/springframework/context/ConfigurableApplicationContext;
            1   19     2  globalClassNames  Ljava/lang/String;
            4    5     3         className  Ljava/lang/String;
           10   11     3         className  Ljava/lang/String;
           16   17     3       initializer  Lorg/springframework/context/ApplicationContextInitializer<Lorg/springframework/context/ConfigurableApplicationContext;>;
    MethodParameters:
      Name  Flags
      wac   

  private org.springframework.context.ApplicationContextInitializer<org.springframework.context.ConfigurableApplicationContext> loadInitializer(java.lang.String, org.springframework.context.ConfigurableApplicationContext);
    descriptor: (Ljava/lang/String;Lorg/springframework/context/ConfigurableApplicationContext;)Lorg/springframework/context/ApplicationContextInitializer;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=7, locals=5, args_size=3
        start local 0 // org.springframework.web.servlet.FrameworkServlet this
        start local 1 // java.lang.String className
        start local 2 // org.springframework.context.ConfigurableApplicationContext wac
         0: .line 771
            aload 1 /* className */
            aload 2 /* wac */
            invokeinterface org.springframework.context.ConfigurableApplicationContext.getClassLoader:()Ljava/lang/ClassLoader;
            invokestatic org.springframework.util.ClassUtils.forName:(Ljava/lang/String;Ljava/lang/ClassLoader;)Ljava/lang/Class;
            astore 3 /* initializerClass */
        start local 3 // java.lang.Class initializerClass
         1: .line 773
            aload 3 /* initializerClass */
            ldc Lorg/springframework/context/ApplicationContextInitializer;
            invokestatic org.springframework.core.GenericTypeResolver.resolveTypeArgument:(Ljava/lang/Class;Ljava/lang/Class;)Ljava/lang/Class;
         2: .line 772
            astore 4 /* initializerContextClass */
        start local 4 // java.lang.Class initializerContextClass
         3: .line 774
            aload 4 /* initializerContextClass */
            ifnull 9
            aload 4 /* initializerContextClass */
            aload 2 /* wac */
            invokevirtual java.lang.Class.isInstance:(Ljava/lang/Object;)Z
            ifne 9
         4: .line 775
            new org.springframework.context.ApplicationContextException
            dup
         5: .line 776
            ldc "Could not apply context initializer [%s] since its generic parameter [%s] is not assignable from the type of application context used by this framework servlet: [%s]"
            iconst_3
            anewarray java.lang.Object
            dup
            iconst_0
         6: .line 778
            aload 3 /* initializerClass */
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            aastore
            dup
            iconst_1
            aload 4 /* initializerContextClass */
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            aastore
            dup
            iconst_2
         7: .line 779
            aload 2 /* wac */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            aastore
         8: .line 775
            invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokespecial org.springframework.context.ApplicationContextException.<init>:(Ljava/lang/String;)V
            athrow
         9: .line 781
      StackMap locals: java.lang.Class java.lang.Class
      StackMap stack:
            aload 3 /* initializerClass */
            ldc Lorg/springframework/context/ApplicationContextInitializer;
            invokestatic org.springframework.beans.BeanUtils.instantiateClass:(Ljava/lang/Class;Ljava/lang/Class;)Ljava/lang/Object;
            checkcast org.springframework.context.ApplicationContextInitializer
        10: areturn
        end local 4 // java.lang.Class initializerContextClass
        end local 3 // java.lang.Class initializerClass
        11: .line 783
      StackMap locals: org.springframework.web.servlet.FrameworkServlet java.lang.String org.springframework.context.ConfigurableApplicationContext
      StackMap stack: java.lang.ClassNotFoundException
            astore 3 /* ex */
        start local 3 // java.lang.ClassNotFoundException ex
        12: .line 784
            new org.springframework.context.ApplicationContextException
            dup
            ldc "Could not load class [%s] specified via 'contextInitializerClasses' init-param"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
        13: .line 785
            aload 1 /* className */
            aastore
        14: .line 784
            invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
        15: .line 785
            aload 3 /* ex */
        16: .line 784
            invokespecial org.springframework.context.ApplicationContextException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
            athrow
        end local 3 // java.lang.ClassNotFoundException ex
        end local 2 // org.springframework.context.ConfigurableApplicationContext wac
        end local 1 // java.lang.String className
        end local 0 // org.springframework.web.servlet.FrameworkServlet this
      LocalVariableTable:
        Start  End  Slot                     Name  Signature
            0   17     0                     this  Lorg/springframework/web/servlet/FrameworkServlet;
            0   17     1                className  Ljava/lang/String;
            0   17     2                      wac  Lorg/springframework/context/ConfigurableApplicationContext;
            1   11     3         initializerClass  Ljava/lang/Class<*>;
            3   11     4  initializerContextClass  Ljava/lang/Class<*>;
           12   17     3                       ex  Ljava/lang/ClassNotFoundException;
      Exception table:
        from    to  target  type
           0    10      11  Class java.lang.ClassNotFoundException
    Signature: (Ljava/lang/String;Lorg/springframework/context/ConfigurableApplicationContext;)Lorg/springframework/context/ApplicationContextInitializer<Lorg/springframework/context/ConfigurableApplicationContext;>;
    MethodParameters:
           Name  Flags
      className  
      wac        

  public java.lang.String getServletContextAttributeName();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.springframework.web.servlet.FrameworkServlet this
         0: .line 797
            new java.lang.StringBuilder
            dup
            getstatic org.springframework.web.servlet.FrameworkServlet.SERVLET_CONTEXT_PREFIX:Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            invokevirtual org.springframework.web.servlet.FrameworkServlet.getServletName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 0 // org.springframework.web.servlet.FrameworkServlet this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/springframework/web/servlet/FrameworkServlet;

  public final org.springframework.web.context.WebApplicationContext getWebApplicationContext();
    descriptor: ()Lorg/springframework/web/context/WebApplicationContext;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.springframework.web.servlet.FrameworkServlet this
         0: .line 805
            aload 0 /* this */
            getfield org.springframework.web.servlet.FrameworkServlet.webApplicationContext:Lorg/springframework/web/context/WebApplicationContext;
            areturn
        end local 0 // org.springframework.web.servlet.FrameworkServlet this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/springframework/web/servlet/FrameworkServlet;
    RuntimeVisibleAnnotations: 
      org.springframework.lang.Nullable()

  protected void initFrameworkServlet();
    descriptor: ()V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=0, locals=1, args_size=1
        start local 0 // org.springframework.web.servlet.FrameworkServlet this
         0: .line 816
            return
        end local 0 // org.springframework.web.servlet.FrameworkServlet this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/springframework/web/servlet/FrameworkServlet;
    Exceptions:
      throws javax.servlet.ServletException

  public void refresh();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=2, args_size=1
        start local 0 // org.springframework.web.servlet.FrameworkServlet this
         0: .line 825
            aload 0 /* this */
            invokevirtual org.springframework.web.servlet.FrameworkServlet.getWebApplicationContext:()Lorg/springframework/web/context/WebApplicationContext;
            astore 1 /* wac */
        start local 1 // org.springframework.web.context.WebApplicationContext wac
         1: .line 826
            aload 1 /* wac */
            instanceof org.springframework.context.ConfigurableApplicationContext
            ifne 3
         2: .line 827
            new java.lang.IllegalStateException
            dup
            new java.lang.StringBuilder
            dup
            ldc "WebApplicationContext does not support refresh: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* wac */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
            athrow
         3: .line 829
      StackMap locals: org.springframework.web.context.WebApplicationContext
      StackMap stack:
            aload 1 /* wac */
            checkcast org.springframework.context.ConfigurableApplicationContext
            invokeinterface org.springframework.context.ConfigurableApplicationContext.refresh:()V
         4: .line 830
            return
        end local 1 // org.springframework.web.context.WebApplicationContext wac
        end local 0 // org.springframework.web.servlet.FrameworkServlet this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lorg/springframework/web/servlet/FrameworkServlet;
            1    5     1   wac  Lorg/springframework/web/context/WebApplicationContext;

  public void onApplicationEvent(org.springframework.context.event.ContextRefreshedEvent);
    descriptor: (Lorg/springframework/context/event/ContextRefreshedEvent;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // org.springframework.web.servlet.FrameworkServlet this
        start local 1 // org.springframework.context.event.ContextRefreshedEvent event
         0: .line 839
            aload 0 /* this */
            iconst_1
            putfield org.springframework.web.servlet.FrameworkServlet.refreshEventReceived:Z
         1: .line 840
            aload 0 /* this */
            getfield org.springframework.web.servlet.FrameworkServlet.onRefreshMonitor:Ljava/lang/Object;
            dup
            astore 2
            monitorenter
         2: .line 841
            aload 0 /* this */
            aload 1 /* event */
            invokevirtual org.springframework.context.event.ContextRefreshedEvent.getApplicationContext:()Lorg/springframework/context/ApplicationContext;
            invokevirtual org.springframework.web.servlet.FrameworkServlet.onRefresh:(Lorg/springframework/context/ApplicationContext;)V
         3: .line 840
            aload 2
            monitorexit
         4: goto 7
      StackMap locals: org.springframework.web.servlet.FrameworkServlet org.springframework.context.event.ContextRefreshedEvent java.lang.Object
      StackMap stack: java.lang.Throwable
         5: aload 2
            monitorexit
         6: athrow
         7: .line 843
      StackMap locals:
      StackMap stack:
            return
        end local 1 // org.springframework.context.event.ContextRefreshedEvent event
        end local 0 // org.springframework.web.servlet.FrameworkServlet this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    8     0   this  Lorg/springframework/web/servlet/FrameworkServlet;
            0    8     1  event  Lorg/springframework/context/event/ContextRefreshedEvent;
      Exception table:
        from    to  target  type
           2     4       5  any
           5     6       5  any
    MethodParameters:
       Name  Flags
      event  

  protected void onRefresh(org.springframework.context.ApplicationContext);
    descriptor: (Lorg/springframework/context/ApplicationContext;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=0, locals=2, args_size=2
        start local 0 // org.springframework.web.servlet.FrameworkServlet this
        start local 1 // org.springframework.context.ApplicationContext context
         0: .line 854
            return
        end local 1 // org.springframework.context.ApplicationContext context
        end local 0 // org.springframework.web.servlet.FrameworkServlet this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/springframework/web/servlet/FrameworkServlet;
            0    1     1  context  Lorg/springframework/context/ApplicationContext;
    MethodParameters:
         Name  Flags
      context  

  public void destroy();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // org.springframework.web.servlet.FrameworkServlet this
         0: .line 862
            aload 0 /* this */
            invokevirtual org.springframework.web.servlet.FrameworkServlet.getServletContext:()Ljavax/servlet/ServletContext;
            new java.lang.StringBuilder
            dup
            ldc "Destroying Spring FrameworkServlet '"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            invokevirtual org.springframework.web.servlet.FrameworkServlet.getServletName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "'"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokeinterface javax.servlet.ServletContext.log:(Ljava/lang/String;)V
         1: .line 864
            aload 0 /* this */
            getfield org.springframework.web.servlet.FrameworkServlet.webApplicationContext:Lorg/springframework/web/context/WebApplicationContext;
            instanceof org.springframework.context.ConfigurableApplicationContext
            ifeq 3
            aload 0 /* this */
            getfield org.springframework.web.servlet.FrameworkServlet.webApplicationContextInjected:Z
            ifne 3
         2: .line 865
            aload 0 /* this */
            getfield org.springframework.web.servlet.FrameworkServlet.webApplicationContext:Lorg/springframework/web/context/WebApplicationContext;
            checkcast org.springframework.context.ConfigurableApplicationContext
            invokeinterface org.springframework.context.ConfigurableApplicationContext.close:()V
         3: .line 867
      StackMap locals:
      StackMap stack:
            return
        end local 0 // org.springframework.web.servlet.FrameworkServlet this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lorg/springframework/web/servlet/FrameworkServlet;

  protected void service(javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse);
    descriptor: (Ljavax/servlet/http/HttpServletRequest;Ljavax/servlet/http/HttpServletResponse;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // org.springframework.web.servlet.FrameworkServlet this
        start local 1 // javax.servlet.http.HttpServletRequest request
        start local 2 // javax.servlet.http.HttpServletResponse response
         0: .line 877
            aload 1 /* request */
            invokeinterface javax.servlet.http.HttpServletRequest.getMethod:()Ljava/lang/String;
            invokestatic org.springframework.http.HttpMethod.resolve:(Ljava/lang/String;)Lorg/springframework/http/HttpMethod;
            astore 3 /* httpMethod */
        start local 3 // org.springframework.http.HttpMethod httpMethod
         1: .line 878
            aload 3 /* httpMethod */
            getstatic org.springframework.http.HttpMethod.PATCH:Lorg/springframework/http/HttpMethod;
            if_acmpeq 2
            aload 3 /* httpMethod */
            ifnonnull 4
         2: .line 879
      StackMap locals: org.springframework.http.HttpMethod
      StackMap stack:
            aload 0 /* this */
            aload 1 /* request */
            aload 2 /* response */
            invokevirtual org.springframework.web.servlet.FrameworkServlet.processRequest:(Ljavax/servlet/http/HttpServletRequest;Ljavax/servlet/http/HttpServletResponse;)V
         3: .line 880
            goto 5
         4: .line 882
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* request */
            aload 2 /* response */
            invokespecial org.springframework.web.servlet.HttpServletBean.service:(Ljavax/servlet/http/HttpServletRequest;Ljavax/servlet/http/HttpServletResponse;)V
         5: .line 884
      StackMap locals:
      StackMap stack:
            return
        end local 3 // org.springframework.http.HttpMethod httpMethod
        end local 2 // javax.servlet.http.HttpServletResponse response
        end local 1 // javax.servlet.http.HttpServletRequest request
        end local 0 // org.springframework.web.servlet.FrameworkServlet this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    6     0        this  Lorg/springframework/web/servlet/FrameworkServlet;
            0    6     1     request  Ljavax/servlet/http/HttpServletRequest;
            0    6     2    response  Ljavax/servlet/http/HttpServletResponse;
            1    6     3  httpMethod  Lorg/springframework/http/HttpMethod;
    Exceptions:
      throws javax.servlet.ServletException, java.io.IOException
    MethodParameters:
          Name  Flags
      request   
      response  

  protected final void doGet(javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse);
    descriptor: (Ljavax/servlet/http/HttpServletRequest;Ljavax/servlet/http/HttpServletResponse;)V
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.springframework.web.servlet.FrameworkServlet this
        start local 1 // javax.servlet.http.HttpServletRequest request
        start local 2 // javax.servlet.http.HttpServletResponse response
         0: .line 897
            aload 0 /* this */
            aload 1 /* request */
            aload 2 /* response */
            invokevirtual org.springframework.web.servlet.FrameworkServlet.processRequest:(Ljavax/servlet/http/HttpServletRequest;Ljavax/servlet/http/HttpServletResponse;)V
         1: .line 898
            return
        end local 2 // javax.servlet.http.HttpServletResponse response
        end local 1 // javax.servlet.http.HttpServletRequest request
        end local 0 // org.springframework.web.servlet.FrameworkServlet this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Lorg/springframework/web/servlet/FrameworkServlet;
            0    2     1   request  Ljavax/servlet/http/HttpServletRequest;
            0    2     2  response  Ljavax/servlet/http/HttpServletResponse;
    Exceptions:
      throws javax.servlet.ServletException, java.io.IOException
    MethodParameters:
          Name  Flags
      request   
      response  

  protected final void doPost(javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse);
    descriptor: (Ljavax/servlet/http/HttpServletRequest;Ljavax/servlet/http/HttpServletResponse;)V
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.springframework.web.servlet.FrameworkServlet this
        start local 1 // javax.servlet.http.HttpServletRequest request
        start local 2 // javax.servlet.http.HttpServletResponse response
         0: .line 908
            aload 0 /* this */
            aload 1 /* request */
            aload 2 /* response */
            invokevirtual org.springframework.web.servlet.FrameworkServlet.processRequest:(Ljavax/servlet/http/HttpServletRequest;Ljavax/servlet/http/HttpServletResponse;)V
         1: .line 909
            return
        end local 2 // javax.servlet.http.HttpServletResponse response
        end local 1 // javax.servlet.http.HttpServletRequest request
        end local 0 // org.springframework.web.servlet.FrameworkServlet this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Lorg/springframework/web/servlet/FrameworkServlet;
            0    2     1   request  Ljavax/servlet/http/HttpServletRequest;
            0    2     2  response  Ljavax/servlet/http/HttpServletResponse;
    Exceptions:
      throws javax.servlet.ServletException, java.io.IOException
    MethodParameters:
          Name  Flags
      request   
      response  

  protected final void doPut(javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse);
    descriptor: (Ljavax/servlet/http/HttpServletRequest;Ljavax/servlet/http/HttpServletResponse;)V
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.springframework.web.servlet.FrameworkServlet this
        start local 1 // javax.servlet.http.HttpServletRequest request
        start local 2 // javax.servlet.http.HttpServletResponse response
         0: .line 919
            aload 0 /* this */
            aload 1 /* request */
            aload 2 /* response */
            invokevirtual org.springframework.web.servlet.FrameworkServlet.processRequest:(Ljavax/servlet/http/HttpServletRequest;Ljavax/servlet/http/HttpServletResponse;)V
         1: .line 920
            return
        end local 2 // javax.servlet.http.HttpServletResponse response
        end local 1 // javax.servlet.http.HttpServletRequest request
        end local 0 // org.springframework.web.servlet.FrameworkServlet this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Lorg/springframework/web/servlet/FrameworkServlet;
            0    2     1   request  Ljavax/servlet/http/HttpServletRequest;
            0    2     2  response  Ljavax/servlet/http/HttpServletResponse;
    Exceptions:
      throws javax.servlet.ServletException, java.io.IOException
    MethodParameters:
          Name  Flags
      request   
      response  

  protected final void doDelete(javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse);
    descriptor: (Ljavax/servlet/http/HttpServletRequest;Ljavax/servlet/http/HttpServletResponse;)V
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.springframework.web.servlet.FrameworkServlet this
        start local 1 // javax.servlet.http.HttpServletRequest request
        start local 2 // javax.servlet.http.HttpServletResponse response
         0: .line 930
            aload 0 /* this */
            aload 1 /* request */
            aload 2 /* response */
            invokevirtual org.springframework.web.servlet.FrameworkServlet.processRequest:(Ljavax/servlet/http/HttpServletRequest;Ljavax/servlet/http/HttpServletResponse;)V
         1: .line 931
            return
        end local 2 // javax.servlet.http.HttpServletResponse response
        end local 1 // javax.servlet.http.HttpServletRequest request
        end local 0 // org.springframework.web.servlet.FrameworkServlet this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Lorg/springframework/web/servlet/FrameworkServlet;
            0    2     1   request  Ljavax/servlet/http/HttpServletRequest;
            0    2     2  response  Ljavax/servlet/http/HttpServletResponse;
    Exceptions:
      throws javax.servlet.ServletException, java.io.IOException
    MethodParameters:
          Name  Flags
      request   
      response  

  protected void doOptions(javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse);
    descriptor: (Ljavax/servlet/http/HttpServletRequest;Ljavax/servlet/http/HttpServletResponse;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=6, locals=3, args_size=3
        start local 0 // org.springframework.web.servlet.FrameworkServlet this
        start local 1 // javax.servlet.http.HttpServletRequest request
        start local 2 // javax.servlet.http.HttpServletResponse response
         0: .line 943
            aload 0 /* this */
            getfield org.springframework.web.servlet.FrameworkServlet.dispatchOptionsRequest:Z
            ifne 1
            aload 1 /* request */
            invokestatic org.springframework.web.cors.CorsUtils.isPreFlightRequest:(Ljavax/servlet/http/HttpServletRequest;)Z
            ifeq 4
         1: .line 944
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* request */
            aload 2 /* response */
            invokevirtual org.springframework.web.servlet.FrameworkServlet.processRequest:(Ljavax/servlet/http/HttpServletRequest;Ljavax/servlet/http/HttpServletResponse;)V
         2: .line 945
            aload 2 /* response */
            ldc "Allow"
            invokeinterface javax.servlet.http.HttpServletResponse.containsHeader:(Ljava/lang/String;)Z
            ifeq 4
         3: .line 947
            return
         4: .line 952
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* request */
            new org.springframework.web.servlet.FrameworkServlet$1
            dup
            aload 0 /* this */
            aload 2 /* response */
            invokespecial org.springframework.web.servlet.FrameworkServlet$1.<init>:(Lorg/springframework/web/servlet/FrameworkServlet;Ljavax/servlet/http/HttpServletResponse;)V
            invokespecial org.springframework.web.servlet.HttpServletBean.doOptions:(Ljavax/servlet/http/HttpServletRequest;Ljavax/servlet/http/HttpServletResponse;)V
         5: .line 961
            return
        end local 2 // javax.servlet.http.HttpServletResponse response
        end local 1 // javax.servlet.http.HttpServletRequest request
        end local 0 // org.springframework.web.servlet.FrameworkServlet this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    6     0      this  Lorg/springframework/web/servlet/FrameworkServlet;
            0    6     1   request  Ljavax/servlet/http/HttpServletRequest;
            0    6     2  response  Ljavax/servlet/http/HttpServletResponse;
    Exceptions:
      throws javax.servlet.ServletException, java.io.IOException
    MethodParameters:
          Name  Flags
      request   
      response  

  protected void doTrace(javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse);
    descriptor: (Ljavax/servlet/http/HttpServletRequest;Ljavax/servlet/http/HttpServletResponse;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.springframework.web.servlet.FrameworkServlet this
         0: .line 974
            new java.lang.Error
            dup
            ldc "Unresolved compilation problem: \n\tThe method getContentType() is undefined for the type HttpServletResponse\n"
            invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
            athrow
        end local 0 // org.springframework.web.servlet.FrameworkServlet this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/springframework/web/servlet/FrameworkServlet;
    Exceptions:
      throws javax.servlet.ServletException, java.io.IOException
    MethodParameters:
          Name  Flags
      request   
      response  

  protected final void processRequest(javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse);
    descriptor: (Ljavax/servlet/http/HttpServletRequest;Ljavax/servlet/http/HttpServletResponse;)V
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL
    Code:
      stack=6, locals=13, args_size=3
        start local 0 // org.springframework.web.servlet.FrameworkServlet this
        start local 1 // javax.servlet.http.HttpServletRequest request
        start local 2 // javax.servlet.http.HttpServletResponse response
         0: .line 990
            invokestatic java.lang.System.currentTimeMillis:()J
            lstore 3 /* startTime */
        start local 3 // long startTime
         1: .line 991
            aconst_null
            astore 5 /* failureCause */
        start local 5 // java.lang.Throwable failureCause
         2: .line 993
            invokestatic org.springframework.context.i18n.LocaleContextHolder.getLocaleContext:()Lorg/springframework/context/i18n/LocaleContext;
            astore 6 /* previousLocaleContext */
        start local 6 // org.springframework.context.i18n.LocaleContext previousLocaleContext
         3: .line 994
            aload 0 /* this */
            aload 1 /* request */
            invokevirtual org.springframework.web.servlet.FrameworkServlet.buildLocaleContext:(Ljavax/servlet/http/HttpServletRequest;)Lorg/springframework/context/i18n/LocaleContext;
            astore 7 /* localeContext */
        start local 7 // org.springframework.context.i18n.LocaleContext localeContext
         4: .line 996
            invokestatic org.springframework.web.context.request.RequestContextHolder.getRequestAttributes:()Lorg/springframework/web/context/request/RequestAttributes;
            astore 8 /* previousAttributes */
        start local 8 // org.springframework.web.context.request.RequestAttributes previousAttributes
         5: .line 997
            aload 0 /* this */
            aload 1 /* request */
            aload 2 /* response */
            aload 8 /* previousAttributes */
            invokevirtual org.springframework.web.servlet.FrameworkServlet.buildRequestAttributes:(Ljavax/servlet/http/HttpServletRequest;Ljavax/servlet/http/HttpServletResponse;Lorg/springframework/web/context/request/RequestAttributes;)Lorg/springframework/web/context/request/ServletRequestAttributes;
            astore 9 /* requestAttributes */
        start local 9 // org.springframework.web.context.request.ServletRequestAttributes requestAttributes
         6: .line 999
            aload 1 /* request */
            invokestatic org.springframework.web.context.request.async.WebAsyncUtils.getAsyncManager:(Ljavax/servlet/ServletRequest;)Lorg/springframework/web/context/request/async/WebAsyncManager;
            astore 10 /* asyncManager */
        start local 10 // org.springframework.web.context.request.async.WebAsyncManager asyncManager
         7: .line 1000
            aload 10 /* asyncManager */
            ldc Lorg/springframework/web/servlet/FrameworkServlet;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            new org.springframework.web.servlet.FrameworkServlet$RequestBindingInterceptor
            dup
            aload 0 /* this */
            invokespecial org.springframework.web.servlet.FrameworkServlet$RequestBindingInterceptor.<init>:(Lorg/springframework/web/servlet/FrameworkServlet;)V
            invokevirtual org.springframework.web.context.request.async.WebAsyncManager.registerCallableInterceptor:(Ljava/lang/Object;Lorg/springframework/web/context/request/async/CallableProcessingInterceptor;)V
         8: .line 1002
            aload 0 /* this */
            aload 1 /* request */
            aload 7 /* localeContext */
            aload 9 /* requestAttributes */
            invokevirtual org.springframework.web.servlet.FrameworkServlet.initContextHolders:(Ljavax/servlet/http/HttpServletRequest;Lorg/springframework/context/i18n/LocaleContext;Lorg/springframework/web/context/request/RequestAttributes;)V
         9: .line 1005
            aload 0 /* this */
            aload 1 /* request */
            aload 2 /* response */
            invokevirtual org.springframework.web.servlet.FrameworkServlet.doService:(Ljavax/servlet/http/HttpServletRequest;Ljavax/servlet/http/HttpServletResponse;)V
        10: .line 1006
            goto 24
        11: .line 1007
      StackMap locals: org.springframework.web.servlet.FrameworkServlet javax.servlet.http.HttpServletRequest javax.servlet.http.HttpServletResponse long java.lang.Throwable org.springframework.context.i18n.LocaleContext org.springframework.context.i18n.LocaleContext org.springframework.web.context.request.RequestAttributes org.springframework.web.context.request.ServletRequestAttributes org.springframework.web.context.request.async.WebAsyncManager
      StackMap stack: java.lang.Exception
            astore 11 /* ex */
        start local 11 // java.lang.Exception ex
        12: .line 1008
            aload 11 /* ex */
            astore 5 /* failureCause */
        13: .line 1009
            aload 11 /* ex */
            athrow
        end local 11 // java.lang.Exception ex
        14: .line 1011
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 11 /* ex */
        start local 11 // java.lang.Throwable ex
        15: .line 1012
            aload 11 /* ex */
            astore 5 /* failureCause */
        16: .line 1013
            new org.springframework.web.util.NestedServletException
            dup
            ldc "Request processing failed"
            aload 11 /* ex */
            invokespecial org.springframework.web.util.NestedServletException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
            athrow
        end local 11 // java.lang.Throwable ex
        17: .line 1016
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 12
        18: .line 1017
            aload 0 /* this */
            aload 1 /* request */
            aload 6 /* previousLocaleContext */
            aload 8 /* previousAttributes */
            invokevirtual org.springframework.web.servlet.FrameworkServlet.resetContextHolders:(Ljavax/servlet/http/HttpServletRequest;Lorg/springframework/context/i18n/LocaleContext;Lorg/springframework/web/context/request/RequestAttributes;)V
        19: .line 1018
            aload 9 /* requestAttributes */
            ifnull 21
        20: .line 1019
            aload 9 /* requestAttributes */
            invokevirtual org.springframework.web.context.request.ServletRequestAttributes.requestCompleted:()V
        21: .line 1021
      StackMap locals: org.springframework.web.servlet.FrameworkServlet javax.servlet.http.HttpServletRequest javax.servlet.http.HttpServletResponse long java.lang.Throwable org.springframework.context.i18n.LocaleContext org.springframework.context.i18n.LocaleContext org.springframework.web.context.request.RequestAttributes org.springframework.web.context.request.ServletRequestAttributes org.springframework.web.context.request.async.WebAsyncManager top java.lang.Throwable
      StackMap stack:
            aload 0 /* this */
            aload 1 /* request */
            aload 2 /* response */
            aload 5 /* failureCause */
            aload 10 /* asyncManager */
            invokevirtual org.springframework.web.servlet.FrameworkServlet.logResult:(Ljavax/servlet/http/HttpServletRequest;Ljavax/servlet/http/HttpServletResponse;Ljava/lang/Throwable;Lorg/springframework/web/context/request/async/WebAsyncManager;)V
        22: .line 1022
            aload 0 /* this */
            aload 1 /* request */
            aload 2 /* response */
            lload 3 /* startTime */
            aload 5 /* failureCause */
            invokevirtual org.springframework.web.servlet.FrameworkServlet.publishRequestHandledEvent:(Ljavax/servlet/http/HttpServletRequest;Ljavax/servlet/http/HttpServletResponse;JLjava/lang/Throwable;)V
        23: .line 1023
            aload 12
            athrow
        24: .line 1017
      StackMap locals: org.springframework.web.servlet.FrameworkServlet javax.servlet.http.HttpServletRequest javax.servlet.http.HttpServletResponse long java.lang.Throwable org.springframework.context.i18n.LocaleContext org.springframework.context.i18n.LocaleContext org.springframework.web.context.request.RequestAttributes org.springframework.web.context.request.ServletRequestAttributes org.springframework.web.context.request.async.WebAsyncManager
      StackMap stack:
            aload 0 /* this */
            aload 1 /* request */
            aload 6 /* previousLocaleContext */
            aload 8 /* previousAttributes */
            invokevirtual org.springframework.web.servlet.FrameworkServlet.resetContextHolders:(Ljavax/servlet/http/HttpServletRequest;Lorg/springframework/context/i18n/LocaleContext;Lorg/springframework/web/context/request/RequestAttributes;)V
        25: .line 1018
            aload 9 /* requestAttributes */
            ifnull 27
        26: .line 1019
            aload 9 /* requestAttributes */
            invokevirtual org.springframework.web.context.request.ServletRequestAttributes.requestCompleted:()V
        27: .line 1021
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* request */
            aload 2 /* response */
            aload 5 /* failureCause */
            aload 10 /* asyncManager */
            invokevirtual org.springframework.web.servlet.FrameworkServlet.logResult:(Ljavax/servlet/http/HttpServletRequest;Ljavax/servlet/http/HttpServletResponse;Ljava/lang/Throwable;Lorg/springframework/web/context/request/async/WebAsyncManager;)V
        28: .line 1022
            aload 0 /* this */
            aload 1 /* request */
            aload 2 /* response */
            lload 3 /* startTime */
            aload 5 /* failureCause */
            invokevirtual org.springframework.web.servlet.FrameworkServlet.publishRequestHandledEvent:(Ljavax/servlet/http/HttpServletRequest;Ljavax/servlet/http/HttpServletResponse;JLjava/lang/Throwable;)V
        29: .line 1024
            return
        end local 10 // org.springframework.web.context.request.async.WebAsyncManager asyncManager
        end local 9 // org.springframework.web.context.request.ServletRequestAttributes requestAttributes
        end local 8 // org.springframework.web.context.request.RequestAttributes previousAttributes
        end local 7 // org.springframework.context.i18n.LocaleContext localeContext
        end local 6 // org.springframework.context.i18n.LocaleContext previousLocaleContext
        end local 5 // java.lang.Throwable failureCause
        end local 3 // long startTime
        end local 2 // javax.servlet.http.HttpServletResponse response
        end local 1 // javax.servlet.http.HttpServletRequest request
        end local 0 // org.springframework.web.servlet.FrameworkServlet this
      LocalVariableTable:
        Start  End  Slot                   Name  Signature
            0   30     0                   this  Lorg/springframework/web/servlet/FrameworkServlet;
            0   30     1                request  Ljavax/servlet/http/HttpServletRequest;
            0   30     2               response  Ljavax/servlet/http/HttpServletResponse;
            1   30     3              startTime  J
            2   30     5           failureCause  Ljava/lang/Throwable;
            3   30     6  previousLocaleContext  Lorg/springframework/context/i18n/LocaleContext;
            4   30     7          localeContext  Lorg/springframework/context/i18n/LocaleContext;
            5   30     8     previousAttributes  Lorg/springframework/web/context/request/RequestAttributes;
            6   30     9      requestAttributes  Lorg/springframework/web/context/request/ServletRequestAttributes;
            7   30    10           asyncManager  Lorg/springframework/web/context/request/async/WebAsyncManager;
           12   14    11                     ex  Ljava/lang/Exception;
           15   17    11                     ex  Ljava/lang/Throwable;
      Exception table:
        from    to  target  type
           9    10      11  Class javax.servlet.ServletException
           9    10      11  Class java.io.IOException
           9    10      14  Class java.lang.Throwable
           9    17      17  any
    Exceptions:
      throws javax.servlet.ServletException, java.io.IOException
    MethodParameters:
          Name  Flags
      request   
      response  

  protected org.springframework.context.i18n.LocaleContext buildLocaleContext(javax.servlet.http.HttpServletRequest);
    descriptor: (Ljavax/servlet/http/HttpServletRequest;)Lorg/springframework/context/i18n/LocaleContext;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.springframework.web.servlet.FrameworkServlet this
        start local 1 // javax.servlet.http.HttpServletRequest request
         0: .line 1035
            new org.springframework.context.i18n.SimpleLocaleContext
            dup
            aload 1 /* request */
            invokeinterface javax.servlet.http.HttpServletRequest.getLocale:()Ljava/util/Locale;
            invokespecial org.springframework.context.i18n.SimpleLocaleContext.<init>:(Ljava/util/Locale;)V
            areturn
        end local 1 // javax.servlet.http.HttpServletRequest request
        end local 0 // org.springframework.web.servlet.FrameworkServlet this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/springframework/web/servlet/FrameworkServlet;
            0    1     1  request  Ljavax/servlet/http/HttpServletRequest;
    RuntimeVisibleAnnotations: 
      org.springframework.lang.Nullable()
    MethodParameters:
         Name  Flags
      request  

  protected org.springframework.web.context.request.ServletRequestAttributes buildRequestAttributes(javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse, org.springframework.web.context.request.RequestAttributes);
    descriptor: (Ljavax/servlet/http/HttpServletRequest;Ljavax/servlet/http/HttpServletResponse;Lorg/springframework/web/context/request/RequestAttributes;)Lorg/springframework/web/context/request/ServletRequestAttributes;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // org.springframework.web.servlet.FrameworkServlet this
        start local 1 // javax.servlet.http.HttpServletRequest request
        start local 2 // javax.servlet.http.HttpServletResponse response
        start local 3 // org.springframework.web.context.request.RequestAttributes previousAttributes
         0: .line 1053
            aload 3 /* previousAttributes */
            ifnull 1
            aload 3 /* previousAttributes */
            instanceof org.springframework.web.context.request.ServletRequestAttributes
            ifeq 2
         1: .line 1054
      StackMap locals:
      StackMap stack:
            new org.springframework.web.context.request.ServletRequestAttributes
            dup
            aload 1 /* request */
            aload 2 /* response */
            invokespecial org.springframework.web.context.request.ServletRequestAttributes.<init>:(Ljavax/servlet/http/HttpServletRequest;Ljavax/servlet/http/HttpServletResponse;)V
            areturn
         2: .line 1057
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        end local 3 // org.springframework.web.context.request.RequestAttributes previousAttributes
        end local 2 // javax.servlet.http.HttpServletResponse response
        end local 1 // javax.servlet.http.HttpServletRequest request
        end local 0 // org.springframework.web.servlet.FrameworkServlet this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0    3     0                this  Lorg/springframework/web/servlet/FrameworkServlet;
            0    3     1             request  Ljavax/servlet/http/HttpServletRequest;
            0    3     2            response  Ljavax/servlet/http/HttpServletResponse;
            0    3     3  previousAttributes  Lorg/springframework/web/context/request/RequestAttributes;
    RuntimeVisibleAnnotations: 
      org.springframework.lang.Nullable()
    RuntimeVisibleParameterAnnotations: 
      0:
      1:
        org.springframework.lang.Nullable()
      2:
        org.springframework.lang.Nullable()
    MethodParameters:
                    Name  Flags
      request             
      response            
      previousAttributes  

  private void initContextHolders(javax.servlet.http.HttpServletRequest, org.springframework.context.i18n.LocaleContext, org.springframework.web.context.request.RequestAttributes);
    descriptor: (Ljavax/servlet/http/HttpServletRequest;Lorg/springframework/context/i18n/LocaleContext;Lorg/springframework/web/context/request/RequestAttributes;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=4, args_size=4
        start local 0 // org.springframework.web.servlet.FrameworkServlet this
        start local 1 // javax.servlet.http.HttpServletRequest request
        start local 2 // org.springframework.context.i18n.LocaleContext localeContext
        start local 3 // org.springframework.web.context.request.RequestAttributes requestAttributes
         0: .line 1064
            aload 2 /* localeContext */
            ifnull 2
         1: .line 1065
            aload 2 /* localeContext */
            aload 0 /* this */
            getfield org.springframework.web.servlet.FrameworkServlet.threadContextInheritable:Z
            invokestatic org.springframework.context.i18n.LocaleContextHolder.setLocaleContext:(Lorg/springframework/context/i18n/LocaleContext;Z)V
         2: .line 1067
      StackMap locals:
      StackMap stack:
            aload 3 /* requestAttributes */
            ifnull 4
         3: .line 1068
            aload 3 /* requestAttributes */
            aload 0 /* this */
            getfield org.springframework.web.servlet.FrameworkServlet.threadContextInheritable:Z
            invokestatic org.springframework.web.context.request.RequestContextHolder.setRequestAttributes:(Lorg/springframework/web/context/request/RequestAttributes;Z)V
         4: .line 1070
      StackMap locals:
      StackMap stack:
            return
        end local 3 // org.springframework.web.context.request.RequestAttributes requestAttributes
        end local 2 // org.springframework.context.i18n.LocaleContext localeContext
        end local 1 // javax.servlet.http.HttpServletRequest request
        end local 0 // org.springframework.web.servlet.FrameworkServlet this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    5     0               this  Lorg/springframework/web/servlet/FrameworkServlet;
            0    5     1            request  Ljavax/servlet/http/HttpServletRequest;
            0    5     2      localeContext  Lorg/springframework/context/i18n/LocaleContext;
            0    5     3  requestAttributes  Lorg/springframework/web/context/request/RequestAttributes;
    RuntimeVisibleParameterAnnotations: 
      0:
      1:
        org.springframework.lang.Nullable()
      2:
        org.springframework.lang.Nullable()
    MethodParameters:
                   Name  Flags
      request            
      localeContext      
      requestAttributes  

  private void resetContextHolders(javax.servlet.http.HttpServletRequest, org.springframework.context.i18n.LocaleContext, org.springframework.web.context.request.RequestAttributes);
    descriptor: (Ljavax/servlet/http/HttpServletRequest;Lorg/springframework/context/i18n/LocaleContext;Lorg/springframework/web/context/request/RequestAttributes;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=4, args_size=4
        start local 0 // org.springframework.web.servlet.FrameworkServlet this
        start local 1 // javax.servlet.http.HttpServletRequest request
        start local 2 // org.springframework.context.i18n.LocaleContext prevLocaleContext
        start local 3 // org.springframework.web.context.request.RequestAttributes previousAttributes
         0: .line 1075
            aload 2 /* prevLocaleContext */
            aload 0 /* this */
            getfield org.springframework.web.servlet.FrameworkServlet.threadContextInheritable:Z
            invokestatic org.springframework.context.i18n.LocaleContextHolder.setLocaleContext:(Lorg/springframework/context/i18n/LocaleContext;Z)V
         1: .line 1076
            aload 3 /* previousAttributes */
            aload 0 /* this */
            getfield org.springframework.web.servlet.FrameworkServlet.threadContextInheritable:Z
            invokestatic org.springframework.web.context.request.RequestContextHolder.setRequestAttributes:(Lorg/springframework/web/context/request/RequestAttributes;Z)V
         2: .line 1077
            return
        end local 3 // org.springframework.web.context.request.RequestAttributes previousAttributes
        end local 2 // org.springframework.context.i18n.LocaleContext prevLocaleContext
        end local 1 // javax.servlet.http.HttpServletRequest request
        end local 0 // org.springframework.web.servlet.FrameworkServlet this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0    3     0                this  Lorg/springframework/web/servlet/FrameworkServlet;
            0    3     1             request  Ljavax/servlet/http/HttpServletRequest;
            0    3     2   prevLocaleContext  Lorg/springframework/context/i18n/LocaleContext;
            0    3     3  previousAttributes  Lorg/springframework/web/context/request/RequestAttributes;
    RuntimeVisibleParameterAnnotations: 
      0:
      1:
        org.springframework.lang.Nullable()
      2:
        org.springframework.lang.Nullable()
    MethodParameters:
                    Name  Flags
      request             
      prevLocaleContext   
      previousAttributes  

  private void logResult(javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse, java.lang.Throwable, org.springframework.web.context.request.async.WebAsyncManager);
    descriptor: (Ljavax/servlet/http/HttpServletRequest;Ljavax/servlet/http/HttpServletResponse;Ljava/lang/Throwable;Lorg/springframework/web/context/request/async/WebAsyncManager;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=5, args_size=5
        start local 0 // org.springframework.web.servlet.FrameworkServlet this
         0: .line 1086
            new java.lang.Error
            dup
            ldc "Unresolved compilation problems: \n\tThe method getDispatcherType() is undefined for the type HttpServletRequest\n\tThe method getDispatcherType() is undefined for the type HttpServletRequest\n\tThe method getStatus() is undefined for the type HttpServletResponse\n\tThe method getHeaderNames() is undefined for the type HttpServletResponse\n\tCannot infer type argument(s) for <R> map(Function<? super T,? extends R>)\n\tThe method getHeaders(String) is undefined for the type HttpServletResponse\n"
            invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
            athrow
        end local 0 // org.springframework.web.servlet.FrameworkServlet this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/springframework/web/servlet/FrameworkServlet;
    RuntimeVisibleParameterAnnotations: 
      0:
      1:
      2:
        org.springframework.lang.Nullable()
      3:
    MethodParameters:
              Name  Flags
      request       
      response      
      failureCause  
      asyncManager  

  private void publishRequestHandledEvent(javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse, long, java.lang.Throwable);
    descriptor: (Ljavax/servlet/http/HttpServletRequest;Ljavax/servlet/http/HttpServletResponse;JLjava/lang/Throwable;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=6, args_size=5
        start local 0 // org.springframework.web.servlet.FrameworkServlet this
         0: .line 1145
            new java.lang.Error
            dup
            ldc "Unresolved compilation problem: \n\tThe method getStatus() is undefined for the type HttpServletResponse\n"
            invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
            athrow
        end local 0 // org.springframework.web.servlet.FrameworkServlet this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/springframework/web/servlet/FrameworkServlet;
    RuntimeVisibleParameterAnnotations: 
      0:
      1:
      2:
      3:
        org.springframework.lang.Nullable()
    MethodParameters:
              Name  Flags
      request       
      response      
      startTime     
      failureCause  

  protected java.lang.String getUsernameForRequest(javax.servlet.http.HttpServletRequest);
    descriptor: (Ljavax/servlet/http/HttpServletRequest;)Ljava/lang/String;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=1, locals=3, args_size=2
        start local 0 // org.springframework.web.servlet.FrameworkServlet this
        start local 1 // javax.servlet.http.HttpServletRequest request
         0: .line 1159
            aload 1 /* request */
            invokeinterface javax.servlet.http.HttpServletRequest.getUserPrincipal:()Ljava/security/Principal;
            astore 2 /* userPrincipal */
        start local 2 // java.security.Principal userPrincipal
         1: .line 1160
            aload 2 /* userPrincipal */
            ifnull 2
            aload 2 /* userPrincipal */
            invokeinterface java.security.Principal.getName:()Ljava/lang/String;
            goto 3
      StackMap locals: java.security.Principal
      StackMap stack:
         2: aconst_null
      StackMap locals:
      StackMap stack: java.lang.String
         3: areturn
        end local 2 // java.security.Principal userPrincipal
        end local 1 // javax.servlet.http.HttpServletRequest request
        end local 0 // org.springframework.web.servlet.FrameworkServlet this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    4     0           this  Lorg/springframework/web/servlet/FrameworkServlet;
            0    4     1        request  Ljavax/servlet/http/HttpServletRequest;
            1    4     2  userPrincipal  Ljava/security/Principal;
    RuntimeVisibleAnnotations: 
      org.springframework.lang.Nullable()
    MethodParameters:
         Name  Flags
      request  

  protected abstract void doService(javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse);
    descriptor: (Ljavax/servlet/http/HttpServletRequest;Ljavax/servlet/http/HttpServletResponse;)V
    flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT
    Exceptions:
      throws java.lang.Exception
    MethodParameters:
          Name  Flags
      request   
      response  
}
SourceFile: "FrameworkServlet.java"
NestMembers:
  org.springframework.web.servlet.FrameworkServlet$1  org.springframework.web.servlet.FrameworkServlet$ContextRefreshListener  org.springframework.web.servlet.FrameworkServlet$RequestBindingInterceptor
InnerClasses:
  org.springframework.web.servlet.FrameworkServlet$1
  private ContextRefreshListener = org.springframework.web.servlet.FrameworkServlet$ContextRefreshListener of org.springframework.web.servlet.FrameworkServlet
  private RequestBindingInterceptor = org.springframework.web.servlet.FrameworkServlet$RequestBindingInterceptor of org.springframework.web.servlet.FrameworkServlet