public class org.springframework.remoting.caucho.SimpleHessianServiceExporter extends org.springframework.remoting.caucho.HessianExporter implements com.sun.net.httpserver.HttpHandler
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.springframework.remoting.caucho.SimpleHessianServiceExporter
super_class: org.springframework.remoting.caucho.HessianExporter
{
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 // org.springframework.remoting.caucho.SimpleHessianServiceExporter this
0: .line 49
aload 0 /* this */
invokespecial org.springframework.remoting.caucho.HessianExporter.<init>:()V
return
end local 0 // org.springframework.remoting.caucho.SimpleHessianServiceExporter this
LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/springframework/remoting/caucho/SimpleHessianServiceExporter;
public void handle(com.sun.net.httpserver.HttpExchange);
descriptor: (Lcom/sun/net/httpserver/HttpExchange;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=4, args_size=2
start local 0 // org.springframework.remoting.caucho.SimpleHessianServiceExporter this
start local 1 // com.sun.net.httpserver.HttpExchange exchange
0: .line 56
ldc "POST"
aload 1 /* exchange */
invokevirtual com.sun.net.httpserver.HttpExchange.getRequestMethod:()Ljava/lang/String;
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 4
1: .line 57
aload 1 /* exchange */
invokevirtual com.sun.net.httpserver.HttpExchange.getResponseHeaders:()Lcom/sun/net/httpserver/Headers;
ldc "Allow"
ldc "POST"
invokevirtual com.sun.net.httpserver.Headers.set:(Ljava/lang/String;Ljava/lang/String;)V
2: .line 58
aload 1 /* exchange */
sipush 405
ldc -1
invokevirtual com.sun.net.httpserver.HttpExchange.sendResponseHeaders:(IJ)V
3: .line 59
return
4: .line 62
StackMap locals:
StackMap stack:
new java.io.ByteArrayOutputStream
dup
sipush 1024
invokespecial java.io.ByteArrayOutputStream.<init>:(I)V
astore 2 /* output */
start local 2 // java.io.ByteArrayOutputStream output
5: .line 64
aload 0 /* this */
aload 1 /* exchange */
invokevirtual com.sun.net.httpserver.HttpExchange.getRequestBody:()Ljava/io/InputStream;
aload 2 /* output */
invokevirtual org.springframework.remoting.caucho.SimpleHessianServiceExporter.invoke:(Ljava/io/InputStream;Ljava/io/OutputStream;)V
6: .line 65
goto 11
7: .line 66
StackMap locals: org.springframework.remoting.caucho.SimpleHessianServiceExporter com.sun.net.httpserver.HttpExchange java.io.ByteArrayOutputStream
StackMap stack: java.lang.Throwable
astore 3 /* ex */
start local 3 // java.lang.Throwable ex
8: .line 67
aload 1 /* exchange */
sipush 500
ldc -1
invokevirtual com.sun.net.httpserver.HttpExchange.sendResponseHeaders:(IJ)V
9: .line 68
aload 0 /* this */
getfield org.springframework.remoting.caucho.SimpleHessianServiceExporter.logger:Lorg/apache/commons/logging/Log;
ldc "Hessian skeleton invocation failed"
aload 3 /* ex */
invokeinterface org.apache.commons.logging.Log.error:(Ljava/lang/Object;Ljava/lang/Throwable;)V
10: .line 69
return
end local 3 // java.lang.Throwable ex
11: .line 72
StackMap locals:
StackMap stack:
aload 1 /* exchange */
invokevirtual com.sun.net.httpserver.HttpExchange.getResponseHeaders:()Lcom/sun/net/httpserver/Headers;
ldc "Content-Type"
ldc "application/x-hessian"
invokevirtual com.sun.net.httpserver.Headers.set:(Ljava/lang/String;Ljava/lang/String;)V
12: .line 73
aload 1 /* exchange */
sipush 200
aload 2 /* output */
invokevirtual java.io.ByteArrayOutputStream.size:()I
i2l
invokevirtual com.sun.net.httpserver.HttpExchange.sendResponseHeaders:(IJ)V
13: .line 74
aload 2 /* output */
invokevirtual java.io.ByteArrayOutputStream.toByteArray:()[B
aload 1 /* exchange */
invokevirtual com.sun.net.httpserver.HttpExchange.getResponseBody:()Ljava/io/OutputStream;
invokestatic org.springframework.util.FileCopyUtils.copy:([BLjava/io/OutputStream;)V
14: .line 75
return
end local 2 // java.io.ByteArrayOutputStream output
end local 1 // com.sun.net.httpserver.HttpExchange exchange
end local 0 // org.springframework.remoting.caucho.SimpleHessianServiceExporter this
LocalVariableTable:
Start End Slot Name Signature
0 15 0 this Lorg/springframework/remoting/caucho/SimpleHessianServiceExporter;
0 15 1 exchange Lcom/sun/net/httpserver/HttpExchange;
5 15 2 output Ljava/io/ByteArrayOutputStream;
8 11 3 ex Ljava/lang/Throwable;
Exception table:
from to target type
5 6 7 Class java.lang.Throwable
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
exchange
}
SourceFile: "SimpleHessianServiceExporter.java"
RuntimeVisibleAnnotations:
java.lang.Deprecated()
RuntimeInvisibleAnnotations:
org.springframework.lang.UsesSunHttpServer()