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<javax.servlet.SessionTrackingMode> SSL_ONLY;
descriptor: Ljava/util/EnumSet;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
Signature: Ljava/util/EnumSet<Ljavax/servlet/SessionTrackingMode;>;
public static final int ADAPTER_NOTES;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 1
protected static final boolean ALLOW_BACKSLASH;
descriptor: Z
flags: (0x001c) ACC_PROTECTED, ACC_STATIC, ACC_FINAL
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/4.0 JSP/2.3 ("
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 javax.servlet.SessionTrackingMode.SSL:Ljavax/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: ldc "org.apache.catalina.connector.CoyoteAdapter.ALLOW_BACKSLASH"
ldc "false"
invokestatic java.lang.System.getProperty:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
invokestatic java.lang.Boolean.parseBoolean:(Ljava/lang/String;)Z
9: putstatic org.apache.catalina.connector.CoyoteAdapter.ALLOW_BACKSLASH:Z
10: new org.apache.catalina.connector.CoyoteAdapter$1
dup
invokespecial org.apache.catalina.connector.CoyoteAdapter$1.<init>:()V
11: putstatic org.apache.catalina.connector.CoyoteAdapter.THREAD_NAME:Ljava/lang/ThreadLocal;
12: 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 "javax.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 "javax.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:()Ljavax/servlet/ReadListener;
ifnull 21
20: aload 1
invokevirtual org.apache.coyote.Request.getReadListener:()Ljavax/servlet/ReadListener;
aload 8
invokeinterface javax.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:()Ljavax/servlet/WriteListener;
ifnull 27
22: aload 2
invokevirtual org.apache.coyote.Response.getWriteListener:()Ljavax/servlet/WriteListener;
aload 8
invokeinterface javax.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:()Ljavax/servlet/WriteListener;
astore 8
start local 8 32: aload 1
invokevirtual org.apache.coyote.Request.getReadListener:()Ljavax/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 javax.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 javax.servlet.WriteListener javax.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 javax.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 javax.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 javax.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 javax.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 "javax.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.getStartTime:()J
ldc -1
lcmp
ifeq 98
97: invokestatic java.lang.System.currentTimeMillis:()J
aload 1
invokevirtual org.apache.coyote.Request.getStartTime:()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.getStartTime:()J
ldc -1
lcmp
ifeq 118
117: invokestatic java.lang.System.currentTimeMillis:()J
aload 1
invokevirtual org.apache.coyote.Request.getStartTime:()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.getStartTime:()J
ldc -1
lcmp
ifeq 135
134: invokestatic java.lang.System.currentTimeMillis:()J
aload 1
invokevirtual org.apache.coyote.Request.getStartTime:()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.getStartTime:()J
ldc -1
lcmp
ifeq 152
151: invokestatic java.lang.System.currentTimeMillis:()J
aload 1
invokevirtual org.apache.coyote.Request.getStartTime:()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 Ljavax/servlet/WriteListener;
33 68 9 readListener Ljavax/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:()Ljavax/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:()Ljavax/servlet/ReadListener;
invokeinterface javax.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 javax.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 "javax.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.currentTimeMillis:()J
aload 1
invokevirtual org.apache.coyote.Request.getStartTime:()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.currentTimeMillis:()J
aload 1
invokevirtual org.apache.coyote.Request.getStartTime:()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.currentTimeMillis:()J
aload 1
invokevirtual org.apache.coyote.Request.getStartTime:()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 Ljavax/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, javax.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=18, 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 43
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
iconst_0
invokevirtual org.apache.tomcat.util.buf.UDecoder.convert:(Lorg/apache/tomcat/util/buf/MessageBytes;Z)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;
invokestatic org.apache.catalina.connector.CoyoteAdapter.normalize:(Lorg/apache/tomcat/util/buf/MessageBytes;)Z
ifeq 41
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: aload 1
invokevirtual org.apache.coyote.Request.decodedURI:()Lorg/apache/tomcat/util/buf/MessageBytes;
invokestatic org.apache.catalina.connector.CoyoteAdapter.checkNormalize:(Lorg/apache/tomcat/util/buf/MessageBytes;)Z
ifne 48
39: aload 4
sipush 400
ldc "Invalid URI"
invokevirtual org.apache.catalina.connector.Response.sendError:(ILjava/lang/String;)V
40: goto 48
41: StackMap locals:
StackMap stack:
aload 4
sipush 400
ldc "Invalid URI"
invokevirtual org.apache.catalina.connector.Response.sendError:(ILjava/lang/String;)V
42: goto 48
43: StackMap locals:
StackMap stack:
aload 8
invokevirtual org.apache.tomcat.util.buf.MessageBytes.toChars:()V
44: aload 8
invokevirtual org.apache.tomcat.util.buf.MessageBytes.getCharChunk:()Lorg/apache/tomcat/util/buf/CharChunk;
astore 9
start local 9 45: aload 9
bipush 59
invokevirtual org.apache.tomcat.util.buf.CharChunk.indexOf:(C)I
istore 10
start local 10 46: iload 10
ifle 48
47: 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 48: 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 53
49: aload 1
invokevirtual org.apache.coyote.Request.localName:()Lorg/apache/tomcat/util/buf/MessageBytes;
astore 9
start local 9 50: aload 9
invokevirtual org.apache.tomcat.util.buf.MessageBytes.isNull:()Z
ifeq 54
51: 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
52: goto 54
end local 9 53: StackMap locals:
StackMap stack:
aload 1
invokevirtual org.apache.coyote.Request.serverName:()Lorg/apache/tomcat/util/buf/MessageBytes;
astore 9
start local 9 54: StackMap locals: org.apache.tomcat.util.buf.MessageBytes
StackMap stack:
aconst_null
astore 10
start local 10 55: aconst_null
astore 11
start local 11 56: iconst_1
istore 12
start local 12 57: aload 4
invokevirtual org.apache.catalina.connector.Response.isError:()Z
ifeq 111
58: aload 8
invokevirtual org.apache.tomcat.util.buf.MessageBytes.recycle:()V
59: goto 111
60: 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
61: aload 10
aload 2
invokevirtual org.apache.catalina.connector.Request.getMappingData:()Lorg/apache/catalina/mapper/MappingData;
62: 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
63: aload 2
invokevirtual org.apache.catalina.connector.Request.getContext:()Lorg/apache/catalina/Context;
ifnonnull 67
64: aload 4
invokevirtual org.apache.catalina.connector.Response.isError:()Z
ifne 66
65: aload 4
sipush 404
ldc "Not found"
invokevirtual org.apache.catalina.connector.Response.sendError:(ILjava/lang/String;)V
66: StackMap locals:
StackMap stack:
iconst_1
ireturn
67: StackMap locals:
StackMap stack:
aload 2
invokevirtual org.apache.catalina.connector.Request.getServletContext:()Ljavax/servlet/ServletContext;
invokeinterface javax.servlet.ServletContext.getEffectiveSessionTrackingModes:()Ljava/util/Set;
68: getstatic javax.servlet.SessionTrackingMode.URL:Ljavax/servlet/SessionTrackingMode;
invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
ifeq 76
69: aload 2
70: aload 2
invokevirtual org.apache.catalina.connector.Request.getContext:()Lorg/apache/catalina/Context;
71: invokestatic org.apache.catalina.util.SessionConfig.getSessionUriParamName:(Lorg/apache/catalina/Context;)Ljava/lang/String;
72: invokevirtual org.apache.catalina.connector.Request.getPathParameter:(Ljava/lang/String;)Ljava/lang/String;
astore 13
start local 13 73: aload 13
ifnull 76
74: aload 2
aload 13
invokevirtual org.apache.catalina.connector.Request.setRequestedSessionId:(Ljava/lang/String;)V
75: aload 2
iconst_1
invokevirtual org.apache.catalina.connector.Request.setRequestedSessionURL:(Z)V
end local 13 76: StackMap locals:
StackMap stack:
aload 0
aload 2
invokevirtual org.apache.catalina.connector.CoyoteAdapter.parseSessionCookiesId:(Lorg/apache/catalina/connector/Request;)V
77: goto 83
StackMap locals:
StackMap stack: java.lang.IllegalArgumentException
78: pop
79: aload 4
invokevirtual org.apache.catalina.connector.Response.isError:()Z
ifne 82
80: aload 4
invokevirtual org.apache.catalina.connector.Response.setError:()Z
pop
81: aload 4
sipush 400
invokevirtual org.apache.catalina.connector.Response.sendError:(I)V
82: StackMap locals:
StackMap stack:
iconst_1
ireturn
83: StackMap locals:
StackMap stack:
aload 0
aload 2
invokevirtual org.apache.catalina.connector.CoyoteAdapter.parseSessionSslId:(Lorg/apache/catalina/connector/Request;)V
84: aload 2
invokevirtual org.apache.catalina.connector.Request.getRequestedSessionId:()Ljava/lang/String;
astore 13
start local 13 85: iconst_0
istore 12
86: aload 10
ifnull 87
aload 2
invokevirtual org.apache.catalina.connector.Request.getContext:()Lorg/apache/catalina/Context;
aload 11
if_acmpeq 105
87: StackMap locals: java.lang.String
StackMap stack:
aconst_null
astore 10
88: aconst_null
astore 11
89: 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 90: aload 14
ifnull 105
aload 13
ifnull 105
91: aload 14
arraylength
istore 15
start local 15 92: goto 104
93: StackMap locals: org.apache.catalina.Context[] int
StackMap stack:
aload 14
iload 15
iconst_1
isub
aaload
astore 16
start local 16 94: 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 103
95: 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 105
96: aload 16
invokeinterface org.apache.catalina.Context.getWebappVersion:()Ljava/lang/String;
astore 10
97: aload 16
astore 11
98: aload 2
invokevirtual org.apache.catalina.connector.Request.getMappingData:()Lorg/apache/catalina/mapper/MappingData;
invokevirtual org.apache.catalina.mapper.MappingData.recycle:()V
99: iconst_1
istore 12
100: aload 2
invokevirtual org.apache.catalina.connector.Request.recycleSessionInfo:()V
101: aload 2
iconst_1
invokevirtual org.apache.catalina.connector.Request.recycleCookieInfo:(Z)V
102: goto 105
end local 16 103: StackMap locals:
StackMap stack:
iinc 15 -1
StackMap locals:
StackMap stack:
104: iload 15
ifgt 93
end local 15 end local 14 105: StackMap locals:
StackMap stack:
iload 12
ifne 111
aload 2
invokevirtual org.apache.catalina.connector.Request.getContext:()Lorg/apache/catalina/Context;
invokeinterface org.apache.catalina.Context.getPaused:()Z
ifeq 111
106: ldc 1000
invokestatic java.lang.Thread.sleep:(J)V
107: goto 109
StackMap locals:
StackMap stack: java.lang.InterruptedException
108: pop
109: 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
110: iconst_1
istore 12
end local 13 111: StackMap locals:
StackMap stack:
iload 12
ifne 60
112: 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 113: aload 13
invokevirtual org.apache.tomcat.util.buf.MessageBytes.isNull:()Z
ifne 129
114: getstatic org.apache.catalina.util.URLEncoder.DEFAULT:Lorg/apache/catalina/util/URLEncoder;
115: aload 13
invokevirtual org.apache.tomcat.util.buf.MessageBytes.toString:()Ljava/lang/String;
getstatic java.nio.charset.StandardCharsets.UTF_8:Ljava/nio/charset/Charset;
116: invokevirtual org.apache.catalina.util.URLEncoder.encode:(Ljava/lang/String;Ljava/nio/charset/Charset;)Ljava/lang/String;
astore 14
start local 14 117: aload 2
invokevirtual org.apache.catalina.connector.Request.getQueryString:()Ljava/lang/String;
astore 15
start local 15 118: aload 2
invokevirtual org.apache.catalina.connector.Request.isRequestedSessionIdFromURL:()Z
ifeq 124
119: 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;
120: aload 2
invokevirtual org.apache.catalina.connector.Request.getContext:()Lorg/apache/catalina/Context;
121: 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;
122: 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;
123: invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 14
124: StackMap locals: org.apache.tomcat.util.buf.MessageBytes java.lang.String java.lang.String
StackMap stack:
aload 15
ifnull 126
125: 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
126: StackMap locals:
StackMap stack:
aload 4
aload 14
invokevirtual org.apache.catalina.connector.Response.sendRedirect:(Ljava/lang/String;)V
127: 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
128: iconst_0
ireturn
end local 15 end local 14 129: 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 150
130: 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 150
131: aload 2
invokevirtual org.apache.catalina.connector.Request.getWrapper:()Lorg/apache/catalina/Wrapper;
astore 14
start local 14 132: aconst_null
astore 15
start local 15 133: aload 14
ifnull 146
134: aload 14
invokeinterface org.apache.catalina.Wrapper.getServletMethods:()[Ljava/lang/String;
astore 16
start local 16 135: aload 16
ifnull 146
136: iconst_0
istore 17
start local 17 137: goto 145
138: 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[] int
StackMap stack:
ldc "TRACE"
aload 16
iload 17
aaload
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 140
139: goto 144
140: StackMap locals:
StackMap stack:
aload 15
ifnonnull 143
141: aload 16
iload 17
aaload
astore 15
142: goto 144
143: 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 16
iload 17
aaload
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 15
144: StackMap locals:
StackMap stack:
iinc 17 1
StackMap locals:
StackMap stack:
145: iload 17
aload 16
arraylength
if_icmplt 138
end local 17 end local 16 146: StackMap locals:
StackMap stack:
aload 15
ifnull 148
147: aload 3
ldc "Allow"
aload 15
invokevirtual org.apache.coyote.Response.addHeader:(Ljava/lang/String;Ljava/lang/String;)V
148: 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
149: iconst_1
ireturn
end local 15 end local 14 150: 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
151: 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 152 0 this Lorg/apache/catalina/connector/CoyoteAdapter;
0 152 1 req Lorg/apache/coyote/Request;
0 152 2 request Lorg/apache/catalina/connector/Request;
0 152 3 res Lorg/apache/coyote/Response;
0 152 4 response Lorg/apache/catalina/connector/Response;
6 152 5 proxyName Ljava/lang/String;
7 152 6 proxyPort I
18 152 7 undecodedURI Lorg/apache/tomcat/util/buf/MessageBytes;
21 27 8 allow Ljava/lang/StringBuilder;
29 152 8 decodedURI Lorg/apache/tomcat/util/buf/MessageBytes;
35 36 9 ioe Ljava/io/IOException;
45 48 9 uriCC Lorg/apache/tomcat/util/buf/CharChunk;
46 48 10 semicolon I
50 53 9 serverName Lorg/apache/tomcat/util/buf/MessageBytes;
54 152 9 serverName Lorg/apache/tomcat/util/buf/MessageBytes;
55 152 10 version Ljava/lang/String;
56 152 11 versionContext Lorg/apache/catalina/Context;
57 152 12 mapRequired Z
73 76 13 sessionID Ljava/lang/String;
85 111 13 sessionID Ljava/lang/String;
90 105 14 contexts [Lorg/apache/catalina/Context;
92 105 15 i I
94 103 16 ctxt Lorg/apache/catalina/Context;
113 152 13 redirectPathMB Lorg/apache/tomcat/util/buf/MessageBytes;
117 129 14 redirectPath Ljava/lang/String;
118 129 15 query Ljava/lang/String;
132 150 14 wrapper Lorg/apache/catalina/Wrapper;
133 150 15 header Ljava/lang/String;
135 146 16 methods [Ljava/lang/String;
137 146 17 i I
Exception table:
from to target type
32 33 34 Class java.io.IOException
76 77 78 Class java.lang.IllegalArgumentException
106 107 108 Class java.lang.InterruptedException
Exceptions:
throws java.io.IOException, javax.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:()Ljavax/servlet/ServletContext;
2: invokeinterface javax.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 "javax.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:()Ljavax/servlet/ServletContext;
2: invokeinterface javax.servlet.ServletContext.getEffectiveSessionTrackingModes:()Ljava/util/Set;
3: getstatic javax.servlet.SessionTrackingMode.COOKIE:Ljavax/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);
descriptor: (Lorg/apache/tomcat/util/buf/MessageBytes;)Z
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=8, args_size=1
start local 0 0: aload 0
invokevirtual org.apache.tomcat.util.buf.MessageBytes.getByteChunk:()Lorg/apache/tomcat/util/buf/ByteChunk;
astore 1
start local 1 1: aload 1
invokevirtual org.apache.tomcat.util.buf.ByteChunk.getBytes:()[B
astore 2
start local 2 2: aload 1
invokevirtual org.apache.tomcat.util.buf.ByteChunk.getStart:()I
istore 3
start local 3 3: aload 1
invokevirtual org.apache.tomcat.util.buf.ByteChunk.getEnd:()I
istore 4
start local 4 4: iload 3
iload 4
if_icmpne 6
5: iconst_0
ireturn
6: StackMap locals: org.apache.tomcat.util.buf.MessageBytes org.apache.tomcat.util.buf.ByteChunk byte[] int int
StackMap stack:
iconst_0
istore 5
start local 5 7: iconst_0
istore 6
start local 6 8: iload 3
istore 5
goto 17
9: StackMap locals: int int
StackMap stack:
aload 2
iload 5
baload
bipush 92
if_icmpne 14
10: getstatic org.apache.catalina.connector.CoyoteAdapter.ALLOW_BACKSLASH:Z
ifeq 13
11: aload 2
iload 5
bipush 47
bastore
12: goto 14
13: StackMap locals:
StackMap stack:
iconst_0
ireturn
14: StackMap locals:
StackMap stack:
aload 2
iload 5
baload
ifne 16
15: iconst_0
ireturn
16: StackMap locals:
StackMap stack:
iinc 5 1
StackMap locals:
StackMap stack:
17: iload 5
iload 4
if_icmplt 9
18: aload 2
iload 3
baload
bipush 47
if_icmpeq 20
19: iconst_0
ireturn
20: StackMap locals:
StackMap stack:
iload 3
istore 5
goto 27
21: StackMap locals:
StackMap stack:
aload 2
iload 5
baload
bipush 47
if_icmpne 26
22: goto 25
23: StackMap locals:
StackMap stack:
aload 2
iload 5
iload 5
iconst_1
iadd
iload 4
iload 5
isub
iconst_1
isub
invokestatic org.apache.catalina.connector.CoyoteAdapter.copyBytes:([BIII)V
24: iinc 4 -1
25: StackMap locals:
StackMap stack:
iload 5
iconst_1
iadd
iload 4
if_icmpge 26
aload 2
iload 5
iconst_1
iadd
baload
bipush 47
if_icmpeq 23
26: StackMap locals:
StackMap stack:
iinc 5 1
StackMap locals:
StackMap stack:
27: iload 5
iload 4
iconst_1
isub
if_icmplt 21
28: iload 4
iload 3
isub
iconst_2
if_icmplt 34
aload 2
iload 4
iconst_1
isub
baload
bipush 46
if_icmpne 34
29: aload 2
iload 4
iconst_2
isub
baload
bipush 47
if_icmpeq 32
30: aload 2
iload 4
iconst_2
isub
baload
bipush 46
if_icmpne 34
31: aload 2
iload 4
iconst_3
isub
baload
bipush 47
if_icmpne 34
32: StackMap locals:
StackMap stack:
aload 2
iload 4
bipush 47
bastore
33: iinc 4 1
34: StackMap locals:
StackMap stack:
aload 1
iload 4
invokevirtual org.apache.tomcat.util.buf.ByteChunk.setEnd:(I)V
35: iconst_0
istore 6
36: StackMap locals:
StackMap stack:
aload 1
ldc "/./"
iconst_0
iconst_3
iload 6
invokevirtual org.apache.tomcat.util.buf.ByteChunk.indexOf:(Ljava/lang/String;III)I
istore 6
37: iload 6
ifge 39
38: goto 45
39: StackMap locals:
StackMap stack:
aload 2
iload 3
iload 6
iadd
iload 3
iload 6
iadd
iconst_2
iadd
40: iload 4
iload 3
isub
iload 6
isub
iconst_2
isub
41: invokestatic org.apache.catalina.connector.CoyoteAdapter.copyBytes:([BIII)V
42: iinc 4 -2
43: aload 1
iload 4
invokevirtual org.apache.tomcat.util.buf.ByteChunk.setEnd:(I)V
44: goto 36
45: StackMap locals:
StackMap stack:
iconst_0
istore 6
46: StackMap locals:
StackMap stack:
aload 1
ldc "/../"
iconst_0
iconst_4
iload 6
invokevirtual org.apache.tomcat.util.buf.ByteChunk.indexOf:(Ljava/lang/String;III)I
istore 6
47: iload 6
ifge 49
48: goto 64
49: StackMap locals:
StackMap stack:
iload 6
ifne 51
50: iconst_0
ireturn
51: StackMap locals:
StackMap stack:
iconst_m1
istore 7
start local 7 52: iload 3
iload 6
iadd
iconst_1
isub
istore 5
goto 56
53: StackMap locals: int
StackMap stack:
aload 2
iload 5
baload
bipush 47
if_icmpne 55
54: iload 5
istore 7
55: StackMap locals:
StackMap stack:
iinc 5 -1
StackMap locals:
StackMap stack:
56: iload 5
iflt 57
iload 7
iflt 53
57: StackMap locals:
StackMap stack:
aload 2
iload 3
iload 7
iadd
iload 3
iload 6
iadd
iconst_3
iadd
58: iload 4
iload 3
isub
iload 6
isub
iconst_3
isub
59: invokestatic org.apache.catalina.connector.CoyoteAdapter.copyBytes:([BIII)V
60: iload 4
iload 7
iadd
iload 6
isub
iconst_3
isub
istore 4
61: aload 1
iload 4
invokevirtual org.apache.tomcat.util.buf.ByteChunk.setEnd:(I)V
62: iload 7
istore 6
end local 7 63: goto 46
64: StackMap locals:
StackMap stack:
iconst_1
ireturn
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;
1 65 1 uriBC Lorg/apache/tomcat/util/buf/ByteChunk;
2 65 2 b [B
3 65 3 start I
4 65 4 end I
7 65 5 pos I
8 65 6 index I
52 63 7 index2 I
MethodParameters:
Name Flags
uriMB
public static boolean checkNormalize(org.apache.tomcat.util.buf.MessageBytes);
descriptor: (Lorg/apache/tomcat/util/buf/MessageBytes;)Z
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=6, args_size=1
start local 0 0: aload 0
invokevirtual org.apache.tomcat.util.buf.MessageBytes.getCharChunk:()Lorg/apache/tomcat/util/buf/CharChunk;
astore 1
start local 1 1: aload 1
invokevirtual org.apache.tomcat.util.buf.CharChunk.getChars:()[C
astore 2
start local 2 2: aload 1
invokevirtual org.apache.tomcat.util.buf.CharChunk.getStart:()I
istore 3
start local 3 3: aload 1
invokevirtual org.apache.tomcat.util.buf.CharChunk.getEnd:()I
istore 4
start local 4 4: iconst_0
istore 5
start local 5 5: iload 3
istore 5
goto 11
6: StackMap locals: org.apache.tomcat.util.buf.MessageBytes org.apache.tomcat.util.buf.CharChunk char[] int int int
StackMap stack:
aload 2
iload 5
caload
bipush 92
if_icmpne 8
7: iconst_0
ireturn
8: StackMap locals:
StackMap stack:
aload 2
iload 5
caload
ifne 10
9: iconst_0
ireturn
10: StackMap locals:
StackMap stack:
iinc 5 1
StackMap locals:
StackMap stack:
11: iload 5
iload 4
if_icmplt 6
12: iload 3
istore 5
goto 17
13: StackMap locals:
StackMap stack:
aload 2
iload 5
caload
bipush 47
if_icmpne 16
14: aload 2
iload 5
iconst_1
iadd
caload
bipush 47
if_icmpne 16
15: iconst_0
ireturn
16: StackMap locals:
StackMap stack:
iinc 5 1
StackMap locals:
StackMap stack:
17: iload 5
iload 4
iconst_1
isub
if_icmplt 13
18: iload 4
iload 3
isub
iconst_2
if_icmplt 23
aload 2
iload 4
iconst_1
isub
caload
bipush 46
if_icmpne 23
19: aload 2
iload 4
iconst_2
isub
caload
bipush 47
if_icmpeq 22
20: aload 2
iload 4
iconst_2
isub
caload
bipush 46
if_icmpne 23
21: aload 2
iload 4
iconst_3
isub
caload
bipush 47
if_icmpne 23
22: StackMap locals:
StackMap stack:
iconst_0
ireturn
23: StackMap locals:
StackMap stack:
aload 1
ldc "/./"
iconst_0
iconst_3
iconst_0
invokevirtual org.apache.tomcat.util.buf.CharChunk.indexOf:(Ljava/lang/String;III)I
iflt 25
24: iconst_0
ireturn
25: StackMap locals:
StackMap stack:
aload 1
ldc "/../"
iconst_0
iconst_4
iconst_0
invokevirtual org.apache.tomcat.util.buf.CharChunk.indexOf:(Ljava/lang/String;III)I
iflt 27
26: iconst_0
ireturn
27: StackMap locals:
StackMap stack:
iconst_1
ireturn
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 28 0 uriMB Lorg/apache/tomcat/util/buf/MessageBytes;
1 28 1 uriCC Lorg/apache/tomcat/util/buf/CharChunk;
2 28 2 c [C
3 28 3 start I
4 28 4 end I
5 28 5 pos I
MethodParameters:
Name Flags
uriMB
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
}
SourceFile: "CoyoteAdapter.java"
NestMembers:
org.apache.catalina.connector.CoyoteAdapter$1 org.apache.catalina.connector.CoyoteAdapter$RecycleRequiredException
InnerClasses:
org.apache.catalina.connector.CoyoteAdapter$1
private RecycleRequiredException = org.apache.catalina.connector.CoyoteAdapter$RecycleRequiredException of org.apache.catalina.connector.CoyoteAdapter