public class org.apache.catalina.connector.CoyoteAdapter implements org.apache.coyote.Adapter
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.apache.catalina.connector.CoyoteAdapter
super_class: java.lang.Object
{
private static final org.apache.juli.logging.Log log;
descriptor: Lorg/apache/juli/logging/Log;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final java.lang.String POWERED_BY;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final java.util.EnumSet<jakarta.servlet.SessionTrackingMode> SSL_ONLY;
descriptor: Ljava/util/EnumSet;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
Signature: Ljava/util/EnumSet<Ljakarta/servlet/SessionTrackingMode;>;
public static final int ADAPTER_NOTES;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 1
private static final java.lang.ThreadLocal<java.lang.String> THREAD_NAME;
descriptor: Ljava/lang/ThreadLocal;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
Signature: Ljava/lang/ThreadLocal<Ljava/lang/String;>;
private final org.apache.catalina.connector.Connector connector;
descriptor: Lorg/apache/catalina/connector/Connector;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
protected static final org.apache.tomcat.util.res.StringManager sm;
descriptor: Lorg/apache/tomcat/util/res/StringManager;
flags: (0x001c) ACC_PROTECTED, ACC_STATIC, ACC_FINAL
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=3, locals=0, args_size=0
0: ldc Lorg/apache/catalina/connector/CoyoteAdapter;
invokestatic org.apache.juli.logging.LogFactory.getLog:(Ljava/lang/Class;)Lorg/apache/juli/logging/Log;
putstatic org.apache.catalina.connector.CoyoteAdapter.log:Lorg/apache/juli/logging/Log;
1: new java.lang.StringBuilder
dup
ldc "Servlet/5.0 JSP/3.0 ("
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
2: invokestatic org.apache.catalina.util.ServerInfo.getServerInfo:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc " Java/"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
3: ldc "java.vm.vendor"
invokestatic java.lang.System.getProperty:(Ljava/lang/String;)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;
4: ldc "java.runtime.version"
invokestatic java.lang.System.getProperty:(Ljava/lang/String;)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;
5: invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
putstatic org.apache.catalina.connector.CoyoteAdapter.POWERED_BY:Ljava/lang/String;
6: getstatic jakarta.servlet.SessionTrackingMode.SSL:Ljakarta/servlet/SessionTrackingMode;
invokestatic java.util.EnumSet.of:(Ljava/lang/Enum;)Ljava/util/EnumSet;
7: putstatic org.apache.catalina.connector.CoyoteAdapter.SSL_ONLY:Ljava/util/EnumSet;
8: invokedynamic get()Ljava/util/function/Supplier;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
()Ljava/lang/Object;
org/apache/catalina/connector/CoyoteAdapter.lambda$0()Ljava/lang/String; (6)
()Ljava/lang/String;
invokestatic java.lang.ThreadLocal.withInitial:(Ljava/util/function/Supplier;)Ljava/lang/ThreadLocal;
9: putstatic org.apache.catalina.connector.CoyoteAdapter.THREAD_NAME:Ljava/lang/ThreadLocal;
10: ldc Lorg/apache/catalina/connector/CoyoteAdapter;
invokestatic org.apache.tomcat.util.res.StringManager.getManager:(Ljava/lang/Class;)Lorg/apache/tomcat/util/res/StringManager;
putstatic org.apache.catalina.connector.CoyoteAdapter.sm:Lorg/apache/tomcat/util/res/StringManager;
return
LocalVariableTable:
Start End Slot Name Signature
public void <init>(org.apache.catalina.connector.Connector);
descriptor: (Lorg/apache/catalina/connector/Connector;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
aload 1
putfield org.apache.catalina.connector.CoyoteAdapter.connector:Lorg/apache/catalina/connector/Connector;
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/apache/catalina/connector/CoyoteAdapter;
0 3 1 connector Lorg/apache/catalina/connector/Connector;
MethodParameters:
Name Flags
connector
public boolean asyncDispatch(org.apache.coyote.Request, org.apache.coyote.Response, org.apache.tomcat.util.net.SocketEvent);
descriptor: (Lorg/apache/coyote/Request;Lorg/apache/coyote/Response;Lorg/apache/tomcat/util/net/SocketEvent;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=17, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 1
iconst_1
invokevirtual org.apache.coyote.Request.getNote:(I)Ljava/lang/Object;
checkcast org.apache.catalina.connector.Request
astore 4
start local 4 1: aload 2
iconst_1
invokevirtual org.apache.coyote.Response.getNote:(I)Ljava/lang/Object;
checkcast org.apache.catalina.connector.Response
astore 5
start local 5 2: aload 4
ifnonnull 4
3: new java.lang.IllegalStateException
dup
getstatic org.apache.catalina.connector.CoyoteAdapter.sm:Lorg/apache/tomcat/util/res/StringManager;
ldc "coyoteAdapter.nullRequest"
invokevirtual org.apache.tomcat.util.res.StringManager.getString:(Ljava/lang/String;)Ljava/lang/String;
invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
athrow
4: StackMap locals: org.apache.catalina.connector.Request org.apache.catalina.connector.Response
StackMap stack:
iconst_1
istore 6
start local 6 5: aload 4
invokevirtual org.apache.catalina.connector.Request.getAsyncContextInternal:()Lorg/apache/catalina/core/AsyncContextImpl;
astore 7
start local 7 6: aload 1
invokevirtual org.apache.coyote.Request.getRequestProcessor:()Lorg/apache/coyote/RequestInfo;
getstatic org.apache.catalina.connector.CoyoteAdapter.THREAD_NAME:Ljava/lang/ThreadLocal;
invokevirtual java.lang.ThreadLocal.get:()Ljava/lang/Object;
checkcast java.lang.String
invokevirtual org.apache.coyote.RequestInfo.setWorkerThreadName:(Ljava/lang/String;)V
7: aload 4
invokevirtual org.apache.catalina.connector.Request.isAsync:()Z
ifne 9
8: aload 5
iconst_0
invokevirtual org.apache.catalina.connector.Response.setSuspended:(Z)V
9: StackMap locals: int org.apache.catalina.core.AsyncContextImpl
StackMap stack:
aload 3
getstatic org.apache.tomcat.util.net.SocketEvent.TIMEOUT:Lorg/apache/tomcat/util/net/SocketEvent;
if_acmpne 13
10: aload 7
invokevirtual org.apache.catalina.core.AsyncContextImpl.timeout:()Z
ifne 30
11: aload 7
aconst_null
iconst_0
invokevirtual org.apache.catalina.core.AsyncContextImpl.setErrorState:(Ljava/lang/Throwable;Z)V
12: goto 30
StackMap locals:
StackMap stack:
13: aload 3
getstatic org.apache.tomcat.util.net.SocketEvent.ERROR:Lorg/apache/tomcat/util/net/SocketEvent;
if_acmpne 30
14: iconst_0
istore 6
15: aload 1
ldc "jakarta.servlet.error.exception"
invokevirtual org.apache.coyote.Request.getAttribute:(Ljava/lang/String;)Ljava/lang/Object;
checkcast java.lang.Throwable
astore 8
start local 8 16: aload 1
invokevirtual org.apache.coyote.Request.getAttributes:()Ljava/util/HashMap;
ldc "jakarta.servlet.error.exception"
invokevirtual java.util.HashMap.remove:(Ljava/lang/Object;)Ljava/lang/Object;
pop
17: aconst_null
astore 9
start local 9 18: aload 4
invokevirtual org.apache.catalina.connector.Request.getContext:()Lorg/apache/catalina/Context;
iconst_0
aconst_null
invokeinterface org.apache.catalina.Context.bind:(ZLjava/lang/ClassLoader;)Ljava/lang/ClassLoader;
astore 9
19: aload 1
invokevirtual org.apache.coyote.Request.getReadListener:()Ljakarta/servlet/ReadListener;
ifnull 21
20: aload 1
invokevirtual org.apache.coyote.Request.getReadListener:()Ljakarta/servlet/ReadListener;
aload 8
invokeinterface jakarta.servlet.ReadListener.onError:(Ljava/lang/Throwable;)V
21: StackMap locals: java.lang.Throwable java.lang.ClassLoader
StackMap stack:
aload 2
invokevirtual org.apache.coyote.Response.getWriteListener:()Ljakarta/servlet/WriteListener;
ifnull 27
22: aload 2
invokevirtual org.apache.coyote.Response.getWriteListener:()Ljakarta/servlet/WriteListener;
aload 8
invokeinterface jakarta.servlet.WriteListener.onError:(Ljava/lang/Throwable;)V
23: goto 27
StackMap locals:
StackMap stack: java.lang.Throwable
24: astore 10
25: aload 4
invokevirtual org.apache.catalina.connector.Request.getContext:()Lorg/apache/catalina/Context;
iconst_0
aload 9
invokeinterface org.apache.catalina.Context.unbind:(ZLjava/lang/ClassLoader;)V
26: aload 10
athrow
27: StackMap locals:
StackMap stack:
aload 4
invokevirtual org.apache.catalina.connector.Request.getContext:()Lorg/apache/catalina/Context;
iconst_0
aload 9
invokeinterface org.apache.catalina.Context.unbind:(ZLjava/lang/ClassLoader;)V
28: aload 8
ifnull 30
29: aload 7
aload 8
iconst_1
invokevirtual org.apache.catalina.core.AsyncContextImpl.setErrorState:(Ljava/lang/Throwable;Z)V
end local 9 end local 8 30: StackMap locals:
StackMap stack:
aload 4
invokevirtual org.apache.catalina.connector.Request.isAsyncDispatching:()Z
ifne 68
aload 4
invokevirtual org.apache.catalina.connector.Request.isAsync:()Z
ifeq 68
31: aload 2
invokevirtual org.apache.coyote.Response.getWriteListener:()Ljakarta/servlet/WriteListener;
astore 8
start local 8 32: aload 1
invokevirtual org.apache.coyote.Request.getReadListener:()Ljakarta/servlet/ReadListener;
astore 9
start local 9 33: aload 8
ifnull 51
aload 3
getstatic org.apache.tomcat.util.net.SocketEvent.OPEN_WRITE:Lorg/apache/tomcat/util/net/SocketEvent;
if_acmpne 51
34: aconst_null
astore 10
start local 10 35: aload 4
invokevirtual org.apache.catalina.connector.Request.getContext:()Lorg/apache/catalina/Context;
iconst_0
aconst_null
invokeinterface org.apache.catalina.Context.bind:(ZLjava/lang/ClassLoader;)Ljava/lang/ClassLoader;
astore 10
36: aload 2
invokevirtual org.apache.coyote.Response.onWritePossible:()V
37: aload 4
invokevirtual org.apache.catalina.connector.Request.isFinished:()Z
ifeq 49
aload 1
invokevirtual org.apache.coyote.Request.sendAllDataReadEvent:()Z
ifeq 49
38: aload 9
ifnull 49
39: aload 9
invokeinterface jakarta.servlet.ReadListener.onAllDataRead:()V
40: goto 49
StackMap locals: org.apache.catalina.connector.CoyoteAdapter org.apache.coyote.Request org.apache.coyote.Response org.apache.tomcat.util.net.SocketEvent org.apache.catalina.connector.Request org.apache.catalina.connector.Response int org.apache.catalina.core.AsyncContextImpl jakarta.servlet.WriteListener jakarta.servlet.ReadListener java.lang.ClassLoader
StackMap stack: java.lang.Throwable
41: astore 11
start local 11 42: aload 11
invokestatic org.apache.tomcat.util.ExceptionUtils.handleThrowable:(Ljava/lang/Throwable;)V
43: aload 8
aload 11
invokeinterface jakarta.servlet.WriteListener.onError:(Ljava/lang/Throwable;)V
44: iconst_0
istore 6
end local 11 45: aload 4
invokevirtual org.apache.catalina.connector.Request.getContext:()Lorg/apache/catalina/Context;
iconst_0
aload 10
invokeinterface org.apache.catalina.Context.unbind:(ZLjava/lang/ClassLoader;)V
goto 68
46: StackMap locals:
StackMap stack: java.lang.Throwable
astore 12
47: aload 4
invokevirtual org.apache.catalina.connector.Request.getContext:()Lorg/apache/catalina/Context;
iconst_0
aload 10
invokeinterface org.apache.catalina.Context.unbind:(ZLjava/lang/ClassLoader;)V
48: aload 12
athrow
49: StackMap locals:
StackMap stack:
aload 4
invokevirtual org.apache.catalina.connector.Request.getContext:()Lorg/apache/catalina/Context;
iconst_0
aload 10
invokeinterface org.apache.catalina.Context.unbind:(ZLjava/lang/ClassLoader;)V
end local 10 50: goto 68
StackMap locals:
StackMap stack:
51: aload 9
ifnull 68
aload 3
getstatic org.apache.tomcat.util.net.SocketEvent.OPEN_READ:Lorg/apache/tomcat/util/net/SocketEvent;
if_acmpne 68
52: aconst_null
astore 10
start local 10 53: aload 4
invokevirtual org.apache.catalina.connector.Request.getContext:()Lorg/apache/catalina/Context;
iconst_0
aconst_null
invokeinterface org.apache.catalina.Context.bind:(ZLjava/lang/ClassLoader;)Ljava/lang/ClassLoader;
astore 10
54: aload 4
invokevirtual org.apache.catalina.connector.Request.isFinished:()Z
ifne 56
55: aload 9
invokeinterface jakarta.servlet.ReadListener.onDataAvailable:()V
56: StackMap locals: java.lang.ClassLoader
StackMap stack:
aload 4
invokevirtual org.apache.catalina.connector.Request.isFinished:()Z
ifeq 67
aload 1
invokevirtual org.apache.coyote.Request.sendAllDataReadEvent:()Z
ifeq 67
57: aload 9
invokeinterface jakarta.servlet.ReadListener.onAllDataRead:()V
58: goto 67
StackMap locals:
StackMap stack: java.lang.Throwable
59: astore 11
start local 11 60: aload 11
invokestatic org.apache.tomcat.util.ExceptionUtils.handleThrowable:(Ljava/lang/Throwable;)V
61: aload 9
aload 11
invokeinterface jakarta.servlet.ReadListener.onError:(Ljava/lang/Throwable;)V
62: iconst_0
istore 6
end local 11 63: aload 4
invokevirtual org.apache.catalina.connector.Request.getContext:()Lorg/apache/catalina/Context;
iconst_0
aload 10
invokeinterface org.apache.catalina.Context.unbind:(ZLjava/lang/ClassLoader;)V
goto 68
64: StackMap locals:
StackMap stack: java.lang.Throwable
astore 12
65: aload 4
invokevirtual org.apache.catalina.connector.Request.getContext:()Lorg/apache/catalina/Context;
iconst_0
aload 10
invokeinterface org.apache.catalina.Context.unbind:(ZLjava/lang/ClassLoader;)V
66: aload 12
athrow
67: StackMap locals:
StackMap stack:
aload 4
invokevirtual org.apache.catalina.connector.Request.getContext:()Lorg/apache/catalina/Context;
iconst_0
aload 10
invokeinterface org.apache.catalina.Context.unbind:(ZLjava/lang/ClassLoader;)V
end local 10 end local 9 end local 8 68: StackMap locals:
StackMap stack:
aload 4
invokevirtual org.apache.catalina.connector.Request.isAsyncDispatching:()Z
ifne 73
aload 4
invokevirtual org.apache.catalina.connector.Request.isAsync:()Z
ifeq 73
69: aload 5
invokevirtual org.apache.catalina.connector.Response.isErrorReportRequired:()Z
ifeq 73
70: aload 0
getfield org.apache.catalina.connector.CoyoteAdapter.connector:Lorg/apache/catalina/connector/Connector;
invokevirtual org.apache.catalina.connector.Connector.getService:()Lorg/apache/catalina/Service;
invokeinterface org.apache.catalina.Service.getContainer:()Lorg/apache/catalina/Engine;
invokeinterface org.apache.catalina.Engine.getPipeline:()Lorg/apache/catalina/Pipeline;
invokeinterface org.apache.catalina.Pipeline.getFirst:()Lorg/apache/catalina/Valve;
71: aload 4
aload 5
72: invokeinterface org.apache.catalina.Valve.invoke:(Lorg/apache/catalina/connector/Request;Lorg/apache/catalina/connector/Response;)V
73: StackMap locals:
StackMap stack:
aload 4
invokevirtual org.apache.catalina.connector.Request.isAsyncDispatching:()Z
ifeq 80
74: aload 0
getfield org.apache.catalina.connector.CoyoteAdapter.connector:Lorg/apache/catalina/connector/Connector;
invokevirtual org.apache.catalina.connector.Connector.getService:()Lorg/apache/catalina/Service;
invokeinterface org.apache.catalina.Service.getContainer:()Lorg/apache/catalina/Engine;
invokeinterface org.apache.catalina.Engine.getPipeline:()Lorg/apache/catalina/Pipeline;
invokeinterface org.apache.catalina.Pipeline.getFirst:()Lorg/apache/catalina/Valve;
75: aload 4
aload 5
76: invokeinterface org.apache.catalina.Valve.invoke:(Lorg/apache/catalina/connector/Request;Lorg/apache/catalina/connector/Response;)V
77: aload 4
ldc "jakarta.servlet.error.exception"
invokevirtual org.apache.catalina.connector.Request.getAttribute:(Ljava/lang/String;)Ljava/lang/Object;
checkcast java.lang.Throwable
astore 8
start local 8 78: aload 8
ifnull 80
79: aload 7
aload 8
iconst_1
invokevirtual org.apache.catalina.core.AsyncContextImpl.setErrorState:(Ljava/lang/Throwable;Z)V
end local 8 80: StackMap locals:
StackMap stack:
aload 4
invokevirtual org.apache.catalina.connector.Request.isAsync:()Z
ifne 83
81: aload 4
invokevirtual org.apache.catalina.connector.Request.finishRequest:()V
82: aload 5
invokevirtual org.apache.catalina.connector.Response.finishResponse:()V
83: StackMap locals:
StackMap stack:
new java.util.concurrent.atomic.AtomicBoolean
dup
iconst_0
invokespecial java.util.concurrent.atomic.AtomicBoolean.<init>:(Z)V
astore 8
start local 8 84: aload 2
getstatic org.apache.coyote.ActionCode.IS_ERROR:Lorg/apache/coyote/ActionCode;
aload 8
invokevirtual org.apache.coyote.Response.action:(Lorg/apache/coyote/ActionCode;Ljava/lang/Object;)V
85: aload 8
invokevirtual java.util.concurrent.atomic.AtomicBoolean.get:()Z
ifeq 146
86: aload 4
invokevirtual org.apache.catalina.connector.Request.isAsyncCompleting:()Z
ifeq 88
87: aload 2
getstatic org.apache.coyote.ActionCode.ASYNC_POST_PROCESS:Lorg/apache/coyote/ActionCode;
aconst_null
invokevirtual org.apache.coyote.Response.action:(Lorg/apache/coyote/ActionCode;Ljava/lang/Object;)V
88: StackMap locals: java.util.concurrent.atomic.AtomicBoolean
StackMap stack:
iconst_0
istore 6
end local 8 89: goto 146
StackMap locals: org.apache.catalina.connector.CoyoteAdapter org.apache.coyote.Request org.apache.coyote.Response org.apache.tomcat.util.net.SocketEvent org.apache.catalina.connector.Request org.apache.catalina.connector.Response int org.apache.catalina.core.AsyncContextImpl
StackMap stack: java.io.IOException
90: pop
91: iconst_0
istore 6
92: iload 6
ifne 94
93: aload 2
sipush 500
invokevirtual org.apache.coyote.Response.setStatus:(I)V
94: StackMap locals:
StackMap stack:
iload 6
ifeq 95
aload 4
invokevirtual org.apache.catalina.connector.Request.isAsync:()Z
ifne 103
95: StackMap locals:
StackMap stack:
lconst_0
lstore 14
start local 14 96: aload 1
invokevirtual org.apache.coyote.Request.getStartTimeNanos:()J
ldc -1
lcmp
ifeq 98
97: invokestatic java.lang.System.nanoTime:()J
aload 1
invokevirtual org.apache.coyote.Request.getStartTimeNanos:()J
lsub
lstore 14
98: StackMap locals: org.apache.catalina.connector.CoyoteAdapter org.apache.coyote.Request org.apache.coyote.Response org.apache.tomcat.util.net.SocketEvent org.apache.catalina.connector.Request org.apache.catalina.connector.Response int org.apache.catalina.core.AsyncContextImpl top top top top top top long
StackMap stack:
aload 4
invokevirtual org.apache.catalina.connector.Request.getContext:()Lorg/apache/catalina/Context;
astore 16
start local 16 99: aload 16
ifnull 102
100: aload 16
aload 4
aload 5
lload 14
iconst_0
invokeinterface org.apache.catalina.Context.logAccess:(Lorg/apache/catalina/connector/Request;Lorg/apache/catalina/connector/Response;JZ)V
101: goto 103
102: StackMap locals: org.apache.catalina.Context
StackMap stack:
aload 0
aload 1
aload 2
lload 14
invokevirtual org.apache.catalina.connector.CoyoteAdapter.log:(Lorg/apache/coyote/Request;Lorg/apache/coyote/Response;J)V
end local 16 end local 14 103: StackMap locals: org.apache.catalina.connector.CoyoteAdapter org.apache.coyote.Request org.apache.coyote.Response org.apache.tomcat.util.net.SocketEvent org.apache.catalina.connector.Request org.apache.catalina.connector.Response int org.apache.catalina.core.AsyncContextImpl
StackMap stack:
aload 1
invokevirtual org.apache.coyote.Request.getRequestProcessor:()Lorg/apache/coyote/RequestInfo;
aconst_null
invokevirtual org.apache.coyote.RequestInfo.setWorkerThreadName:(Ljava/lang/String;)V
104: iload 6
ifeq 105
aload 4
invokevirtual org.apache.catalina.connector.Request.isAsync:()Z
ifne 162
105: StackMap locals:
StackMap stack:
aload 0
aload 4
aload 5
invokevirtual org.apache.catalina.connector.CoyoteAdapter.updateWrapperErrorCount:(Lorg/apache/catalina/connector/Request;Lorg/apache/catalina/connector/Response;)V
106: aload 4
invokevirtual org.apache.catalina.connector.Request.recycle:()V
107: aload 5
invokevirtual org.apache.catalina.connector.Response.recycle:()V
goto 162
108: StackMap locals:
StackMap stack: java.lang.Throwable
astore 8
start local 8 109: aload 8
invokestatic org.apache.tomcat.util.ExceptionUtils.handleThrowable:(Ljava/lang/Throwable;)V
110: iconst_0
istore 6
111: getstatic org.apache.catalina.connector.CoyoteAdapter.log:Lorg/apache/juli/logging/Log;
getstatic org.apache.catalina.connector.CoyoteAdapter.sm:Lorg/apache/tomcat/util/res/StringManager;
ldc "coyoteAdapter.asyncDispatch"
invokevirtual org.apache.tomcat.util.res.StringManager.getString:(Ljava/lang/String;)Ljava/lang/String;
aload 8
invokeinterface org.apache.juli.logging.Log.error:(Ljava/lang/Object;Ljava/lang/Throwable;)V
end local 8 112: iload 6
ifne 114
113: aload 2
sipush 500
invokevirtual org.apache.coyote.Response.setStatus:(I)V
114: StackMap locals:
StackMap stack:
iload 6
ifeq 115
aload 4
invokevirtual org.apache.catalina.connector.Request.isAsync:()Z
ifne 123
115: StackMap locals:
StackMap stack:
lconst_0
lstore 14
start local 14 116: aload 1
invokevirtual org.apache.coyote.Request.getStartTimeNanos:()J
ldc -1
lcmp
ifeq 118
117: invokestatic java.lang.System.nanoTime:()J
aload 1
invokevirtual org.apache.coyote.Request.getStartTimeNanos:()J
lsub
lstore 14
118: StackMap locals: org.apache.catalina.connector.CoyoteAdapter org.apache.coyote.Request org.apache.coyote.Response org.apache.tomcat.util.net.SocketEvent org.apache.catalina.connector.Request org.apache.catalina.connector.Response int org.apache.catalina.core.AsyncContextImpl top top top top top top long
StackMap stack:
aload 4
invokevirtual org.apache.catalina.connector.Request.getContext:()Lorg/apache/catalina/Context;
astore 16
start local 16 119: aload 16
ifnull 122
120: aload 16
aload 4
aload 5
lload 14
iconst_0
invokeinterface org.apache.catalina.Context.logAccess:(Lorg/apache/catalina/connector/Request;Lorg/apache/catalina/connector/Response;JZ)V
121: goto 123
122: StackMap locals: org.apache.catalina.Context
StackMap stack:
aload 0
aload 1
aload 2
lload 14
invokevirtual org.apache.catalina.connector.CoyoteAdapter.log:(Lorg/apache/coyote/Request;Lorg/apache/coyote/Response;J)V
end local 16 end local 14 123: StackMap locals: org.apache.catalina.connector.CoyoteAdapter org.apache.coyote.Request org.apache.coyote.Response org.apache.tomcat.util.net.SocketEvent org.apache.catalina.connector.Request org.apache.catalina.connector.Response int org.apache.catalina.core.AsyncContextImpl
StackMap stack:
aload 1
invokevirtual org.apache.coyote.Request.getRequestProcessor:()Lorg/apache/coyote/RequestInfo;
aconst_null
invokevirtual org.apache.coyote.RequestInfo.setWorkerThreadName:(Ljava/lang/String;)V
124: iload 6
ifeq 125
aload 4
invokevirtual org.apache.catalina.connector.Request.isAsync:()Z
ifne 162
125: StackMap locals:
StackMap stack:
aload 0
aload 4
aload 5
invokevirtual org.apache.catalina.connector.CoyoteAdapter.updateWrapperErrorCount:(Lorg/apache/catalina/connector/Request;Lorg/apache/catalina/connector/Response;)V
126: aload 4
invokevirtual org.apache.catalina.connector.Request.recycle:()V
127: aload 5
invokevirtual org.apache.catalina.connector.Response.recycle:()V
goto 162
128: StackMap locals:
StackMap stack: java.lang.Throwable
astore 13
129: iload 6
ifne 131
130: aload 2
sipush 500
invokevirtual org.apache.coyote.Response.setStatus:(I)V
131: StackMap locals: org.apache.catalina.connector.CoyoteAdapter org.apache.coyote.Request org.apache.coyote.Response org.apache.tomcat.util.net.SocketEvent org.apache.catalina.connector.Request org.apache.catalina.connector.Response int org.apache.catalina.core.AsyncContextImpl top top top top top java.lang.Throwable
StackMap stack:
iload 6
ifeq 132
aload 4
invokevirtual org.apache.catalina.connector.Request.isAsync:()Z
ifne 140
132: StackMap locals:
StackMap stack:
lconst_0
lstore 14
start local 14 133: aload 1
invokevirtual org.apache.coyote.Request.getStartTimeNanos:()J
ldc -1
lcmp
ifeq 135
134: invokestatic java.lang.System.nanoTime:()J
aload 1
invokevirtual org.apache.coyote.Request.getStartTimeNanos:()J
lsub
lstore 14
135: StackMap locals: long
StackMap stack:
aload 4
invokevirtual org.apache.catalina.connector.Request.getContext:()Lorg/apache/catalina/Context;
astore 16
start local 16 136: aload 16
ifnull 139
137: aload 16
aload 4
aload 5
lload 14
iconst_0
invokeinterface org.apache.catalina.Context.logAccess:(Lorg/apache/catalina/connector/Request;Lorg/apache/catalina/connector/Response;JZ)V
138: goto 140
139: StackMap locals: org.apache.catalina.Context
StackMap stack:
aload 0
aload 1
aload 2
lload 14
invokevirtual org.apache.catalina.connector.CoyoteAdapter.log:(Lorg/apache/coyote/Request;Lorg/apache/coyote/Response;J)V
end local 16 end local 14 140: StackMap locals:
StackMap stack:
aload 1
invokevirtual org.apache.coyote.Request.getRequestProcessor:()Lorg/apache/coyote/RequestInfo;
aconst_null
invokevirtual org.apache.coyote.RequestInfo.setWorkerThreadName:(Ljava/lang/String;)V
141: iload 6
ifeq 142
aload 4
invokevirtual org.apache.catalina.connector.Request.isAsync:()Z
ifne 145
142: StackMap locals:
StackMap stack:
aload 0
aload 4
aload 5
invokevirtual org.apache.catalina.connector.CoyoteAdapter.updateWrapperErrorCount:(Lorg/apache/catalina/connector/Request;Lorg/apache/catalina/connector/Response;)V
143: aload 4
invokevirtual org.apache.catalina.connector.Request.recycle:()V
144: aload 5
invokevirtual org.apache.catalina.connector.Response.recycle:()V
145: StackMap locals:
StackMap stack:
aload 13
athrow
146: StackMap locals: org.apache.catalina.connector.CoyoteAdapter org.apache.coyote.Request org.apache.coyote.Response org.apache.tomcat.util.net.SocketEvent org.apache.catalina.connector.Request org.apache.catalina.connector.Response int org.apache.catalina.core.AsyncContextImpl
StackMap stack:
iload 6
ifne 148
147: aload 2
sipush 500
invokevirtual org.apache.coyote.Response.setStatus:(I)V
148: StackMap locals:
StackMap stack:
iload 6
ifeq 149
aload 4
invokevirtual org.apache.catalina.connector.Request.isAsync:()Z
ifne 157
149: StackMap locals:
StackMap stack:
lconst_0
lstore 14
start local 14 150: aload 1
invokevirtual org.apache.coyote.Request.getStartTimeNanos:()J
ldc -1
lcmp
ifeq 152
151: invokestatic java.lang.System.nanoTime:()J
aload 1
invokevirtual org.apache.coyote.Request.getStartTimeNanos:()J
lsub
lstore 14
152: StackMap locals: org.apache.catalina.connector.CoyoteAdapter org.apache.coyote.Request org.apache.coyote.Response org.apache.tomcat.util.net.SocketEvent org.apache.catalina.connector.Request org.apache.catalina.connector.Response int org.apache.catalina.core.AsyncContextImpl top top top top top top long
StackMap stack:
aload 4
invokevirtual org.apache.catalina.connector.Request.getContext:()Lorg/apache/catalina/Context;
astore 16
start local 16 153: aload 16
ifnull 156
154: aload 16
aload 4
aload 5
lload 14
iconst_0
invokeinterface org.apache.catalina.Context.logAccess:(Lorg/apache/catalina/connector/Request;Lorg/apache/catalina/connector/Response;JZ)V
155: goto 157
156: StackMap locals: org.apache.catalina.Context
StackMap stack:
aload 0
aload 1
aload 2
lload 14
invokevirtual org.apache.catalina.connector.CoyoteAdapter.log:(Lorg/apache/coyote/Request;Lorg/apache/coyote/Response;J)V
end local 16 end local 14 157: StackMap locals: org.apache.catalina.connector.CoyoteAdapter org.apache.coyote.Request org.apache.coyote.Response org.apache.tomcat.util.net.SocketEvent org.apache.catalina.connector.Request org.apache.catalina.connector.Response int org.apache.catalina.core.AsyncContextImpl
StackMap stack:
aload 1
invokevirtual org.apache.coyote.Request.getRequestProcessor:()Lorg/apache/coyote/RequestInfo;
aconst_null
invokevirtual org.apache.coyote.RequestInfo.setWorkerThreadName:(Ljava/lang/String;)V
158: iload 6
ifeq 159
aload 4
invokevirtual org.apache.catalina.connector.Request.isAsync:()Z
ifne 162
159: StackMap locals:
StackMap stack:
aload 0
aload 4
aload 5
invokevirtual org.apache.catalina.connector.CoyoteAdapter.updateWrapperErrorCount:(Lorg/apache/catalina/connector/Request;Lorg/apache/catalina/connector/Response;)V
160: aload 4
invokevirtual org.apache.catalina.connector.Request.recycle:()V
161: aload 5
invokevirtual org.apache.catalina.connector.Response.recycle:()V
162: StackMap locals:
StackMap stack:
iload 6
ireturn
end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 163 0 this Lorg/apache/catalina/connector/CoyoteAdapter;
0 163 1 req Lorg/apache/coyote/Request;
0 163 2 res Lorg/apache/coyote/Response;
0 163 3 status Lorg/apache/tomcat/util/net/SocketEvent;
1 163 4 request Lorg/apache/catalina/connector/Request;
2 163 5 response Lorg/apache/catalina/connector/Response;
5 163 6 success Z
6 163 7 asyncConImpl Lorg/apache/catalina/core/AsyncContextImpl;
16 30 8 t Ljava/lang/Throwable;
18 30 9 oldCL Ljava/lang/ClassLoader;
32 68 8 writeListener Ljakarta/servlet/WriteListener;
33 68 9 readListener Ljakarta/servlet/ReadListener;
35 50 10 oldCL Ljava/lang/ClassLoader;
42 45 11 t Ljava/lang/Throwable;
53 68 10 oldCL Ljava/lang/ClassLoader;
60 63 11 t Ljava/lang/Throwable;
78 80 8 t Ljava/lang/Throwable;
84 89 8 error Ljava/util/concurrent/atomic/AtomicBoolean;
109 112 8 t Ljava/lang/Throwable;
96 103 14 time J
116 123 14 time J
133 140 14 time J
150 157 14 time J
99 103 16 context Lorg/apache/catalina/Context;
119 123 16 context Lorg/apache/catalina/Context;
136 140 16 context Lorg/apache/catalina/Context;
153 157 16 context Lorg/apache/catalina/Context;
Exception table:
from to target type
18 24 24 any
35 40 41 Class java.lang.Throwable
35 45 46 any
53 58 59 Class java.lang.Throwable
53 63 64 any
7 89 90 Class java.io.IOException
7 89 108 Class java.lang.Throwable
7 92 128 any
108 112 128 any
Exceptions:
throws java.lang.Exception
MethodParameters:
Name Flags
req
res
status
public void service(org.apache.coyote.Request, org.apache.coyote.Response);
descriptor: (Lorg/apache/coyote/Request;Lorg/apache/coyote/Response;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=16, args_size=3
start local 0 start local 1 start local 2 0: aload 1
iconst_1
invokevirtual org.apache.coyote.Request.getNote:(I)Ljava/lang/Object;
checkcast org.apache.catalina.connector.Request
astore 3
start local 3 1: aload 2
iconst_1
invokevirtual org.apache.coyote.Response.getNote:(I)Ljava/lang/Object;
checkcast org.apache.catalina.connector.Response
astore 4
start local 4 2: aload 3
ifnonnull 12
3: aload 0
getfield org.apache.catalina.connector.CoyoteAdapter.connector:Lorg/apache/catalina/connector/Connector;
invokevirtual org.apache.catalina.connector.Connector.createRequest:()Lorg/apache/catalina/connector/Request;
astore 3
4: aload 3
aload 1
invokevirtual org.apache.catalina.connector.Request.setCoyoteRequest:(Lorg/apache/coyote/Request;)V
5: aload 0
getfield org.apache.catalina.connector.CoyoteAdapter.connector:Lorg/apache/catalina/connector/Connector;
invokevirtual org.apache.catalina.connector.Connector.createResponse:()Lorg/apache/catalina/connector/Response;
astore 4
6: aload 4
aload 2
invokevirtual org.apache.catalina.connector.Response.setCoyoteResponse:(Lorg/apache/coyote/Response;)V
7: aload 3
aload 4
invokevirtual org.apache.catalina.connector.Request.setResponse:(Lorg/apache/catalina/connector/Response;)V
8: aload 4
aload 3
invokevirtual org.apache.catalina.connector.Response.setRequest:(Lorg/apache/catalina/connector/Request;)V
9: aload 1
iconst_1
aload 3
invokevirtual org.apache.coyote.Request.setNote:(ILjava/lang/Object;)V
10: aload 2
iconst_1
aload 4
invokevirtual org.apache.coyote.Response.setNote:(ILjava/lang/Object;)V
11: aload 1
invokevirtual org.apache.coyote.Request.getParameters:()Lorg/apache/tomcat/util/http/Parameters;
aload 0
getfield org.apache.catalina.connector.CoyoteAdapter.connector:Lorg/apache/catalina/connector/Connector;
invokevirtual org.apache.catalina.connector.Connector.getURICharset:()Ljava/nio/charset/Charset;
invokevirtual org.apache.tomcat.util.http.Parameters.setQueryStringCharset:(Ljava/nio/charset/Charset;)V
12: StackMap locals: org.apache.catalina.connector.Request org.apache.catalina.connector.Response
StackMap stack:
aload 0
getfield org.apache.catalina.connector.CoyoteAdapter.connector:Lorg/apache/catalina/connector/Connector;
invokevirtual org.apache.catalina.connector.Connector.getXpoweredBy:()Z
ifeq 14
13: aload 4
ldc "X-Powered-By"
getstatic org.apache.catalina.connector.CoyoteAdapter.POWERED_BY:Ljava/lang/String;
invokevirtual org.apache.catalina.connector.Response.addHeader:(Ljava/lang/String;Ljava/lang/String;)V
14: StackMap locals:
StackMap stack:
iconst_0
istore 5
start local 5 15: iconst_0
istore 6
start local 6 16: aload 1
invokevirtual org.apache.coyote.Request.getRequestProcessor:()Lorg/apache/coyote/RequestInfo;
getstatic org.apache.catalina.connector.CoyoteAdapter.THREAD_NAME:Ljava/lang/ThreadLocal;
invokevirtual java.lang.ThreadLocal.get:()Ljava/lang/Object;
checkcast java.lang.String
invokevirtual org.apache.coyote.RequestInfo.setWorkerThreadName:(Ljava/lang/String;)V
17: aload 0
aload 1
aload 3
aload 2
aload 4
invokevirtual org.apache.catalina.connector.CoyoteAdapter.postParseRequest:(Lorg/apache/coyote/Request;Lorg/apache/catalina/connector/Request;Lorg/apache/coyote/Response;Lorg/apache/catalina/connector/Response;)Z
istore 6
18: iload 6
ifeq 25
19: aload 3
20: aload 0
getfield org.apache.catalina.connector.CoyoteAdapter.connector:Lorg/apache/catalina/connector/Connector;
invokevirtual org.apache.catalina.connector.Connector.getService:()Lorg/apache/catalina/Service;
invokeinterface org.apache.catalina.Service.getContainer:()Lorg/apache/catalina/Engine;
invokeinterface org.apache.catalina.Engine.getPipeline:()Lorg/apache/catalina/Pipeline;
invokeinterface org.apache.catalina.Pipeline.isAsyncSupported:()Z
21: invokevirtual org.apache.catalina.connector.Request.setAsyncSupported:(Z)V
22: aload 0
getfield org.apache.catalina.connector.CoyoteAdapter.connector:Lorg/apache/catalina/connector/Connector;
invokevirtual org.apache.catalina.connector.Connector.getService:()Lorg/apache/catalina/Service;
invokeinterface org.apache.catalina.Service.getContainer:()Lorg/apache/catalina/Engine;
invokeinterface org.apache.catalina.Engine.getPipeline:()Lorg/apache/catalina/Pipeline;
invokeinterface org.apache.catalina.Pipeline.getFirst:()Lorg/apache/catalina/Valve;
23: aload 3
aload 4
24: invokeinterface org.apache.catalina.Valve.invoke:(Lorg/apache/catalina/connector/Request;Lorg/apache/catalina/connector/Response;)V
25: StackMap locals: int int
StackMap stack:
aload 3
invokevirtual org.apache.catalina.connector.Request.isAsync:()Z
ifeq 43
26: iconst_1
istore 5
27: aload 1
invokevirtual org.apache.coyote.Request.getReadListener:()Ljakarta/servlet/ReadListener;
astore 7
start local 7 28: aload 7
ifnull 38
aload 3
invokevirtual org.apache.catalina.connector.Request.isFinished:()Z
ifeq 38
29: aconst_null
astore 8
start local 8 30: aload 3
invokevirtual org.apache.catalina.connector.Request.getContext:()Lorg/apache/catalina/Context;
iconst_0
aconst_null
invokeinterface org.apache.catalina.Context.bind:(ZLjava/lang/ClassLoader;)Ljava/lang/ClassLoader;
astore 8
31: aload 1
invokevirtual org.apache.coyote.Request.sendAllDataReadEvent:()Z
ifeq 37
32: aload 1
invokevirtual org.apache.coyote.Request.getReadListener:()Ljakarta/servlet/ReadListener;
invokeinterface jakarta.servlet.ReadListener.onAllDataRead:()V
33: goto 37
StackMap locals: org.apache.catalina.connector.CoyoteAdapter org.apache.coyote.Request org.apache.coyote.Response org.apache.catalina.connector.Request org.apache.catalina.connector.Response int int jakarta.servlet.ReadListener java.lang.ClassLoader
StackMap stack: java.lang.Throwable
34: astore 9
35: aload 3
invokevirtual org.apache.catalina.connector.Request.getContext:()Lorg/apache/catalina/Context;
iconst_0
aload 8
invokeinterface org.apache.catalina.Context.unbind:(ZLjava/lang/ClassLoader;)V
36: aload 9
athrow
37: StackMap locals:
StackMap stack:
aload 3
invokevirtual org.apache.catalina.connector.Request.getContext:()Lorg/apache/catalina/Context;
iconst_0
aload 8
invokeinterface org.apache.catalina.Context.unbind:(ZLjava/lang/ClassLoader;)V
end local 8 38: StackMap locals:
StackMap stack:
aload 3
ldc "jakarta.servlet.error.exception"
invokevirtual org.apache.catalina.connector.Request.getAttribute:(Ljava/lang/String;)Ljava/lang/Object;
checkcast java.lang.Throwable
39: astore 8
start local 8 40: aload 3
invokevirtual org.apache.catalina.connector.Request.isAsyncCompleting:()Z
ifne 98
aload 8
ifnull 98
41: aload 3
invokevirtual org.apache.catalina.connector.Request.getAsyncContextInternal:()Lorg/apache/catalina/core/AsyncContextImpl;
aload 8
iconst_1
invokevirtual org.apache.catalina.core.AsyncContextImpl.setErrorState:(Ljava/lang/Throwable;Z)V
end local 8 end local 7 42: goto 98
43: StackMap locals:
StackMap stack:
aload 3
invokevirtual org.apache.catalina.connector.Request.finishRequest:()V
44: aload 4
invokevirtual org.apache.catalina.connector.Response.finishResponse:()V
45: goto 98
StackMap locals:
StackMap stack: java.io.IOException
46: pop
47: new java.util.concurrent.atomic.AtomicBoolean
dup
iconst_0
invokespecial java.util.concurrent.atomic.AtomicBoolean.<init>:(Z)V
astore 11
start local 11 48: aload 2
getstatic org.apache.coyote.ActionCode.IS_ERROR:Lorg/apache/coyote/ActionCode;
aload 11
invokevirtual org.apache.coyote.Response.action:(Lorg/apache/coyote/ActionCode;Ljava/lang/Object;)V
49: aload 3
invokevirtual org.apache.catalina.connector.Request.isAsyncCompleting:()Z
ifeq 52
aload 11
invokevirtual java.util.concurrent.atomic.AtomicBoolean.get:()Z
ifeq 52
50: aload 2
getstatic org.apache.coyote.ActionCode.ASYNC_POST_PROCESS:Lorg/apache/coyote/ActionCode;
aconst_null
invokevirtual org.apache.coyote.Response.action:(Lorg/apache/coyote/ActionCode;Ljava/lang/Object;)V
51: iconst_0
istore 5
52: StackMap locals: org.apache.catalina.connector.CoyoteAdapter org.apache.coyote.Request org.apache.coyote.Response org.apache.catalina.connector.Request org.apache.catalina.connector.Response int int top top top top java.util.concurrent.atomic.AtomicBoolean
StackMap stack:
iload 5
ifne 66
iload 6
ifeq 66
53: aload 3
invokevirtual org.apache.catalina.connector.Request.getContext:()Lorg/apache/catalina/Context;
astore 12
start local 12 54: aload 3
invokevirtual org.apache.catalina.connector.Request.getHost:()Lorg/apache/catalina/Host;
astore 13
start local 13 55: invokestatic java.lang.System.nanoTime:()J
aload 1
invokevirtual org.apache.coyote.Request.getStartTimeNanos:()J
lsub
lstore 14
start local 14 56: aload 12
ifnull 59
57: aload 12
aload 3
aload 4
lload 14
iconst_0
invokeinterface org.apache.catalina.Context.logAccess:(Lorg/apache/catalina/connector/Request;Lorg/apache/catalina/connector/Response;JZ)V
58: goto 66
StackMap locals: org.apache.catalina.Context org.apache.catalina.Host long
StackMap stack:
59: aload 4
invokevirtual org.apache.catalina.connector.Response.isError:()Z
ifeq 66
60: aload 13
ifnull 63
61: aload 13
aload 3
aload 4
lload 14
iconst_0
invokeinterface org.apache.catalina.Host.logAccess:(Lorg/apache/catalina/connector/Request;Lorg/apache/catalina/connector/Response;JZ)V
62: goto 66
63: StackMap locals:
StackMap stack:
aload 0
getfield org.apache.catalina.connector.CoyoteAdapter.connector:Lorg/apache/catalina/connector/Connector;
invokevirtual org.apache.catalina.connector.Connector.getService:()Lorg/apache/catalina/Service;
invokeinterface org.apache.catalina.Service.getContainer:()Lorg/apache/catalina/Engine;
64: aload 3
aload 4
lload 14
iconst_0
65: invokeinterface org.apache.catalina.Engine.logAccess:(Lorg/apache/catalina/connector/Request;Lorg/apache/catalina/connector/Response;JZ)V
end local 14 end local 13 end local 12 66: StackMap locals:
StackMap stack:
aload 1
invokevirtual org.apache.coyote.Request.getRequestProcessor:()Lorg/apache/coyote/RequestInfo;
aconst_null
invokevirtual org.apache.coyote.RequestInfo.setWorkerThreadName:(Ljava/lang/String;)V
67: iload 5
ifne 122
68: aload 0
aload 3
aload 4
invokevirtual org.apache.catalina.connector.CoyoteAdapter.updateWrapperErrorCount:(Lorg/apache/catalina/connector/Request;Lorg/apache/catalina/connector/Response;)V
69: aload 3
invokevirtual org.apache.catalina.connector.Request.recycle:()V
70: aload 4
invokevirtual org.apache.catalina.connector.Response.recycle:()V
end local 11 71: goto 122
72: StackMap locals: org.apache.catalina.connector.CoyoteAdapter org.apache.coyote.Request org.apache.coyote.Response org.apache.catalina.connector.Request org.apache.catalina.connector.Response int int
StackMap stack: java.lang.Throwable
astore 10
73: new java.util.concurrent.atomic.AtomicBoolean
dup
iconst_0
invokespecial java.util.concurrent.atomic.AtomicBoolean.<init>:(Z)V
astore 11
start local 11 74: aload 2
getstatic org.apache.coyote.ActionCode.IS_ERROR:Lorg/apache/coyote/ActionCode;
aload 11
invokevirtual org.apache.coyote.Response.action:(Lorg/apache/coyote/ActionCode;Ljava/lang/Object;)V
75: aload 3
invokevirtual org.apache.catalina.connector.Request.isAsyncCompleting:()Z
ifeq 78
aload 11
invokevirtual java.util.concurrent.atomic.AtomicBoolean.get:()Z
ifeq 78
76: aload 2
getstatic org.apache.coyote.ActionCode.ASYNC_POST_PROCESS:Lorg/apache/coyote/ActionCode;
aconst_null
invokevirtual org.apache.coyote.Response.action:(Lorg/apache/coyote/ActionCode;Ljava/lang/Object;)V
77: iconst_0
istore 5
78: StackMap locals: org.apache.catalina.connector.CoyoteAdapter org.apache.coyote.Request org.apache.coyote.Response org.apache.catalina.connector.Request org.apache.catalina.connector.Response int int top top top java.lang.Throwable java.util.concurrent.atomic.AtomicBoolean
StackMap stack:
iload 5
ifne 92
iload 6
ifeq 92
79: aload 3
invokevirtual org.apache.catalina.connector.Request.getContext:()Lorg/apache/catalina/Context;
astore 12
start local 12 80: aload 3
invokevirtual org.apache.catalina.connector.Request.getHost:()Lorg/apache/catalina/Host;
astore 13
start local 13 81: invokestatic java.lang.System.nanoTime:()J
aload 1
invokevirtual org.apache.coyote.Request.getStartTimeNanos:()J
lsub
lstore 14
start local 14 82: aload 12
ifnull 85
83: aload 12
aload 3
aload 4
lload 14
iconst_0
invokeinterface org.apache.catalina.Context.logAccess:(Lorg/apache/catalina/connector/Request;Lorg/apache/catalina/connector/Response;JZ)V
84: goto 92
StackMap locals: org.apache.catalina.Context org.apache.catalina.Host long
StackMap stack:
85: aload 4
invokevirtual org.apache.catalina.connector.Response.isError:()Z
ifeq 92
86: aload 13
ifnull 89
87: aload 13
aload 3
aload 4
lload 14
iconst_0
invokeinterface org.apache.catalina.Host.logAccess:(Lorg/apache/catalina/connector/Request;Lorg/apache/catalina/connector/Response;JZ)V
88: goto 92
89: StackMap locals:
StackMap stack:
aload 0
getfield org.apache.catalina.connector.CoyoteAdapter.connector:Lorg/apache/catalina/connector/Connector;
invokevirtual org.apache.catalina.connector.Connector.getService:()Lorg/apache/catalina/Service;
invokeinterface org.apache.catalina.Service.getContainer:()Lorg/apache/catalina/Engine;
90: aload 3
aload 4
lload 14
iconst_0
91: invokeinterface org.apache.catalina.Engine.logAccess:(Lorg/apache/catalina/connector/Request;Lorg/apache/catalina/connector/Response;JZ)V
end local 14 end local 13 end local 12 92: StackMap locals:
StackMap stack:
aload 1
invokevirtual org.apache.coyote.Request.getRequestProcessor:()Lorg/apache/coyote/RequestInfo;
aconst_null
invokevirtual org.apache.coyote.RequestInfo.setWorkerThreadName:(Ljava/lang/String;)V
93: iload 5
ifne 97
94: aload 0
aload 3
aload 4
invokevirtual org.apache.catalina.connector.CoyoteAdapter.updateWrapperErrorCount:(Lorg/apache/catalina/connector/Request;Lorg/apache/catalina/connector/Response;)V
95: aload 3
invokevirtual org.apache.catalina.connector.Request.recycle:()V
96: aload 4
invokevirtual org.apache.catalina.connector.Response.recycle:()V
end local 11 97: StackMap locals:
StackMap stack:
aload 10
athrow
98: StackMap locals: org.apache.catalina.connector.CoyoteAdapter org.apache.coyote.Request org.apache.coyote.Response org.apache.catalina.connector.Request org.apache.catalina.connector.Response int int
StackMap stack:
new java.util.concurrent.atomic.AtomicBoolean
dup
iconst_0
invokespecial java.util.concurrent.atomic.AtomicBoolean.<init>:(Z)V
astore 11
start local 11 99: aload 2
getstatic org.apache.coyote.ActionCode.IS_ERROR:Lorg/apache/coyote/ActionCode;
aload 11
invokevirtual org.apache.coyote.Response.action:(Lorg/apache/coyote/ActionCode;Ljava/lang/Object;)V
100: aload 3
invokevirtual org.apache.catalina.connector.Request.isAsyncCompleting:()Z
ifeq 103
aload 11
invokevirtual java.util.concurrent.atomic.AtomicBoolean.get:()Z
ifeq 103
101: aload 2
getstatic org.apache.coyote.ActionCode.ASYNC_POST_PROCESS:Lorg/apache/coyote/ActionCode;
aconst_null
invokevirtual org.apache.coyote.Response.action:(Lorg/apache/coyote/ActionCode;Ljava/lang/Object;)V
102: iconst_0
istore 5
103: StackMap locals: org.apache.catalina.connector.CoyoteAdapter org.apache.coyote.Request org.apache.coyote.Response org.apache.catalina.connector.Request org.apache.catalina.connector.Response int int top top top top java.util.concurrent.atomic.AtomicBoolean
StackMap stack:
iload 5
ifne 117
iload 6
ifeq 117
104: aload 3
invokevirtual org.apache.catalina.connector.Request.getContext:()Lorg/apache/catalina/Context;
astore 12
start local 12 105: aload 3
invokevirtual org.apache.catalina.connector.Request.getHost:()Lorg/apache/catalina/Host;
astore 13
start local 13 106: invokestatic java.lang.System.nanoTime:()J
aload 1
invokevirtual org.apache.coyote.Request.getStartTimeNanos:()J
lsub
lstore 14
start local 14 107: aload 12
ifnull 110
108: aload 12
aload 3
aload 4
lload 14
iconst_0
invokeinterface org.apache.catalina.Context.logAccess:(Lorg/apache/catalina/connector/Request;Lorg/apache/catalina/connector/Response;JZ)V
109: goto 117
StackMap locals: org.apache.catalina.Context org.apache.catalina.Host long
StackMap stack:
110: aload 4
invokevirtual org.apache.catalina.connector.Response.isError:()Z
ifeq 117
111: aload 13
ifnull 114
112: aload 13
aload 3
aload 4
lload 14
iconst_0
invokeinterface org.apache.catalina.Host.logAccess:(Lorg/apache/catalina/connector/Request;Lorg/apache/catalina/connector/Response;JZ)V
113: goto 117
114: StackMap locals:
StackMap stack:
aload 0
getfield org.apache.catalina.connector.CoyoteAdapter.connector:Lorg/apache/catalina/connector/Connector;
invokevirtual org.apache.catalina.connector.Connector.getService:()Lorg/apache/catalina/Service;
invokeinterface org.apache.catalina.Service.getContainer:()Lorg/apache/catalina/Engine;
115: aload 3
aload 4
lload 14
iconst_0
116: invokeinterface org.apache.catalina.Engine.logAccess:(Lorg/apache/catalina/connector/Request;Lorg/apache/catalina/connector/Response;JZ)V
end local 14 end local 13 end local 12 117: StackMap locals:
StackMap stack:
aload 1
invokevirtual org.apache.coyote.Request.getRequestProcessor:()Lorg/apache/coyote/RequestInfo;
aconst_null
invokevirtual org.apache.coyote.RequestInfo.setWorkerThreadName:(Ljava/lang/String;)V
118: iload 5
ifne 122
119: aload 0
aload 3
aload 4
invokevirtual org.apache.catalina.connector.CoyoteAdapter.updateWrapperErrorCount:(Lorg/apache/catalina/connector/Request;Lorg/apache/catalina/connector/Response;)V
120: aload 3
invokevirtual org.apache.catalina.connector.Request.recycle:()V
121: aload 4
invokevirtual org.apache.catalina.connector.Response.recycle:()V
end local 11 122: StackMap locals: org.apache.catalina.connector.CoyoteAdapter org.apache.coyote.Request org.apache.coyote.Response org.apache.catalina.connector.Request org.apache.catalina.connector.Response int int
StackMap stack:
return
end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 123 0 this Lorg/apache/catalina/connector/CoyoteAdapter;
0 123 1 req Lorg/apache/coyote/Request;
0 123 2 res Lorg/apache/coyote/Response;
1 123 3 request Lorg/apache/catalina/connector/Request;
2 123 4 response Lorg/apache/catalina/connector/Response;
15 123 5 async Z
16 123 6 postParseSuccess Z
28 42 7 readListener Ljakarta/servlet/ReadListener;
30 38 8 oldCL Ljava/lang/ClassLoader;
40 42 8 throwable Ljava/lang/Throwable;
48 71 11 error Ljava/util/concurrent/atomic/AtomicBoolean;
74 97 11 error Ljava/util/concurrent/atomic/AtomicBoolean;
99 122 11 error Ljava/util/concurrent/atomic/AtomicBoolean;
54 66 12 context Lorg/apache/catalina/Context;
80 92 12 context Lorg/apache/catalina/Context;
105 117 12 context Lorg/apache/catalina/Context;
55 66 13 host Lorg/apache/catalina/Host;
81 92 13 host Lorg/apache/catalina/Host;
106 117 13 host Lorg/apache/catalina/Host;
56 66 14 time J
82 92 14 time J
107 117 14 time J
Exception table:
from to target type
30 34 34 any
17 45 46 Class java.io.IOException
17 47 72 any
Exceptions:
throws java.lang.Exception
MethodParameters:
Name Flags
req
res
private void updateWrapperErrorCount(org.apache.catalina.connector.Request, org.apache.catalina.connector.Response);
descriptor: (Lorg/apache/catalina/connector/Request;Lorg/apache/catalina/connector/Response;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=1, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 2
invokevirtual org.apache.catalina.connector.Response.isError:()Z
ifeq 4
1: aload 1
invokevirtual org.apache.catalina.connector.Request.getWrapper:()Lorg/apache/catalina/Wrapper;
astore 3
start local 3 2: aload 3
ifnull 4
3: aload 3
invokeinterface org.apache.catalina.Wrapper.incrementErrorCount:()V
end local 3 4: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/apache/catalina/connector/CoyoteAdapter;
0 5 1 request Lorg/apache/catalina/connector/Request;
0 5 2 response Lorg/apache/catalina/connector/Response;
2 4 3 wrapper Lorg/apache/catalina/Wrapper;
MethodParameters:
Name Flags
request
response
public boolean prepare(org.apache.coyote.Request, org.apache.coyote.Response);
descriptor: (Lorg/apache/coyote/Request;Lorg/apache/coyote/Response;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=5, args_size=3
start local 0 start local 1 start local 2 0: aload 1
iconst_1
invokevirtual org.apache.coyote.Request.getNote:(I)Ljava/lang/Object;
checkcast org.apache.catalina.connector.Request
astore 3
start local 3 1: aload 2
iconst_1
invokevirtual org.apache.coyote.Response.getNote:(I)Ljava/lang/Object;
checkcast org.apache.catalina.connector.Response
astore 4
start local 4 2: aload 0
aload 1
aload 3
aload 2
aload 4
invokevirtual org.apache.catalina.connector.CoyoteAdapter.postParseRequest:(Lorg/apache/coyote/Request;Lorg/apache/catalina/connector/Request;Lorg/apache/coyote/Response;Lorg/apache/catalina/connector/Response;)Z
ireturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/apache/catalina/connector/CoyoteAdapter;
0 3 1 req Lorg/apache/coyote/Request;
0 3 2 res Lorg/apache/coyote/Response;
1 3 3 request Lorg/apache/catalina/connector/Request;
2 3 4 response Lorg/apache/catalina/connector/Response;
Exceptions:
throws java.io.IOException, jakarta.servlet.ServletException
MethodParameters:
Name Flags
req
res
public void log(org.apache.coyote.Request, org.apache.coyote.Response, long);
descriptor: (Lorg/apache/coyote/Request;Lorg/apache/coyote/Response;J)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=11, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 1
iconst_1
invokevirtual org.apache.coyote.Request.getNote:(I)Ljava/lang/Object;
checkcast org.apache.catalina.connector.Request
astore 5
start local 5 1: aload 2
iconst_1
invokevirtual org.apache.coyote.Response.getNote:(I)Ljava/lang/Object;
checkcast org.apache.catalina.connector.Response
astore 6
start local 6 2: aload 5
ifnonnull 12
3: aload 0
getfield org.apache.catalina.connector.CoyoteAdapter.connector:Lorg/apache/catalina/connector/Connector;
invokevirtual org.apache.catalina.connector.Connector.createRequest:()Lorg/apache/catalina/connector/Request;
astore 5
4: aload 5
aload 1
invokevirtual org.apache.catalina.connector.Request.setCoyoteRequest:(Lorg/apache/coyote/Request;)V
5: aload 0
getfield org.apache.catalina.connector.CoyoteAdapter.connector:Lorg/apache/catalina/connector/Connector;
invokevirtual org.apache.catalina.connector.Connector.createResponse:()Lorg/apache/catalina/connector/Response;
astore 6
6: aload 6
aload 2
invokevirtual org.apache.catalina.connector.Response.setCoyoteResponse:(Lorg/apache/coyote/Response;)V
7: aload 5
aload 6
invokevirtual org.apache.catalina.connector.Request.setResponse:(Lorg/apache/catalina/connector/Response;)V
8: aload 6
aload 5
invokevirtual org.apache.catalina.connector.Response.setRequest:(Lorg/apache/catalina/connector/Request;)V
9: aload 1
iconst_1
aload 5
invokevirtual org.apache.coyote.Request.setNote:(ILjava/lang/Object;)V
10: aload 2
iconst_1
aload 6
invokevirtual org.apache.coyote.Response.setNote:(ILjava/lang/Object;)V
11: aload 1
invokevirtual org.apache.coyote.Request.getParameters:()Lorg/apache/tomcat/util/http/Parameters;
aload 0
getfield org.apache.catalina.connector.CoyoteAdapter.connector:Lorg/apache/catalina/connector/Connector;
invokevirtual org.apache.catalina.connector.Connector.getURICharset:()Ljava/nio/charset/Charset;
invokevirtual org.apache.tomcat.util.http.Parameters.setQueryStringCharset:(Ljava/nio/charset/Charset;)V
12: StackMap locals: org.apache.catalina.connector.Request org.apache.catalina.connector.Response
StackMap stack:
iconst_0
istore 7
start local 7 13: aload 5
getfield org.apache.catalina.connector.Request.mappingData:Lorg/apache/catalina/mapper/MappingData;
getfield org.apache.catalina.mapper.MappingData.context:Lorg/apache/catalina/Context;
astore 8
start local 8 14: aload 5
getfield org.apache.catalina.connector.Request.mappingData:Lorg/apache/catalina/mapper/MappingData;
getfield org.apache.catalina.mapper.MappingData.host:Lorg/apache/catalina/Host;
astore 9
start local 9 15: aload 8
ifnull 19
16: iconst_1
istore 7
17: aload 8
aload 5
aload 6
lload 3
iconst_1
invokeinterface org.apache.catalina.Context.logAccess:(Lorg/apache/catalina/connector/Request;Lorg/apache/catalina/connector/Response;JZ)V
18: goto 22
StackMap locals: int org.apache.catalina.Context org.apache.catalina.Host
StackMap stack:
19: aload 9
ifnull 22
20: iconst_1
istore 7
21: aload 9
aload 5
aload 6
lload 3
iconst_1
invokeinterface org.apache.catalina.Host.logAccess:(Lorg/apache/catalina/connector/Request;Lorg/apache/catalina/connector/Response;JZ)V
22: StackMap locals:
StackMap stack:
iload 7
ifne 36
23: aload 0
getfield org.apache.catalina.connector.CoyoteAdapter.connector:Lorg/apache/catalina/connector/Connector;
invokevirtual org.apache.catalina.connector.Connector.getService:()Lorg/apache/catalina/Service;
invokeinterface org.apache.catalina.Service.getContainer:()Lorg/apache/catalina/Engine;
aload 5
aload 6
lload 3
iconst_1
invokeinterface org.apache.catalina.Engine.logAccess:(Lorg/apache/catalina/connector/Request;Lorg/apache/catalina/connector/Response;JZ)V
end local 9 end local 8 end local 7 24: goto 36
StackMap locals: org.apache.catalina.connector.CoyoteAdapter org.apache.coyote.Request org.apache.coyote.Response long org.apache.catalina.connector.Request org.apache.catalina.connector.Response
StackMap stack: java.lang.Throwable
25: astore 7
start local 7 26: aload 7
invokestatic org.apache.tomcat.util.ExceptionUtils.handleThrowable:(Ljava/lang/Throwable;)V
27: getstatic org.apache.catalina.connector.CoyoteAdapter.log:Lorg/apache/juli/logging/Log;
getstatic org.apache.catalina.connector.CoyoteAdapter.sm:Lorg/apache/tomcat/util/res/StringManager;
ldc "coyoteAdapter.accesslogFail"
invokevirtual org.apache.tomcat.util.res.StringManager.getString:(Ljava/lang/String;)Ljava/lang/String;
aload 7
invokeinterface org.apache.juli.logging.Log.warn:(Ljava/lang/Object;Ljava/lang/Throwable;)V
end local 7 28: aload 0
aload 5
aload 6
invokevirtual org.apache.catalina.connector.CoyoteAdapter.updateWrapperErrorCount:(Lorg/apache/catalina/connector/Request;Lorg/apache/catalina/connector/Response;)V
29: aload 5
invokevirtual org.apache.catalina.connector.Request.recycle:()V
30: aload 6
invokevirtual org.apache.catalina.connector.Response.recycle:()V
goto 39
31: StackMap locals:
StackMap stack: java.lang.Throwable
astore 10
32: aload 0
aload 5
aload 6
invokevirtual org.apache.catalina.connector.CoyoteAdapter.updateWrapperErrorCount:(Lorg/apache/catalina/connector/Request;Lorg/apache/catalina/connector/Response;)V
33: aload 5
invokevirtual org.apache.catalina.connector.Request.recycle:()V
34: aload 6
invokevirtual org.apache.catalina.connector.Response.recycle:()V
35: aload 10
athrow
36: StackMap locals:
StackMap stack:
aload 0
aload 5
aload 6
invokevirtual org.apache.catalina.connector.CoyoteAdapter.updateWrapperErrorCount:(Lorg/apache/catalina/connector/Request;Lorg/apache/catalina/connector/Response;)V
37: aload 5
invokevirtual org.apache.catalina.connector.Request.recycle:()V
38: aload 6
invokevirtual org.apache.catalina.connector.Response.recycle:()V
39: StackMap locals:
StackMap stack:
return
end local 6 end local 5 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 40 0 this Lorg/apache/catalina/connector/CoyoteAdapter;
0 40 1 req Lorg/apache/coyote/Request;
0 40 2 res Lorg/apache/coyote/Response;
0 40 3 time J
1 40 5 request Lorg/apache/catalina/connector/Request;
2 40 6 response Lorg/apache/catalina/connector/Response;
13 24 7 logged Z
14 24 8 context Lorg/apache/catalina/Context;
15 24 9 host Lorg/apache/catalina/Host;
26 28 7 t Ljava/lang/Throwable;
Exception table:
from to target type
12 24 25 Class java.lang.Throwable
12 28 31 any
MethodParameters:
Name Flags
req
res
time
public void checkRecycled(org.apache.coyote.Request, org.apache.coyote.Response);
descriptor: (Lorg/apache/coyote/Request;Lorg/apache/coyote/Response;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=6, args_size=3
start local 0 start local 1 start local 2 0: aload 1
iconst_1
invokevirtual org.apache.coyote.Request.getNote:(I)Ljava/lang/Object;
checkcast org.apache.catalina.connector.Request
astore 3
start local 3 1: aload 2
iconst_1
invokevirtual org.apache.coyote.Response.getNote:(I)Ljava/lang/Object;
checkcast org.apache.catalina.connector.Response
astore 4
start local 4 2: aconst_null
astore 5
start local 5 3: aload 3
ifnull 6
aload 3
invokevirtual org.apache.catalina.connector.Request.getHost:()Lorg/apache/catalina/Host;
ifnull 6
4: ldc "coyoteAdapter.checkRecycled.request"
astore 5
5: goto 8
StackMap locals: org.apache.catalina.connector.Request org.apache.catalina.connector.Response java.lang.String
StackMap stack:
6: aload 4
ifnull 8
aload 4
invokevirtual org.apache.catalina.connector.Response.getContentWritten:()J
lconst_0
lcmp
ifeq 8
7: ldc "coyoteAdapter.checkRecycled.response"
astore 5
8: StackMap locals:
StackMap stack:
aload 5
ifnull 20
9: aload 0
aload 1
aload 2
lconst_0
invokevirtual org.apache.catalina.connector.CoyoteAdapter.log:(Lorg/apache/coyote/Request;Lorg/apache/coyote/Response;J)V
10: aload 0
getfield org.apache.catalina.connector.CoyoteAdapter.connector:Lorg/apache/catalina/connector/Connector;
invokevirtual org.apache.catalina.connector.Connector.getState:()Lorg/apache/catalina/LifecycleState;
invokevirtual org.apache.catalina.LifecycleState.isAvailable:()Z
ifeq 16
11: getstatic org.apache.catalina.connector.CoyoteAdapter.log:Lorg/apache/juli/logging/Log;
invokeinterface org.apache.juli.logging.Log.isInfoEnabled:()Z
ifeq 20
12: getstatic org.apache.catalina.connector.CoyoteAdapter.log:Lorg/apache/juli/logging/Log;
getstatic org.apache.catalina.connector.CoyoteAdapter.sm:Lorg/apache/tomcat/util/res/StringManager;
aload 5
invokevirtual org.apache.tomcat.util.res.StringManager.getString:(Ljava/lang/String;)Ljava/lang/String;
13: new org.apache.catalina.connector.CoyoteAdapter$RecycleRequiredException
dup
invokespecial org.apache.catalina.connector.CoyoteAdapter$RecycleRequiredException.<init>:()V
14: invokeinterface org.apache.juli.logging.Log.info:(Ljava/lang/Object;Ljava/lang/Throwable;)V
15: goto 20
16: StackMap locals:
StackMap stack:
getstatic org.apache.catalina.connector.CoyoteAdapter.log:Lorg/apache/juli/logging/Log;
invokeinterface org.apache.juli.logging.Log.isDebugEnabled:()Z
ifeq 20
17: getstatic org.apache.catalina.connector.CoyoteAdapter.log:Lorg/apache/juli/logging/Log;
getstatic org.apache.catalina.connector.CoyoteAdapter.sm:Lorg/apache/tomcat/util/res/StringManager;
aload 5
invokevirtual org.apache.tomcat.util.res.StringManager.getString:(Ljava/lang/String;)Ljava/lang/String;
18: new org.apache.catalina.connector.CoyoteAdapter$RecycleRequiredException
dup
invokespecial org.apache.catalina.connector.CoyoteAdapter$RecycleRequiredException.<init>:()V
19: invokeinterface org.apache.juli.logging.Log.debug:(Ljava/lang/Object;Ljava/lang/Throwable;)V
20: StackMap locals:
StackMap stack:
return
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 21 0 this Lorg/apache/catalina/connector/CoyoteAdapter;
0 21 1 req Lorg/apache/coyote/Request;
0 21 2 res Lorg/apache/coyote/Response;
1 21 3 request Lorg/apache/catalina/connector/Request;
2 21 4 response Lorg/apache/catalina/connector/Response;
3 21 5 messageKey Ljava/lang/String;
MethodParameters:
Name Flags
req
res
public java.lang.String getDomain();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.apache.catalina.connector.CoyoteAdapter.connector:Lorg/apache/catalina/connector/Connector;
invokevirtual org.apache.catalina.connector.Connector.getDomain:()Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/catalina/connector/CoyoteAdapter;
protected boolean postParseRequest(org.apache.coyote.Request, org.apache.catalina.connector.Request, org.apache.coyote.Response, org.apache.catalina.connector.Response);
descriptor: (Lorg/apache/coyote/Request;Lorg/apache/catalina/connector/Request;Lorg/apache/coyote/Response;Lorg/apache/catalina/connector/Response;)Z
flags: (0x0004) ACC_PROTECTED
Code:
stack=6, locals=21, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 1
invokevirtual org.apache.coyote.Request.scheme:()Lorg/apache/tomcat/util/buf/MessageBytes;
invokevirtual org.apache.tomcat.util.buf.MessageBytes.isNull:()Z
ifeq 4
1: aload 1
invokevirtual org.apache.coyote.Request.scheme:()Lorg/apache/tomcat/util/buf/MessageBytes;
aload 0
getfield org.apache.catalina.connector.CoyoteAdapter.connector:Lorg/apache/catalina/connector/Connector;
invokevirtual org.apache.catalina.connector.Connector.getScheme:()Ljava/lang/String;
invokevirtual org.apache.tomcat.util.buf.MessageBytes.setString:(Ljava/lang/String;)V
2: aload 2
aload 0
getfield org.apache.catalina.connector.CoyoteAdapter.connector:Lorg/apache/catalina/connector/Connector;
invokevirtual org.apache.catalina.connector.Connector.getSecure:()Z
invokevirtual org.apache.catalina.connector.Request.setSecure:(Z)V
3: goto 5
4: StackMap locals:
StackMap stack:
aload 2
aload 1
invokevirtual org.apache.coyote.Request.scheme:()Lorg/apache/tomcat/util/buf/MessageBytes;
ldc "https"
invokevirtual org.apache.tomcat.util.buf.MessageBytes.equals:(Ljava/lang/String;)Z
invokevirtual org.apache.catalina.connector.Request.setSecure:(Z)V
5: StackMap locals:
StackMap stack:
aload 0
getfield org.apache.catalina.connector.CoyoteAdapter.connector:Lorg/apache/catalina/connector/Connector;
invokevirtual org.apache.catalina.connector.Connector.getProxyName:()Ljava/lang/String;
astore 5
start local 5 6: aload 0
getfield org.apache.catalina.connector.CoyoteAdapter.connector:Lorg/apache/catalina/connector/Connector;
invokevirtual org.apache.catalina.connector.Connector.getProxyPort:()I
istore 6
start local 6 7: iload 6
ifeq 10
8: aload 1
iload 6
invokevirtual org.apache.coyote.Request.setServerPort:(I)V
9: goto 15
StackMap locals: java.lang.String int
StackMap stack:
10: aload 1
invokevirtual org.apache.coyote.Request.getServerPort:()I
iconst_m1
if_icmpne 15
11: aload 1
invokevirtual org.apache.coyote.Request.scheme:()Lorg/apache/tomcat/util/buf/MessageBytes;
ldc "https"
invokevirtual org.apache.tomcat.util.buf.MessageBytes.equals:(Ljava/lang/String;)Z
ifeq 14
12: aload 1
sipush 443
invokevirtual org.apache.coyote.Request.setServerPort:(I)V
13: goto 15
14: StackMap locals:
StackMap stack:
aload 1
bipush 80
invokevirtual org.apache.coyote.Request.setServerPort:(I)V
15: StackMap locals:
StackMap stack:
aload 5
ifnull 17
16: aload 1
invokevirtual org.apache.coyote.Request.serverName:()Lorg/apache/tomcat/util/buf/MessageBytes;
aload 5
invokevirtual org.apache.tomcat.util.buf.MessageBytes.setString:(Ljava/lang/String;)V
17: StackMap locals:
StackMap stack:
aload 1
invokevirtual org.apache.coyote.Request.requestURI:()Lorg/apache/tomcat/util/buf/MessageBytes;
astore 7
start local 7 18: aload 7
ldc "*"
invokevirtual org.apache.tomcat.util.buf.MessageBytes.equals:(Ljava/lang/String;)Z
ifeq 28
19: aload 1
invokevirtual org.apache.coyote.Request.method:()Lorg/apache/tomcat/util/buf/MessageBytes;
ldc "OPTIONS"
invokevirtual org.apache.tomcat.util.buf.MessageBytes.equalsIgnoreCase:(Ljava/lang/String;)Z
ifeq 27
20: new java.lang.StringBuilder
dup
invokespecial java.lang.StringBuilder.<init>:()V
astore 8
start local 8 21: aload 8
ldc "GET, HEAD, POST, PUT, DELETE, OPTIONS"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
22: aload 0
getfield org.apache.catalina.connector.CoyoteAdapter.connector:Lorg/apache/catalina/connector/Connector;
invokevirtual org.apache.catalina.connector.Connector.getAllowTrace:()Z
ifeq 24
23: aload 8
ldc ", TRACE"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
24: StackMap locals: org.apache.tomcat.util.buf.MessageBytes java.lang.StringBuilder
StackMap stack:
aload 3
ldc "Allow"
aload 8
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual org.apache.coyote.Response.setHeader:(Ljava/lang/String;Ljava/lang/String;)V
25: aload 0
getfield org.apache.catalina.connector.CoyoteAdapter.connector:Lorg/apache/catalina/connector/Connector;
invokevirtual org.apache.catalina.connector.Connector.getService:()Lorg/apache/catalina/Service;
invokeinterface org.apache.catalina.Service.getContainer:()Lorg/apache/catalina/Engine;
aload 2
aload 4
lconst_0
iconst_1
invokeinterface org.apache.catalina.Engine.logAccess:(Lorg/apache/catalina/connector/Request;Lorg/apache/catalina/connector/Response;JZ)V
26: iconst_0
ireturn
end local 8 27: StackMap locals:
StackMap stack:
aload 4
sipush 400
ldc "Invalid URI"
invokevirtual org.apache.catalina.connector.Response.sendError:(ILjava/lang/String;)V
28: StackMap locals:
StackMap stack:
aload 1
invokevirtual org.apache.coyote.Request.decodedURI:()Lorg/apache/tomcat/util/buf/MessageBytes;
astore 8
start local 8 29: aload 7
invokevirtual org.apache.tomcat.util.buf.MessageBytes.getType:()I
iconst_2
if_icmpne 41
30: aload 8
aload 7
invokevirtual org.apache.tomcat.util.buf.MessageBytes.duplicate:(Lorg/apache/tomcat/util/buf/MessageBytes;)V
31: aload 0
aload 1
aload 2
invokevirtual org.apache.catalina.connector.CoyoteAdapter.parsePathParameters:(Lorg/apache/coyote/Request;Lorg/apache/catalina/connector/Request;)V
32: aload 1
invokevirtual org.apache.coyote.Request.getURLDecoder:()Lorg/apache/tomcat/util/buf/UDecoder;
aload 8
invokevirtual org.apache.tomcat.util.buf.MessageBytes.getByteChunk:()Lorg/apache/tomcat/util/buf/ByteChunk;
aload 0
getfield org.apache.catalina.connector.CoyoteAdapter.connector:Lorg/apache/catalina/connector/Connector;
invokevirtual org.apache.catalina.connector.Connector.getEncodedSolidusHandlingInternal:()Lorg/apache/tomcat/util/buf/EncodedSolidusHandling;
invokevirtual org.apache.tomcat.util.buf.UDecoder.convert:(Lorg/apache/tomcat/util/buf/ByteChunk;Lorg/apache/tomcat/util/buf/EncodedSolidusHandling;)V
33: goto 36
StackMap locals: org.apache.catalina.connector.CoyoteAdapter org.apache.coyote.Request org.apache.catalina.connector.Request org.apache.coyote.Response org.apache.catalina.connector.Response java.lang.String int org.apache.tomcat.util.buf.MessageBytes org.apache.tomcat.util.buf.MessageBytes
StackMap stack: java.io.IOException
34: astore 9
start local 9 35: aload 4
sipush 400
new java.lang.StringBuilder
dup
ldc "Invalid URI: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 9
invokevirtual java.io.IOException.getMessage:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual org.apache.catalina.connector.Response.sendError:(ILjava/lang/String;)V
end local 9 36: StackMap locals:
StackMap stack:
aload 1
invokevirtual org.apache.coyote.Request.decodedURI:()Lorg/apache/tomcat/util/buf/MessageBytes;
aload 0
getfield org.apache.catalina.connector.CoyoteAdapter.connector:Lorg/apache/catalina/connector/Connector;
invokevirtual org.apache.catalina.connector.Connector.getAllowBackslash:()Z
invokestatic org.apache.catalina.connector.CoyoteAdapter.normalize:(Lorg/apache/tomcat/util/buf/MessageBytes;Z)Z
ifeq 39
37: aload 0
aload 8
aload 2
invokevirtual org.apache.catalina.connector.CoyoteAdapter.convertURI:(Lorg/apache/tomcat/util/buf/MessageBytes;Lorg/apache/catalina/connector/Request;)V
38: goto 46
39: StackMap locals:
StackMap stack:
aload 4
sipush 400
ldc "Invalid URI"
invokevirtual org.apache.catalina.connector.Response.sendError:(ILjava/lang/String;)V
40: goto 46
41: StackMap locals:
StackMap stack:
aload 8
invokevirtual org.apache.tomcat.util.buf.MessageBytes.toChars:()V
42: aload 8
invokevirtual org.apache.tomcat.util.buf.MessageBytes.getCharChunk:()Lorg/apache/tomcat/util/buf/CharChunk;
astore 9
start local 9 43: aload 9
bipush 59
invokevirtual org.apache.tomcat.util.buf.CharChunk.indexOf:(C)I
istore 10
start local 10 44: iload 10
ifle 46
45: aload 8
aload 9
invokevirtual org.apache.tomcat.util.buf.CharChunk.getBuffer:()[C
aload 9
invokevirtual org.apache.tomcat.util.buf.CharChunk.getStart:()I
iload 10
invokevirtual org.apache.tomcat.util.buf.MessageBytes.setChars:([CII)V
end local 10 end local 9 46: StackMap locals:
StackMap stack:
aload 0
getfield org.apache.catalina.connector.CoyoteAdapter.connector:Lorg/apache/catalina/connector/Connector;
invokevirtual org.apache.catalina.connector.Connector.getUseIPVHosts:()Z
ifeq 51
47: aload 1
invokevirtual org.apache.coyote.Request.localName:()Lorg/apache/tomcat/util/buf/MessageBytes;
astore 9
start local 9 48: aload 9
invokevirtual org.apache.tomcat.util.buf.MessageBytes.isNull:()Z
ifeq 52
49: aload 3
getstatic org.apache.coyote.ActionCode.REQ_LOCAL_NAME_ATTRIBUTE:Lorg/apache/coyote/ActionCode;
aconst_null
invokevirtual org.apache.coyote.Response.action:(Lorg/apache/coyote/ActionCode;Ljava/lang/Object;)V
50: goto 52
end local 9 51: StackMap locals:
StackMap stack:
aload 1
invokevirtual org.apache.coyote.Request.serverName:()Lorg/apache/tomcat/util/buf/MessageBytes;
astore 9
start local 9 52: StackMap locals: org.apache.tomcat.util.buf.MessageBytes
StackMap stack:
aconst_null
astore 10
start local 10 53: aconst_null
astore 11
start local 11 54: iconst_1
istore 12
start local 12 55: aload 4
invokevirtual org.apache.catalina.connector.Response.isError:()Z
ifeq 107
56: aload 8
invokevirtual org.apache.tomcat.util.buf.MessageBytes.recycle:()V
57: goto 107
58: StackMap locals: java.lang.String org.apache.catalina.Context int
StackMap stack:
aload 0
getfield org.apache.catalina.connector.CoyoteAdapter.connector:Lorg/apache/catalina/connector/Connector;
invokevirtual org.apache.catalina.connector.Connector.getService:()Lorg/apache/catalina/Service;
invokeinterface org.apache.catalina.Service.getMapper:()Lorg/apache/catalina/mapper/Mapper;
aload 9
aload 8
59: aload 10
aload 2
invokevirtual org.apache.catalina.connector.Request.getMappingData:()Lorg/apache/catalina/mapper/MappingData;
60: invokevirtual org.apache.catalina.mapper.Mapper.map:(Lorg/apache/tomcat/util/buf/MessageBytes;Lorg/apache/tomcat/util/buf/MessageBytes;Ljava/lang/String;Lorg/apache/catalina/mapper/MappingData;)V
61: aload 2
invokevirtual org.apache.catalina.connector.Request.getContext:()Lorg/apache/catalina/Context;
ifnonnull 63
62: iconst_1
ireturn
63: StackMap locals:
StackMap stack:
aload 2
invokevirtual org.apache.catalina.connector.Request.getServletContext:()Ljakarta/servlet/ServletContext;
invokeinterface jakarta.servlet.ServletContext.getEffectiveSessionTrackingModes:()Ljava/util/Set;
64: getstatic jakarta.servlet.SessionTrackingMode.URL:Ljakarta/servlet/SessionTrackingMode;
invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
ifeq 72
65: aload 2
66: aload 2
invokevirtual org.apache.catalina.connector.Request.getContext:()Lorg/apache/catalina/Context;
67: invokestatic org.apache.catalina.util.SessionConfig.getSessionUriParamName:(Lorg/apache/catalina/Context;)Ljava/lang/String;
68: invokevirtual org.apache.catalina.connector.Request.getPathParameter:(Ljava/lang/String;)Ljava/lang/String;
astore 13
start local 13 69: aload 13
ifnull 72
70: aload 2
aload 13
invokevirtual org.apache.catalina.connector.Request.setRequestedSessionId:(Ljava/lang/String;)V
71: aload 2
iconst_1
invokevirtual org.apache.catalina.connector.Request.setRequestedSessionURL:(Z)V
end local 13 72: StackMap locals:
StackMap stack:
aload 0
aload 2
invokevirtual org.apache.catalina.connector.CoyoteAdapter.parseSessionCookiesId:(Lorg/apache/catalina/connector/Request;)V
73: goto 79
StackMap locals:
StackMap stack: java.lang.IllegalArgumentException
74: pop
75: aload 4
invokevirtual org.apache.catalina.connector.Response.isError:()Z
ifne 78
76: aload 4
invokevirtual org.apache.catalina.connector.Response.setError:()Z
pop
77: aload 4
sipush 400
invokevirtual org.apache.catalina.connector.Response.sendError:(I)V
78: StackMap locals:
StackMap stack:
iconst_1
ireturn
79: StackMap locals:
StackMap stack:
aload 0
aload 2
invokevirtual org.apache.catalina.connector.CoyoteAdapter.parseSessionSslId:(Lorg/apache/catalina/connector/Request;)V
80: aload 2
invokevirtual org.apache.catalina.connector.Request.getRequestedSessionId:()Ljava/lang/String;
astore 13
start local 13 81: iconst_0
istore 12
82: aload 10
ifnull 83
aload 2
invokevirtual org.apache.catalina.connector.Request.getContext:()Lorg/apache/catalina/Context;
aload 11
if_acmpeq 101
83: StackMap locals: java.lang.String
StackMap stack:
aconst_null
astore 10
84: aconst_null
astore 11
85: aload 2
invokevirtual org.apache.catalina.connector.Request.getMappingData:()Lorg/apache/catalina/mapper/MappingData;
getfield org.apache.catalina.mapper.MappingData.contexts:[Lorg/apache/catalina/Context;
astore 14
start local 14 86: aload 14
ifnull 101
aload 13
ifnull 101
87: aload 14
arraylength
istore 15
start local 15 88: goto 100
89: StackMap locals: org.apache.catalina.Context[] int
StackMap stack:
aload 14
iload 15
iconst_1
isub
aaload
astore 16
start local 16 90: aload 16
invokeinterface org.apache.catalina.Context.getManager:()Lorg/apache/catalina/Manager;
aload 13
invokeinterface org.apache.catalina.Manager.findSession:(Ljava/lang/String;)Lorg/apache/catalina/Session;
ifnull 99
91: aload 16
aload 2
invokevirtual org.apache.catalina.connector.Request.getMappingData:()Lorg/apache/catalina/mapper/MappingData;
getfield org.apache.catalina.mapper.MappingData.context:Lorg/apache/catalina/Context;
invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
ifne 101
92: aload 16
invokeinterface org.apache.catalina.Context.getWebappVersion:()Ljava/lang/String;
astore 10
93: aload 16
astore 11
94: aload 2
invokevirtual org.apache.catalina.connector.Request.getMappingData:()Lorg/apache/catalina/mapper/MappingData;
invokevirtual org.apache.catalina.mapper.MappingData.recycle:()V
95: iconst_1
istore 12
96: aload 2
invokevirtual org.apache.catalina.connector.Request.recycleSessionInfo:()V
97: aload 2
iconst_1
invokevirtual org.apache.catalina.connector.Request.recycleCookieInfo:(Z)V
98: goto 101
end local 16 99: StackMap locals:
StackMap stack:
iinc 15 -1
StackMap locals:
StackMap stack:
100: iload 15
ifgt 89
end local 15 end local 14 101: StackMap locals:
StackMap stack:
iload 12
ifne 107
aload 2
invokevirtual org.apache.catalina.connector.Request.getContext:()Lorg/apache/catalina/Context;
invokeinterface org.apache.catalina.Context.getPaused:()Z
ifeq 107
102: ldc 1000
invokestatic java.lang.Thread.sleep:(J)V
103: goto 105
StackMap locals:
StackMap stack: java.lang.InterruptedException
104: pop
105: StackMap locals:
StackMap stack:
aload 2
invokevirtual org.apache.catalina.connector.Request.getMappingData:()Lorg/apache/catalina/mapper/MappingData;
invokevirtual org.apache.catalina.mapper.MappingData.recycle:()V
106: iconst_1
istore 12
end local 13 107: StackMap locals:
StackMap stack:
iload 12
ifne 58
108: aload 2
invokevirtual org.apache.catalina.connector.Request.getMappingData:()Lorg/apache/catalina/mapper/MappingData;
getfield org.apache.catalina.mapper.MappingData.redirectPath:Lorg/apache/tomcat/util/buf/MessageBytes;
astore 13
start local 13 109: aload 13
invokevirtual org.apache.tomcat.util.buf.MessageBytes.isNull:()Z
ifne 125
110: getstatic org.apache.catalina.util.URLEncoder.DEFAULT:Lorg/apache/catalina/util/URLEncoder;
111: aload 13
invokevirtual org.apache.tomcat.util.buf.MessageBytes.toString:()Ljava/lang/String;
getstatic java.nio.charset.StandardCharsets.UTF_8:Ljava/nio/charset/Charset;
112: invokevirtual org.apache.catalina.util.URLEncoder.encode:(Ljava/lang/String;Ljava/nio/charset/Charset;)Ljava/lang/String;
astore 14
start local 14 113: aload 2
invokevirtual org.apache.catalina.connector.Request.getQueryString:()Ljava/lang/String;
astore 15
start local 15 114: aload 2
invokevirtual org.apache.catalina.connector.Request.isRequestedSessionIdFromURL:()Z
ifeq 120
115: new java.lang.StringBuilder
dup
aload 14
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc ";"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
116: aload 2
invokevirtual org.apache.catalina.connector.Request.getContext:()Lorg/apache/catalina/Context;
117: invokestatic org.apache.catalina.util.SessionConfig.getSessionUriParamName:(Lorg/apache/catalina/Context;)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
118: ldc "="
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 2
invokevirtual org.apache.catalina.connector.Request.getRequestedSessionId:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
119: invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 14
120: StackMap locals: org.apache.tomcat.util.buf.MessageBytes java.lang.String java.lang.String
StackMap stack:
aload 15
ifnull 122
121: new java.lang.StringBuilder
dup
aload 14
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc "?"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 15
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 14
122: StackMap locals:
StackMap stack:
aload 4
aload 14
invokevirtual org.apache.catalina.connector.Response.sendRedirect:(Ljava/lang/String;)V
123: aload 2
invokevirtual org.apache.catalina.connector.Request.getContext:()Lorg/apache/catalina/Context;
aload 2
aload 4
lconst_0
iconst_1
invokeinterface org.apache.catalina.Context.logAccess:(Lorg/apache/catalina/connector/Request;Lorg/apache/catalina/connector/Response;JZ)V
124: iconst_0
ireturn
end local 15 end local 14 125: StackMap locals:
StackMap stack:
aload 0
getfield org.apache.catalina.connector.CoyoteAdapter.connector:Lorg/apache/catalina/connector/Connector;
invokevirtual org.apache.catalina.connector.Connector.getAllowTrace:()Z
ifne 146
126: aload 1
invokevirtual org.apache.coyote.Request.method:()Lorg/apache/tomcat/util/buf/MessageBytes;
ldc "TRACE"
invokevirtual org.apache.tomcat.util.buf.MessageBytes.equalsIgnoreCase:(Ljava/lang/String;)Z
ifeq 146
127: aload 2
invokevirtual org.apache.catalina.connector.Request.getWrapper:()Lorg/apache/catalina/Wrapper;
astore 14
start local 14 128: aconst_null
astore 15
start local 15 129: aload 14
ifnull 142
130: aload 14
invokeinterface org.apache.catalina.Wrapper.getServletMethods:()[Ljava/lang/String;
astore 16
start local 16 131: aload 16
ifnull 142
132: aload 16
dup
astore 20
arraylength
istore 19
iconst_0
istore 18
goto 141
StackMap locals: org.apache.catalina.connector.CoyoteAdapter org.apache.coyote.Request org.apache.catalina.connector.Request org.apache.coyote.Response org.apache.catalina.connector.Response java.lang.String int org.apache.tomcat.util.buf.MessageBytes org.apache.tomcat.util.buf.MessageBytes org.apache.tomcat.util.buf.MessageBytes java.lang.String org.apache.catalina.Context int org.apache.tomcat.util.buf.MessageBytes org.apache.catalina.Wrapper java.lang.String java.lang.String[] top int int java.lang.String[]
StackMap stack:
133: aload 20
iload 18
aaload
astore 17
start local 17 134: ldc "TRACE"
aload 17
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 136
135: goto 140
136: StackMap locals: org.apache.catalina.connector.CoyoteAdapter org.apache.coyote.Request org.apache.catalina.connector.Request org.apache.coyote.Response org.apache.catalina.connector.Response java.lang.String int org.apache.tomcat.util.buf.MessageBytes org.apache.tomcat.util.buf.MessageBytes org.apache.tomcat.util.buf.MessageBytes java.lang.String org.apache.catalina.Context int org.apache.tomcat.util.buf.MessageBytes org.apache.catalina.Wrapper java.lang.String java.lang.String[] java.lang.String int int java.lang.String[]
StackMap stack:
aload 15
ifnonnull 139
137: aload 17
astore 15
138: goto 140
139: StackMap locals:
StackMap stack:
new java.lang.StringBuilder
dup
aload 15
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc ", "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 17
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 15
end local 17 140: StackMap locals: org.apache.catalina.connector.CoyoteAdapter org.apache.coyote.Request org.apache.catalina.connector.Request org.apache.coyote.Response org.apache.catalina.connector.Response java.lang.String int org.apache.tomcat.util.buf.MessageBytes org.apache.tomcat.util.buf.MessageBytes org.apache.tomcat.util.buf.MessageBytes java.lang.String org.apache.catalina.Context int org.apache.tomcat.util.buf.MessageBytes org.apache.catalina.Wrapper java.lang.String java.lang.String[] top int int java.lang.String[]
StackMap stack:
iinc 18 1
StackMap locals:
StackMap stack:
141: iload 18
iload 19
if_icmplt 133
end local 16 142: StackMap locals: org.apache.catalina.connector.CoyoteAdapter org.apache.coyote.Request org.apache.catalina.connector.Request org.apache.coyote.Response org.apache.catalina.connector.Response java.lang.String int org.apache.tomcat.util.buf.MessageBytes org.apache.tomcat.util.buf.MessageBytes org.apache.tomcat.util.buf.MessageBytes java.lang.String org.apache.catalina.Context int org.apache.tomcat.util.buf.MessageBytes org.apache.catalina.Wrapper java.lang.String
StackMap stack:
aload 15
ifnull 144
143: aload 3
ldc "Allow"
aload 15
invokevirtual org.apache.coyote.Response.addHeader:(Ljava/lang/String;Ljava/lang/String;)V
144: StackMap locals:
StackMap stack:
aload 4
sipush 405
ldc "TRACE method is not allowed"
invokevirtual org.apache.catalina.connector.Response.sendError:(ILjava/lang/String;)V
145: iconst_1
ireturn
end local 15 end local 14 146: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 2
invokevirtual org.apache.catalina.connector.CoyoteAdapter.doConnectorAuthenticationAuthorization:(Lorg/apache/coyote/Request;Lorg/apache/catalina/connector/Request;)V
147: iconst_1
ireturn
end local 13 end local 12 end local 11 end local 10 end local 9 end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 148 0 this Lorg/apache/catalina/connector/CoyoteAdapter;
0 148 1 req Lorg/apache/coyote/Request;
0 148 2 request Lorg/apache/catalina/connector/Request;
0 148 3 res Lorg/apache/coyote/Response;
0 148 4 response Lorg/apache/catalina/connector/Response;
6 148 5 proxyName Ljava/lang/String;
7 148 6 proxyPort I
18 148 7 undecodedURI Lorg/apache/tomcat/util/buf/MessageBytes;
21 27 8 allow Ljava/lang/StringBuilder;
29 148 8 decodedURI Lorg/apache/tomcat/util/buf/MessageBytes;
35 36 9 ioe Ljava/io/IOException;
43 46 9 uriCC Lorg/apache/tomcat/util/buf/CharChunk;
44 46 10 semicolon I
48 51 9 serverName Lorg/apache/tomcat/util/buf/MessageBytes;
52 148 9 serverName Lorg/apache/tomcat/util/buf/MessageBytes;
53 148 10 version Ljava/lang/String;
54 148 11 versionContext Lorg/apache/catalina/Context;
55 148 12 mapRequired Z
69 72 13 sessionID Ljava/lang/String;
81 107 13 sessionID Ljava/lang/String;
86 101 14 contexts [Lorg/apache/catalina/Context;
88 101 15 i I
90 99 16 ctxt Lorg/apache/catalina/Context;
109 148 13 redirectPathMB Lorg/apache/tomcat/util/buf/MessageBytes;
113 125 14 redirectPath Ljava/lang/String;
114 125 15 query Ljava/lang/String;
128 146 14 wrapper Lorg/apache/catalina/Wrapper;
129 146 15 header Ljava/lang/String;
131 142 16 methods [Ljava/lang/String;
134 140 17 method Ljava/lang/String;
Exception table:
from to target type
32 33 34 Class java.io.IOException
72 73 74 Class java.lang.IllegalArgumentException
102 103 104 Class java.lang.InterruptedException
Exceptions:
throws java.io.IOException, jakarta.servlet.ServletException
MethodParameters:
Name Flags
req
request
res
response
private void doConnectorAuthenticationAuthorization(org.apache.coyote.Request, org.apache.catalina.connector.Request);
descriptor: (Lorg/apache/coyote/Request;Lorg/apache/catalina/connector/Request;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=7, locals=5, args_size=3
start local 0 start local 1 start local 2 0: aload 1
invokevirtual org.apache.coyote.Request.getRemoteUser:()Lorg/apache/tomcat/util/buf/MessageBytes;
invokevirtual org.apache.tomcat.util.buf.MessageBytes.toString:()Ljava/lang/String;
astore 3
start local 3 1: aload 3
ifnull 14
2: getstatic org.apache.catalina.connector.CoyoteAdapter.log:Lorg/apache/juli/logging/Log;
invokeinterface org.apache.juli.logging.Log.isDebugEnabled:()Z
ifeq 4
3: getstatic org.apache.catalina.connector.CoyoteAdapter.log:Lorg/apache/juli/logging/Log;
getstatic org.apache.catalina.connector.CoyoteAdapter.sm:Lorg/apache/tomcat/util/res/StringManager;
ldc "coyoteAdapter.authenticate"
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 3
aastore
invokevirtual org.apache.tomcat.util.res.StringManager.getString:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
invokeinterface org.apache.juli.logging.Log.debug:(Ljava/lang/Object;)V
4: StackMap locals: java.lang.String
StackMap stack:
aload 1
invokevirtual org.apache.coyote.Request.getRemoteUserNeedsAuthorization:()Z
ifeq 13
5: aload 2
invokevirtual org.apache.catalina.connector.Request.getContext:()Lorg/apache/catalina/Context;
invokeinterface org.apache.catalina.Context.getAuthenticator:()Lorg/apache/catalina/Authenticator;
astore 4
start local 4 6: aload 4
instanceof org.apache.catalina.authenticator.AuthenticatorBase
ifne 14
7: getstatic org.apache.catalina.connector.CoyoteAdapter.log:Lorg/apache/juli/logging/Log;
invokeinterface org.apache.juli.logging.Log.isDebugEnabled:()Z
ifeq 9
8: getstatic org.apache.catalina.connector.CoyoteAdapter.log:Lorg/apache/juli/logging/Log;
getstatic org.apache.catalina.connector.CoyoteAdapter.sm:Lorg/apache/tomcat/util/res/StringManager;
ldc "coyoteAdapter.authorize"
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 3
aastore
invokevirtual org.apache.tomcat.util.res.StringManager.getString:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
invokeinterface org.apache.juli.logging.Log.debug:(Ljava/lang/Object;)V
9: StackMap locals: org.apache.catalina.Authenticator
StackMap stack:
aload 2
10: aload 2
invokevirtual org.apache.catalina.connector.Request.getContext:()Lorg/apache/catalina/Context;
invokeinterface org.apache.catalina.Context.getRealm:()Lorg/apache/catalina/Realm;
aload 3
invokeinterface org.apache.catalina.Realm.authenticate:(Ljava/lang/String;)Ljava/security/Principal;
11: invokevirtual org.apache.catalina.connector.Request.setUserPrincipal:(Ljava/security/Principal;)V
end local 4 12: goto 14
13: StackMap locals:
StackMap stack:
aload 2
new org.apache.catalina.connector.CoyotePrincipal
dup
aload 3
invokespecial org.apache.catalina.connector.CoyotePrincipal.<init>:(Ljava/lang/String;)V
invokevirtual org.apache.catalina.connector.Request.setUserPrincipal:(Ljava/security/Principal;)V
14: StackMap locals:
StackMap stack:
aload 1
invokevirtual org.apache.coyote.Request.getAuthType:()Lorg/apache/tomcat/util/buf/MessageBytes;
invokevirtual org.apache.tomcat.util.buf.MessageBytes.toString:()Ljava/lang/String;
astore 4
start local 4 15: aload 4
ifnull 17
16: aload 2
aload 4
invokevirtual org.apache.catalina.connector.Request.setAuthType:(Ljava/lang/String;)V
17: StackMap locals: java.lang.String
StackMap stack:
return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 18 0 this Lorg/apache/catalina/connector/CoyoteAdapter;
0 18 1 req Lorg/apache/coyote/Request;
0 18 2 request Lorg/apache/catalina/connector/Request;
1 18 3 username Ljava/lang/String;
6 12 4 authenticator Lorg/apache/catalina/Authenticator;
15 18 4 authType Ljava/lang/String;
MethodParameters:
Name Flags
req
request
protected void parsePathParameters(org.apache.coyote.Request, org.apache.catalina.connector.Request);
descriptor: (Lorg/apache/coyote/Request;Lorg/apache/catalina/connector/Request;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=7, locals=14, args_size=3
start local 0 start local 1 start local 2 0: aload 1
invokevirtual org.apache.coyote.Request.decodedURI:()Lorg/apache/tomcat/util/buf/MessageBytes;
invokevirtual org.apache.tomcat.util.buf.MessageBytes.toBytes:()V
1: aload 1
invokevirtual org.apache.coyote.Request.decodedURI:()Lorg/apache/tomcat/util/buf/MessageBytes;
invokevirtual org.apache.tomcat.util.buf.MessageBytes.getByteChunk:()Lorg/apache/tomcat/util/buf/ByteChunk;
astore 3
start local 3 2: aload 3
bipush 59
iconst_0
invokevirtual org.apache.tomcat.util.buf.ByteChunk.indexOf:(CI)I
istore 4
start local 4 3: iload 4
iconst_m1
if_icmpne 5
4: return
5: StackMap locals: org.apache.tomcat.util.buf.ByteChunk int
StackMap stack:
aload 0
getfield org.apache.catalina.connector.CoyoteAdapter.connector:Lorg/apache/catalina/connector/Connector;
invokevirtual org.apache.catalina.connector.Connector.getURICharset:()Ljava/nio/charset/Charset;
astore 5
start local 5 6: getstatic org.apache.catalina.connector.CoyoteAdapter.log:Lorg/apache/juli/logging/Log;
invokeinterface org.apache.juli.logging.Log.isDebugEnabled:()Z
ifeq 70
7: getstatic org.apache.catalina.connector.CoyoteAdapter.log:Lorg/apache/juli/logging/Log;
getstatic org.apache.catalina.connector.CoyoteAdapter.sm:Lorg/apache/tomcat/util/res/StringManager;
ldc "coyoteAdapter.debug"
iconst_2
anewarray java.lang.Object
dup
iconst_0
ldc "uriBC"
aastore
dup
iconst_1
8: aload 3
invokevirtual org.apache.tomcat.util.buf.ByteChunk.toString:()Ljava/lang/String;
aastore
9: invokevirtual org.apache.tomcat.util.res.StringManager.getString:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
invokeinterface org.apache.juli.logging.Log.debug:(Ljava/lang/Object;)V
10: getstatic org.apache.catalina.connector.CoyoteAdapter.log:Lorg/apache/juli/logging/Log;
getstatic org.apache.catalina.connector.CoyoteAdapter.sm:Lorg/apache/tomcat/util/res/StringManager;
ldc "coyoteAdapter.debug"
iconst_2
anewarray java.lang.Object
dup
iconst_0
ldc "semicolon"
aastore
dup
iconst_1
11: iload 4
invokestatic java.lang.String.valueOf:(I)Ljava/lang/String;
aastore
12: invokevirtual org.apache.tomcat.util.res.StringManager.getString:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
invokeinterface org.apache.juli.logging.Log.debug:(Ljava/lang/Object;)V
13: getstatic org.apache.catalina.connector.CoyoteAdapter.log:Lorg/apache/juli/logging/Log;
getstatic org.apache.catalina.connector.CoyoteAdapter.sm:Lorg/apache/tomcat/util/res/StringManager;
ldc "coyoteAdapter.debug"
iconst_2
anewarray java.lang.Object
dup
iconst_0
ldc "enc"
aastore
dup
iconst_1
aload 5
invokevirtual java.nio.charset.Charset.name:()Ljava/lang/String;
aastore
invokevirtual org.apache.tomcat.util.res.StringManager.getString:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
invokeinterface org.apache.juli.logging.Log.debug:(Ljava/lang/Object;)V
14: goto 70
15: StackMap locals: java.nio.charset.Charset
StackMap stack:
aload 3
invokevirtual org.apache.tomcat.util.buf.ByteChunk.getStart:()I
istore 6
start local 6 16: aload 3
invokevirtual org.apache.tomcat.util.buf.ByteChunk.getEnd:()I
istore 7
start local 7 17: iload 4
iconst_1
iadd
istore 8
start local 8 18: aload 3
invokevirtual org.apache.tomcat.util.buf.ByteChunk.getBuffer:()[B
19: iload 6
iload 8
iadd
iload 7
20: iconst_2
newarray 8
dup
iconst_0
bipush 59
bastore
dup
iconst_1
bipush 47
bastore
21: invokestatic org.apache.tomcat.util.buf.ByteChunk.findBytes:([BII[B)I
istore 9
start local 9 22: aconst_null
astore 10
start local 10 23: iload 9
iflt 40
24: aload 5
ifnull 28
25: new java.lang.String
dup
aload 3
invokevirtual org.apache.tomcat.util.buf.ByteChunk.getBuffer:()[B
iload 6
iload 8
iadd
26: iload 9
iload 8
isub
aload 5
27: invokespecial java.lang.String.<init>:([BIILjava/nio/charset/Charset;)V
astore 10
28: StackMap locals: org.apache.catalina.connector.CoyoteAdapter org.apache.coyote.Request org.apache.catalina.connector.Request org.apache.tomcat.util.buf.ByteChunk int java.nio.charset.Charset int int int int java.lang.String
StackMap stack:
aload 3
invokevirtual org.apache.tomcat.util.buf.ByteChunk.getBuffer:()[B
astore 11
start local 11 29: iconst_0
istore 12
start local 12 30: goto 35
31: StackMap locals: byte[] int
StackMap stack:
aload 11
iload 6
iload 4
iadd
iload 12
iadd
32: aload 11
iload 6
iload 12
iadd
iload 9
iadd
baload
33: bastore
34: iinc 12 1
StackMap locals:
StackMap stack:
35: iload 12
iload 7
iload 6
isub
iload 9
isub
if_icmplt 31
end local 12 36: aload 3
aload 11
iload 6
37: iload 7
iload 6
isub
iload 9
isub
iload 4
iadd
38: invokevirtual org.apache.tomcat.util.buf.ByteChunk.setBytes:([BII)V
end local 11 39: goto 45
40: StackMap locals:
StackMap stack:
aload 5
ifnull 44
41: new java.lang.String
dup
aload 3
invokevirtual org.apache.tomcat.util.buf.ByteChunk.getBuffer:()[B
iload 6
iload 8
iadd
42: iload 7
iload 6
isub
iload 8
isub
aload 5
43: invokespecial java.lang.String.<init>:([BIILjava/nio/charset/Charset;)V
astore 10
44: StackMap locals:
StackMap stack:
aload 3
iload 6
iload 4
iadd
invokevirtual org.apache.tomcat.util.buf.ByteChunk.setEnd:(I)V
45: StackMap locals:
StackMap stack:
getstatic org.apache.catalina.connector.CoyoteAdapter.log:Lorg/apache/juli/logging/Log;
invokeinterface org.apache.juli.logging.Log.isDebugEnabled:()Z
ifeq 53
46: getstatic org.apache.catalina.connector.CoyoteAdapter.log:Lorg/apache/juli/logging/Log;
getstatic org.apache.catalina.connector.CoyoteAdapter.sm:Lorg/apache/tomcat/util/res/StringManager;
ldc "coyoteAdapter.debug"
iconst_2
anewarray java.lang.Object
dup
iconst_0
ldc "pathParamStart"
aastore
dup
iconst_1
47: iload 8
invokestatic java.lang.String.valueOf:(I)Ljava/lang/String;
aastore
48: invokevirtual org.apache.tomcat.util.res.StringManager.getString:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
invokeinterface org.apache.juli.logging.Log.debug:(Ljava/lang/Object;)V
49: getstatic org.apache.catalina.connector.CoyoteAdapter.log:Lorg/apache/juli/logging/Log;
getstatic org.apache.catalina.connector.CoyoteAdapter.sm:Lorg/apache/tomcat/util/res/StringManager;
ldc "coyoteAdapter.debug"
iconst_2
anewarray java.lang.Object
dup
iconst_0
ldc "pathParamEnd"
aastore
dup
iconst_1
50: iload 9
invokestatic java.lang.String.valueOf:(I)Ljava/lang/String;
aastore
51: invokevirtual org.apache.tomcat.util.res.StringManager.getString:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
invokeinterface org.apache.juli.logging.Log.debug:(Ljava/lang/Object;)V
52: getstatic org.apache.catalina.connector.CoyoteAdapter.log:Lorg/apache/juli/logging/Log;
getstatic org.apache.catalina.connector.CoyoteAdapter.sm:Lorg/apache/tomcat/util/res/StringManager;
ldc "coyoteAdapter.debug"
iconst_2
anewarray java.lang.Object
dup
iconst_0
ldc "pv"
aastore
dup
iconst_1
aload 10
aastore
invokevirtual org.apache.tomcat.util.res.StringManager.getString:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
invokeinterface org.apache.juli.logging.Log.debug:(Ljava/lang/Object;)V
53: StackMap locals:
StackMap stack:
aload 10
ifnull 69
54: aload 10
bipush 61
invokevirtual java.lang.String.indexOf:(I)I
istore 11
start local 11 55: iload 11
iconst_m1
if_icmple 69
56: aload 10
iconst_0
iload 11
invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
astore 12
start local 12 57: aload 10
iload 11
iconst_1
iadd
invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
astore 13
start local 13 58: aload 2
aload 12
aload 13
invokevirtual org.apache.catalina.connector.Request.addPathParameter:(Ljava/lang/String;Ljava/lang/String;)V
59: getstatic org.apache.catalina.connector.CoyoteAdapter.log:Lorg/apache/juli/logging/Log;
invokeinterface org.apache.juli.logging.Log.isDebugEnabled:()Z
ifeq 69
60: getstatic org.apache.catalina.connector.CoyoteAdapter.log:Lorg/apache/juli/logging/Log;
getstatic org.apache.catalina.connector.CoyoteAdapter.sm:Lorg/apache/tomcat/util/res/StringManager;
ldc "coyoteAdapter.debug"
iconst_2
anewarray java.lang.Object
dup
iconst_0
ldc "equals"
aastore
dup
iconst_1
61: iload 11
invokestatic java.lang.String.valueOf:(I)Ljava/lang/String;
aastore
62: invokevirtual org.apache.tomcat.util.res.StringManager.getString:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
invokeinterface org.apache.juli.logging.Log.debug:(Ljava/lang/Object;)V
63: getstatic org.apache.catalina.connector.CoyoteAdapter.log:Lorg/apache/juli/logging/Log;
getstatic org.apache.catalina.connector.CoyoteAdapter.sm:Lorg/apache/tomcat/util/res/StringManager;
ldc "coyoteAdapter.debug"
iconst_2
anewarray java.lang.Object
dup
iconst_0
ldc "name"
aastore
dup
iconst_1
64: aload 12
aastore
65: invokevirtual org.apache.tomcat.util.res.StringManager.getString:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
invokeinterface org.apache.juli.logging.Log.debug:(Ljava/lang/Object;)V
66: getstatic org.apache.catalina.connector.CoyoteAdapter.log:Lorg/apache/juli/logging/Log;
getstatic org.apache.catalina.connector.CoyoteAdapter.sm:Lorg/apache/tomcat/util/res/StringManager;
ldc "coyoteAdapter.debug"
iconst_2
anewarray java.lang.Object
dup
iconst_0
ldc "value"
aastore
dup
iconst_1
67: aload 13
aastore
68: invokevirtual org.apache.tomcat.util.res.StringManager.getString:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
invokeinterface org.apache.juli.logging.Log.debug:(Ljava/lang/Object;)V
end local 13 end local 12 end local 11 69: StackMap locals:
StackMap stack:
aload 3
bipush 59
iload 4
invokevirtual org.apache.tomcat.util.buf.ByteChunk.indexOf:(CI)I
istore 4
end local 10 end local 9 end local 8 end local 7 end local 6 70: StackMap locals: org.apache.catalina.connector.CoyoteAdapter org.apache.coyote.Request org.apache.catalina.connector.Request org.apache.tomcat.util.buf.ByteChunk int java.nio.charset.Charset
StackMap stack:
iload 4
iconst_m1
if_icmpgt 15
71: return
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 72 0 this Lorg/apache/catalina/connector/CoyoteAdapter;
0 72 1 req Lorg/apache/coyote/Request;
0 72 2 request Lorg/apache/catalina/connector/Request;
2 72 3 uriBC Lorg/apache/tomcat/util/buf/ByteChunk;
3 72 4 semicolon I
6 72 5 charset Ljava/nio/charset/Charset;
16 70 6 start I
17 70 7 end I
18 70 8 pathParamStart I
22 70 9 pathParamEnd I
23 70 10 pv Ljava/lang/String;
29 39 11 buf [B
30 36 12 i I
55 69 11 equals I
57 69 12 name Ljava/lang/String;
58 69 13 value Ljava/lang/String;
MethodParameters:
Name Flags
req
request
protected void parseSessionSslId(org.apache.catalina.connector.Request);
descriptor: (Lorg/apache/catalina/connector/Request;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 1
invokevirtual org.apache.catalina.connector.Request.getRequestedSessionId:()Ljava/lang/String;
ifnonnull 10
1: getstatic org.apache.catalina.connector.CoyoteAdapter.SSL_ONLY:Ljava/util/EnumSet;
aload 1
invokevirtual org.apache.catalina.connector.Request.getServletContext:()Ljakarta/servlet/ServletContext;
2: invokeinterface jakarta.servlet.ServletContext.getEffectiveSessionTrackingModes:()Ljava/util/Set;
3: invokevirtual java.util.EnumSet.equals:(Ljava/lang/Object;)Z
4: ifeq 10
5: aload 1
getfield org.apache.catalina.connector.Request.connector:Lorg/apache/catalina/connector/Connector;
getfield org.apache.catalina.connector.Connector.secure:Z
ifeq 10
6: aload 1
ldc "jakarta.servlet.request.ssl_session_id"
invokevirtual org.apache.catalina.connector.Request.getAttribute:(Ljava/lang/String;)Ljava/lang/Object;
checkcast java.lang.String
astore 2
start local 2 7: aload 2
ifnull 10
8: aload 1
aload 2
invokevirtual org.apache.catalina.connector.Request.setRequestedSessionId:(Ljava/lang/String;)V
9: aload 1
iconst_1
invokevirtual org.apache.catalina.connector.Request.setRequestedSessionSSL:(Z)V
end local 2 10: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lorg/apache/catalina/connector/CoyoteAdapter;
0 11 1 request Lorg/apache/catalina/connector/Request;
7 10 2 sessionId Ljava/lang/String;
MethodParameters:
Name Flags
request
protected void parseSessionCookiesId(org.apache.catalina.connector.Request);
descriptor: (Lorg/apache/catalina/connector/Request;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=4, locals=8, args_size=2
start local 0 start local 1 0: aload 1
invokevirtual org.apache.catalina.connector.Request.getMappingData:()Lorg/apache/catalina/mapper/MappingData;
getfield org.apache.catalina.mapper.MappingData.context:Lorg/apache/catalina/Context;
astore 2
start local 2 1: aload 2
ifnull 7
aload 2
invokeinterface org.apache.catalina.Context.getServletContext:()Ljakarta/servlet/ServletContext;
2: invokeinterface jakarta.servlet.ServletContext.getEffectiveSessionTrackingModes:()Ljava/util/Set;
3: getstatic jakarta.servlet.SessionTrackingMode.COOKIE:Ljakarta/servlet/SessionTrackingMode;
4: invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
5: ifne 7
6: return
7: StackMap locals: org.apache.catalina.Context
StackMap stack:
aload 1
invokevirtual org.apache.catalina.connector.Request.getServerCookies:()Lorg/apache/tomcat/util/http/ServerCookies;
astore 3
start local 3 8: aload 3
invokevirtual org.apache.tomcat.util.http.ServerCookies.getCookieCount:()I
istore 4
start local 4 9: iload 4
ifgt 11
10: return
11: StackMap locals: org.apache.tomcat.util.http.ServerCookies int
StackMap stack:
aload 2
invokestatic org.apache.catalina.util.SessionConfig.getSessionCookieName:(Lorg/apache/catalina/Context;)Ljava/lang/String;
astore 5
start local 5 12: iconst_0
istore 6
start local 6 13: goto 34
14: StackMap locals: java.lang.String int
StackMap stack:
aload 3
iload 6
invokevirtual org.apache.tomcat.util.http.ServerCookies.getCookie:(I)Lorg/apache/tomcat/util/http/ServerCookie;
astore 7
start local 7 15: aload 7
invokevirtual org.apache.tomcat.util.http.ServerCookie.getName:()Lorg/apache/tomcat/util/buf/MessageBytes;
aload 5
invokevirtual org.apache.tomcat.util.buf.MessageBytes.equals:(Ljava/lang/String;)Z
ifeq 33
16: aload 1
invokevirtual org.apache.catalina.connector.Request.isRequestedSessionIdFromCookie:()Z
ifne 28
17: aload 0
aload 7
invokevirtual org.apache.tomcat.util.http.ServerCookie.getValue:()Lorg/apache/tomcat/util/buf/MessageBytes;
invokevirtual org.apache.catalina.connector.CoyoteAdapter.convertMB:(Lorg/apache/tomcat/util/buf/MessageBytes;)V
18: aload 1
19: aload 7
invokevirtual org.apache.tomcat.util.http.ServerCookie.getValue:()Lorg/apache/tomcat/util/buf/MessageBytes;
invokevirtual org.apache.tomcat.util.buf.MessageBytes.toString:()Ljava/lang/String;
20: invokevirtual org.apache.catalina.connector.Request.setRequestedSessionId:(Ljava/lang/String;)V
21: aload 1
iconst_1
invokevirtual org.apache.catalina.connector.Request.setRequestedSessionCookie:(Z)V
22: aload 1
iconst_0
invokevirtual org.apache.catalina.connector.Request.setRequestedSessionURL:(Z)V
23: getstatic org.apache.catalina.connector.CoyoteAdapter.log:Lorg/apache/juli/logging/Log;
invokeinterface org.apache.juli.logging.Log.isDebugEnabled:()Z
ifeq 33
24: getstatic org.apache.catalina.connector.CoyoteAdapter.log:Lorg/apache/juli/logging/Log;
new java.lang.StringBuilder
dup
ldc " Requested cookie session id is "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
25: aload 1
invokevirtual org.apache.catalina.connector.Request.getRequestedSessionId:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
26: invokeinterface org.apache.juli.logging.Log.debug:(Ljava/lang/Object;)V
27: goto 33
28: StackMap locals: org.apache.tomcat.util.http.ServerCookie
StackMap stack:
aload 1
invokevirtual org.apache.catalina.connector.Request.isRequestedSessionIdValid:()Z
ifne 33
29: aload 0
aload 7
invokevirtual org.apache.tomcat.util.http.ServerCookie.getValue:()Lorg/apache/tomcat/util/buf/MessageBytes;
invokevirtual org.apache.catalina.connector.CoyoteAdapter.convertMB:(Lorg/apache/tomcat/util/buf/MessageBytes;)V
30: aload 1
31: aload 7
invokevirtual org.apache.tomcat.util.http.ServerCookie.getValue:()Lorg/apache/tomcat/util/buf/MessageBytes;
invokevirtual org.apache.tomcat.util.buf.MessageBytes.toString:()Ljava/lang/String;
32: invokevirtual org.apache.catalina.connector.Request.setRequestedSessionId:(Ljava/lang/String;)V
end local 7 33: StackMap locals:
StackMap stack:
iinc 6 1
StackMap locals:
StackMap stack:
34: iload 6
iload 4
if_icmplt 14
end local 6 35: return
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 36 0 this Lorg/apache/catalina/connector/CoyoteAdapter;
0 36 1 request Lorg/apache/catalina/connector/Request;
1 36 2 context Lorg/apache/catalina/Context;
8 36 3 serverCookies Lorg/apache/tomcat/util/http/ServerCookies;
9 36 4 count I
12 36 5 sessionCookieName Ljava/lang/String;
13 35 6 i I
15 33 7 scookie Lorg/apache/tomcat/util/http/ServerCookie;
MethodParameters:
Name Flags
request
protected void convertURI(org.apache.tomcat.util.buf.MessageBytes, org.apache.catalina.connector.Request);
descriptor: (Lorg/apache/tomcat/util/buf/MessageBytes;Lorg/apache/catalina/connector/Request;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=4, locals=8, args_size=3
start local 0 start local 1 start local 2 0: aload 1
invokevirtual org.apache.tomcat.util.buf.MessageBytes.getByteChunk:()Lorg/apache/tomcat/util/buf/ByteChunk;
astore 3
start local 3 1: aload 3
invokevirtual org.apache.tomcat.util.buf.ByteChunk.getLength:()I
istore 4
start local 4 2: aload 1
invokevirtual org.apache.tomcat.util.buf.MessageBytes.getCharChunk:()Lorg/apache/tomcat/util/buf/CharChunk;
astore 5
start local 5 3: aload 5
iload 4
iconst_m1
invokevirtual org.apache.tomcat.util.buf.CharChunk.allocate:(II)V
4: aload 0
getfield org.apache.catalina.connector.CoyoteAdapter.connector:Lorg/apache/catalina/connector/Connector;
invokevirtual org.apache.catalina.connector.Connector.getURICharset:()Ljava/nio/charset/Charset;
astore 6
start local 6 5: aload 2
invokevirtual org.apache.catalina.connector.Request.getURIConverter:()Lorg/apache/tomcat/util/buf/B2CConverter;
astore 7
start local 7 6: aload 7
ifnonnull 10
7: new org.apache.tomcat.util.buf.B2CConverter
dup
aload 6
iconst_1
invokespecial org.apache.tomcat.util.buf.B2CConverter.<init>:(Ljava/nio/charset/Charset;Z)V
astore 7
8: aload 2
aload 7
invokevirtual org.apache.catalina.connector.Request.setURIConverter:(Lorg/apache/tomcat/util/buf/B2CConverter;)V
9: goto 11
10: StackMap locals: org.apache.catalina.connector.CoyoteAdapter org.apache.tomcat.util.buf.MessageBytes org.apache.catalina.connector.Request org.apache.tomcat.util.buf.ByteChunk int org.apache.tomcat.util.buf.CharChunk java.nio.charset.Charset org.apache.tomcat.util.buf.B2CConverter
StackMap stack:
aload 7
invokevirtual org.apache.tomcat.util.buf.B2CConverter.recycle:()V
11: StackMap locals:
StackMap stack:
aload 7
aload 3
aload 5
iconst_1
invokevirtual org.apache.tomcat.util.buf.B2CConverter.convert:(Lorg/apache/tomcat/util/buf/ByteChunk;Lorg/apache/tomcat/util/buf/CharChunk;Z)V
12: aload 1
aload 5
invokevirtual org.apache.tomcat.util.buf.CharChunk.getBuffer:()[C
aload 5
invokevirtual org.apache.tomcat.util.buf.CharChunk.getStart:()I
aload 5
invokevirtual org.apache.tomcat.util.buf.CharChunk.getLength:()I
invokevirtual org.apache.tomcat.util.buf.MessageBytes.setChars:([CII)V
13: goto 16
StackMap locals:
StackMap stack: java.io.IOException
14: pop
15: aload 2
invokevirtual org.apache.catalina.connector.Request.getResponse:()Lorg/apache/catalina/connector/Response;
sipush 400
invokevirtual org.apache.catalina.connector.Response.sendError:(I)V
16: StackMap locals:
StackMap stack:
return
end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 17 0 this Lorg/apache/catalina/connector/CoyoteAdapter;
0 17 1 uri Lorg/apache/tomcat/util/buf/MessageBytes;
0 17 2 request Lorg/apache/catalina/connector/Request;
1 17 3 bc Lorg/apache/tomcat/util/buf/ByteChunk;
2 17 4 length I
3 17 5 cc Lorg/apache/tomcat/util/buf/CharChunk;
5 17 6 charset Ljava/nio/charset/Charset;
6 17 7 conv Lorg/apache/tomcat/util/buf/B2CConverter;
Exception table:
from to target type
11 13 14 Class java.io.IOException
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
uri
request
protected void convertMB(org.apache.tomcat.util.buf.MessageBytes);
descriptor: (Lorg/apache/tomcat/util/buf/MessageBytes;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=5, locals=9, args_size=2
start local 0 start local 1 0: aload 1
invokevirtual org.apache.tomcat.util.buf.MessageBytes.getType:()I
iconst_2
if_icmpeq 2
1: return
2: StackMap locals:
StackMap stack:
aload 1
invokevirtual org.apache.tomcat.util.buf.MessageBytes.getByteChunk:()Lorg/apache/tomcat/util/buf/ByteChunk;
astore 2
start local 2 3: aload 1
invokevirtual org.apache.tomcat.util.buf.MessageBytes.getCharChunk:()Lorg/apache/tomcat/util/buf/CharChunk;
astore 3
start local 3 4: aload 2
invokevirtual org.apache.tomcat.util.buf.ByteChunk.getLength:()I
istore 4
start local 4 5: aload 3
iload 4
iconst_m1
invokevirtual org.apache.tomcat.util.buf.CharChunk.allocate:(II)V
6: aload 2
invokevirtual org.apache.tomcat.util.buf.ByteChunk.getBuffer:()[B
astore 5
start local 5 7: aload 3
invokevirtual org.apache.tomcat.util.buf.CharChunk.getBuffer:()[C
astore 6
start local 6 8: aload 2
invokevirtual org.apache.tomcat.util.buf.ByteChunk.getStart:()I
istore 7
start local 7 9: iconst_0
istore 8
start local 8 10: goto 13
11: StackMap locals: org.apache.catalina.connector.CoyoteAdapter org.apache.tomcat.util.buf.MessageBytes org.apache.tomcat.util.buf.ByteChunk org.apache.tomcat.util.buf.CharChunk int byte[] char[] int int
StackMap stack:
aload 6
iload 8
aload 5
iload 8
iload 7
iadd
baload
sipush 255
iand
i2c
castore
12: iinc 8 1
StackMap locals:
StackMap stack:
13: iload 8
iload 4
if_icmplt 11
end local 8 14: aload 1
aload 6
iconst_0
iload 4
invokevirtual org.apache.tomcat.util.buf.MessageBytes.setChars:([CII)V
15: return
end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 16 0 this Lorg/apache/catalina/connector/CoyoteAdapter;
0 16 1 mb Lorg/apache/tomcat/util/buf/MessageBytes;
3 16 2 bc Lorg/apache/tomcat/util/buf/ByteChunk;
4 16 3 cc Lorg/apache/tomcat/util/buf/CharChunk;
5 16 4 length I
7 16 5 bbuf [B
8 16 6 cbuf [C
9 16 7 start I
10 14 8 i I
MethodParameters:
Name Flags
mb
public static boolean normalize(org.apache.tomcat.util.buf.MessageBytes, boolean);
descriptor: (Lorg/apache/tomcat/util/buf/MessageBytes;Z)Z
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=9, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual org.apache.tomcat.util.buf.MessageBytes.getByteChunk:()Lorg/apache/tomcat/util/buf/ByteChunk;
astore 2
start local 2 1: aload 2
invokevirtual org.apache.tomcat.util.buf.ByteChunk.getBytes:()[B
astore 3
start local 3 2: aload 2
invokevirtual org.apache.tomcat.util.buf.ByteChunk.getStart:()I
istore 4
start local 4 3: aload 2
invokevirtual org.apache.tomcat.util.buf.ByteChunk.getEnd:()I
istore 5
start local 5 4: iload 4
iload 5
if_icmpne 6
5: iconst_0
ireturn
6: StackMap locals: org.apache.tomcat.util.buf.MessageBytes int org.apache.tomcat.util.buf.ByteChunk byte[] int int
StackMap stack:
iconst_0
istore 6
start local 6 7: iconst_0
istore 7
start local 7 8: aload 3
iload 4
baload
bipush 47
if_icmpeq 10
aload 3
iload 4
baload
bipush 92
if_icmpeq 10
9: iconst_0
ireturn
10: StackMap locals: int int
StackMap stack:
iload 4
istore 6
goto 19
11: StackMap locals:
StackMap stack:
aload 3
iload 6
baload
bipush 92
if_icmpne 16
12: iload 1
ifeq 15
13: aload 3
iload 6
bipush 47
bastore
14: goto 18
15: StackMap locals:
StackMap stack:
iconst_0
ireturn
16: StackMap locals:
StackMap stack:
aload 3
iload 6
baload
ifne 18
17: iconst_0
ireturn
18: StackMap locals:
StackMap stack:
iinc 6 1
StackMap locals:
StackMap stack:
19: iload 6
iload 5
if_icmplt 11
20: iload 4
istore 6
goto 27
21: StackMap locals:
StackMap stack:
aload 3
iload 6
baload
bipush 47
if_icmpne 26
22: goto 25
23: StackMap locals:
StackMap stack:
aload 3
iload 6
iload 6
iconst_1
iadd
iload 5
iload 6
isub
iconst_1
isub
invokestatic org.apache.catalina.connector.CoyoteAdapter.copyBytes:([BIII)V
24: iinc 5 -1
25: StackMap locals:
StackMap stack:
iload 6
iconst_1
iadd
iload 5
if_icmpge 26
aload 3
iload 6
iconst_1
iadd
baload
bipush 47
if_icmpeq 23
26: StackMap locals:
StackMap stack:
iinc 6 1
StackMap locals:
StackMap stack:
27: iload 6
iload 5
iconst_1
isub
if_icmplt 21
28: iload 5
iload 4
isub
iconst_2
if_icmplt 34
aload 3
iload 5
iconst_1
isub
baload
bipush 46
if_icmpne 34
29: aload 3
iload 5
iconst_2
isub
baload
bipush 47
if_icmpeq 32
30: aload 3
iload 5
iconst_2
isub
baload
bipush 46
if_icmpne 34
31: aload 3
iload 5
iconst_3
isub
baload
bipush 47
if_icmpne 34
32: StackMap locals:
StackMap stack:
aload 3
iload 5
bipush 47
bastore
33: iinc 5 1
34: StackMap locals:
StackMap stack:
aload 2
iload 5
invokevirtual org.apache.tomcat.util.buf.ByteChunk.setEnd:(I)V
35: iconst_0
istore 7
36: StackMap locals:
StackMap stack:
aload 2
ldc "/./"
iconst_0
iconst_3
iload 7
invokevirtual org.apache.tomcat.util.buf.ByteChunk.indexOf:(Ljava/lang/String;III)I
istore 7
37: iload 7
ifge 39
38: goto 45
39: StackMap locals:
StackMap stack:
aload 3
iload 4
iload 7
iadd
iload 4
iload 7
iadd
iconst_2
iadd
40: iload 5
iload 4
isub
iload 7
isub
iconst_2
isub
41: invokestatic org.apache.catalina.connector.CoyoteAdapter.copyBytes:([BIII)V
42: iinc 5 -2
43: aload 2
iload 5
invokevirtual org.apache.tomcat.util.buf.ByteChunk.setEnd:(I)V
44: goto 36
45: StackMap locals:
StackMap stack:
iconst_0
istore 7
46: StackMap locals:
StackMap stack:
aload 2
ldc "/../"
iconst_0
iconst_4
iload 7
invokevirtual org.apache.tomcat.util.buf.ByteChunk.indexOf:(Ljava/lang/String;III)I
istore 7
47: iload 7
ifge 49
48: goto 64
49: StackMap locals:
StackMap stack:
iload 7
ifne 51
50: iconst_0
ireturn
51: StackMap locals:
StackMap stack:
iconst_m1
istore 8
start local 8 52: iload 4
iload 7
iadd
iconst_1
isub
istore 6
goto 56
53: StackMap locals: int
StackMap stack:
aload 3
iload 6
baload
bipush 47
if_icmpne 55
54: iload 6
istore 8
55: StackMap locals:
StackMap stack:
iinc 6 -1
StackMap locals:
StackMap stack:
56: iload 6
iflt 57
iload 8
iflt 53
57: StackMap locals:
StackMap stack:
aload 3
iload 4
iload 8
iadd
iload 4
iload 7
iadd
iconst_3
iadd
58: iload 5
iload 4
isub
iload 7
isub
iconst_3
isub
59: invokestatic org.apache.catalina.connector.CoyoteAdapter.copyBytes:([BIII)V
60: iload 5
iload 8
iadd
iload 7
isub
iconst_3
isub
istore 5
61: aload 2
iload 5
invokevirtual org.apache.tomcat.util.buf.ByteChunk.setEnd:(I)V
62: iload 8
istore 7
end local 8 63: goto 46
64: StackMap locals:
StackMap stack:
iconst_1
ireturn
end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 65 0 uriMB Lorg/apache/tomcat/util/buf/MessageBytes;
0 65 1 allowBackslash Z
1 65 2 uriBC Lorg/apache/tomcat/util/buf/ByteChunk;
2 65 3 b [B
3 65 4 start I
4 65 5 end I
7 65 6 pos I
8 65 7 index I
52 63 8 index2 I
MethodParameters:
Name Flags
uriMB
allowBackslash
protected static void copyBytes(byte[], int, int, int);
descriptor: ([BIII)V
flags: (0x000c) ACC_PROTECTED, ACC_STATIC
Code:
stack=5, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
iload 2
aload 0
iload 1
iload 3
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
1: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 b [B
0 2 1 dest I
0 2 2 src I
0 2 3 len I
MethodParameters:
Name Flags
b
dest
src
len
private static java.lang.String lambda$0();
descriptor: ()Ljava/lang/String;
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=1, locals=0, args_size=0
0: invokestatic java.lang.Thread.currentThread:()Ljava/lang/Thread;
invokevirtual java.lang.Thread.getName:()Ljava/lang/String;
areturn
LocalVariableTable:
Start End Slot Name Signature
}
SourceFile: "CoyoteAdapter.java"
NestMembers:
org.apache.catalina.connector.CoyoteAdapter$RecycleRequiredException
InnerClasses:
public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
private RecycleRequiredException = org.apache.catalina.connector.CoyoteAdapter$RecycleRequiredException of org.apache.catalina.connector.CoyoteAdapter