class org.springframework.context.annotation.CommonAnnotationBeanPostProcessor$WebServiceRefElement extends org.springframework.context.annotation.CommonAnnotationBeanPostProcessor$LookupElement
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: org.springframework.context.annotation.CommonAnnotationBeanPostProcessor$WebServiceRefElement
super_class: org.springframework.context.annotation.CommonAnnotationBeanPostProcessor$LookupElement
{
private final java.lang.Class<?> elementType;
descriptor: Ljava/lang/Class;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/lang/Class<*>;
private final java.lang.String wsdlLocation;
descriptor: Ljava/lang/String;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
final org.springframework.context.annotation.CommonAnnotationBeanPostProcessor this$0;
descriptor: Lorg/springframework/context/annotation/CommonAnnotationBeanPostProcessor;
flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC
public void <init>(org.springframework.context.annotation.CommonAnnotationBeanPostProcessor, java.lang.reflect.Member, java.lang.reflect.AnnotatedElement, java.beans.PropertyDescriptor);
descriptor: (Lorg/springframework/context/annotation/CommonAnnotationBeanPostProcessor;Ljava/lang/reflect/Member;Ljava/lang/reflect/AnnotatedElement;Ljava/beans/PropertyDescriptor;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=8, args_size=5
start local 0 start local 2 start local 3 start local 4 0: aload 0
aload 1
putfield org.springframework.context.annotation.CommonAnnotationBeanPostProcessor$WebServiceRefElement.this$0:Lorg/springframework/context/annotation/CommonAnnotationBeanPostProcessor;
1: aload 0
aload 1
aload 2
aload 4
invokespecial org.springframework.context.annotation.CommonAnnotationBeanPostProcessor$LookupElement.<init>:(Lorg/springframework/context/annotation/CommonAnnotationBeanPostProcessor;Ljava/lang/reflect/Member;Ljava/beans/PropertyDescriptor;)V
2: aload 3
ldc Ljavax/xml/ws/WebServiceRef;
invokeinterface java.lang.reflect.AnnotatedElement.getAnnotation:(Ljava/lang/Class;)Ljava/lang/annotation/Annotation;
checkcast javax.xml.ws.WebServiceRef
astore 5
start local 5 3: aload 5
invokeinterface javax.xml.ws.WebServiceRef.name:()Ljava/lang/String;
astore 6
start local 6 4: aload 5
invokeinterface javax.xml.ws.WebServiceRef.type:()Ljava/lang/Class;
astore 7
start local 7 5: aload 0
aload 6
invokestatic org.springframework.util.StringUtils.hasLength:(Ljava/lang/String;)Z
ifeq 6
iconst_0
goto 7
StackMap locals: org.springframework.context.annotation.CommonAnnotationBeanPostProcessor$WebServiceRefElement org.springframework.context.annotation.CommonAnnotationBeanPostProcessor java.lang.reflect.Member java.lang.reflect.AnnotatedElement java.beans.PropertyDescriptor javax.xml.ws.WebServiceRef java.lang.String java.lang.Class
StackMap stack: org.springframework.context.annotation.CommonAnnotationBeanPostProcessor$WebServiceRefElement
6: iconst_1
StackMap locals: org.springframework.context.annotation.CommonAnnotationBeanPostProcessor$WebServiceRefElement org.springframework.context.annotation.CommonAnnotationBeanPostProcessor java.lang.reflect.Member java.lang.reflect.AnnotatedElement java.beans.PropertyDescriptor javax.xml.ws.WebServiceRef java.lang.String java.lang.Class
StackMap stack: org.springframework.context.annotation.CommonAnnotationBeanPostProcessor$WebServiceRefElement int
7: putfield org.springframework.context.annotation.CommonAnnotationBeanPostProcessor$WebServiceRefElement.isDefaultName:Z
8: aload 0
getfield org.springframework.context.annotation.CommonAnnotationBeanPostProcessor$WebServiceRefElement.isDefaultName:Z
ifeq 12
9: aload 0
getfield org.springframework.context.annotation.CommonAnnotationBeanPostProcessor$WebServiceRefElement.member:Ljava/lang/reflect/Member;
invokeinterface java.lang.reflect.Member.getName:()Ljava/lang/String;
astore 6
10: aload 0
getfield org.springframework.context.annotation.CommonAnnotationBeanPostProcessor$WebServiceRefElement.member:Ljava/lang/reflect/Member;
instanceof java.lang.reflect.Method
ifeq 12
aload 6
ldc "set"
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifeq 12
aload 6
invokevirtual java.lang.String.length:()I
iconst_3
if_icmple 12
11: aload 6
iconst_3
invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
invokestatic java.beans.Introspector.decapitalize:(Ljava/lang/String;)Ljava/lang/String;
astore 6
12: StackMap locals:
StackMap stack:
ldc Ljava/lang/Object;
aload 7
if_acmpeq 15
13: aload 0
aload 7
invokevirtual org.springframework.context.annotation.CommonAnnotationBeanPostProcessor$WebServiceRefElement.checkResourceType:(Ljava/lang/Class;)V
14: goto 16
15: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.springframework.context.annotation.CommonAnnotationBeanPostProcessor$WebServiceRefElement.getResourceType:()Ljava/lang/Class;
astore 7
16: StackMap locals:
StackMap stack:
aload 0
aload 6
putfield org.springframework.context.annotation.CommonAnnotationBeanPostProcessor$WebServiceRefElement.name:Ljava/lang/String;
17: aload 0
aload 7
putfield org.springframework.context.annotation.CommonAnnotationBeanPostProcessor$WebServiceRefElement.elementType:Ljava/lang/Class;
18: ldc Ljavax/xml/ws/Service;
aload 7
invokevirtual java.lang.Class.isAssignableFrom:(Ljava/lang/Class;)Z
ifeq 21
19: aload 0
aload 7
putfield org.springframework.context.annotation.CommonAnnotationBeanPostProcessor$WebServiceRefElement.lookupType:Ljava/lang/Class;
20: goto 22
21: StackMap locals:
StackMap stack:
aload 0
aload 5
invokeinterface javax.xml.ws.WebServiceRef.value:()Ljava/lang/Class;
putfield org.springframework.context.annotation.CommonAnnotationBeanPostProcessor$WebServiceRefElement.lookupType:Ljava/lang/Class;
22: StackMap locals:
StackMap stack:
aload 0
aload 5
invokeinterface javax.xml.ws.WebServiceRef.mappedName:()Ljava/lang/String;
putfield org.springframework.context.annotation.CommonAnnotationBeanPostProcessor$WebServiceRefElement.mappedName:Ljava/lang/String;
23: aload 0
aload 5
invokeinterface javax.xml.ws.WebServiceRef.wsdlLocation:()Ljava/lang/String;
putfield org.springframework.context.annotation.CommonAnnotationBeanPostProcessor$WebServiceRefElement.wsdlLocation:Ljava/lang/String;
24: return
end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 25 0 this Lorg/springframework/context/annotation/CommonAnnotationBeanPostProcessor$WebServiceRefElement;
0 25 2 member Ljava/lang/reflect/Member;
0 25 3 ae Ljava/lang/reflect/AnnotatedElement;
0 25 4 pd Ljava/beans/PropertyDescriptor;
3 25 5 resource Ljavax/xml/ws/WebServiceRef;
4 25 6 resourceName Ljava/lang/String;
5 25 7 resourceType Ljava/lang/Class<*>;
RuntimeVisibleParameterAnnotations:
0:
1:
2:
org.springframework.lang.Nullable()
3:
MethodParameters:
Name Flags
this$0 final
member
ae
pd
protected java.lang.Object getResourceToInject(java.lang.Object, java.lang.String);
descriptor: (Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
flags: (0x0004) ACC_PROTECTED
Code:
stack=8, locals=6, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield org.springframework.context.annotation.CommonAnnotationBeanPostProcessor$WebServiceRefElement.this$0:Lorg/springframework/context/annotation/CommonAnnotationBeanPostProcessor;
aload 0
aload 2
invokevirtual org.springframework.context.annotation.CommonAnnotationBeanPostProcessor.getResource:(Lorg/springframework/context/annotation/CommonAnnotationBeanPostProcessor$LookupElement;Ljava/lang/String;)Ljava/lang/Object;
checkcast javax.xml.ws.Service
astore 3
start local 3 1: goto 30
end local 3 2: StackMap locals:
StackMap stack: org.springframework.beans.factory.NoSuchBeanDefinitionException
pop
3: ldc Ljavax/xml/ws/Service;
aload 0
getfield org.springframework.context.annotation.CommonAnnotationBeanPostProcessor$WebServiceRefElement.lookupType:Ljava/lang/Class;
if_acmpne 9
4: new java.lang.IllegalStateException
dup
new java.lang.StringBuilder
dup
ldc "No resource with name '"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
getfield org.springframework.context.annotation.CommonAnnotationBeanPostProcessor$WebServiceRefElement.name:Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "' found in context, "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
5: ldc "and no specific JAX-WS Service subclass specified. The typical solution is to either specify "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
6: ldc "a LocalJaxWsServiceFactoryBean with the given name or to specify the (generated) Service "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
7: ldc "subclass as @WebServiceRef(...) value."
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
8: invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
athrow
9: StackMap locals:
StackMap stack:
aload 0
getfield org.springframework.context.annotation.CommonAnnotationBeanPostProcessor$WebServiceRefElement.wsdlLocation:Ljava/lang/String;
invokestatic org.springframework.util.StringUtils.hasLength:(Ljava/lang/String;)Z
ifeq 29
10: aload 0
getfield org.springframework.context.annotation.CommonAnnotationBeanPostProcessor$WebServiceRefElement.lookupType:Ljava/lang/Class;
iconst_2
anewarray java.lang.Class
dup
iconst_0
ldc Ljava/net/URL;
aastore
dup
iconst_1
ldc Ljavax/xml/namespace/QName;
aastore
invokevirtual java.lang.Class.getConstructor:([Ljava/lang/Class;)Ljava/lang/reflect/Constructor;
astore 4
start local 4 11: aload 0
getfield org.springframework.context.annotation.CommonAnnotationBeanPostProcessor$WebServiceRefElement.lookupType:Ljava/lang/Class;
ldc Ljavax/xml/ws/WebServiceClient;
invokevirtual java.lang.Class.getAnnotation:(Ljava/lang/Class;)Ljava/lang/annotation/Annotation;
checkcast javax.xml.ws.WebServiceClient
astore 5
start local 5 12: aload 5
ifnonnull 16
13: new java.lang.IllegalStateException
dup
new java.lang.StringBuilder
dup
ldc "JAX-WS Service class ["
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
getfield org.springframework.context.annotation.CommonAnnotationBeanPostProcessor$WebServiceRefElement.lookupType:Ljava/lang/Class;
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
14: ldc "] does not carry a WebServiceClient annotation"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
15: invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
athrow
16: StackMap locals: org.springframework.context.annotation.CommonAnnotationBeanPostProcessor$WebServiceRefElement java.lang.Object java.lang.String top java.lang.reflect.Constructor javax.xml.ws.WebServiceClient
StackMap stack:
aload 4
iconst_2
anewarray java.lang.Object
dup
iconst_0
17: new java.net.URL
dup
aload 0
getfield org.springframework.context.annotation.CommonAnnotationBeanPostProcessor$WebServiceRefElement.wsdlLocation:Ljava/lang/String;
invokespecial java.net.URL.<init>:(Ljava/lang/String;)V
aastore
dup
iconst_1
new javax.xml.namespace.QName
dup
aload 5
invokeinterface javax.xml.ws.WebServiceClient.targetNamespace:()Ljava/lang/String;
aload 5
invokeinterface javax.xml.ws.WebServiceClient.name:()Ljava/lang/String;
invokespecial javax.xml.namespace.QName.<init>:(Ljava/lang/String;Ljava/lang/String;)V
aastore
18: invokestatic org.springframework.beans.BeanUtils.instantiateClass:(Ljava/lang/reflect/Constructor;[Ljava/lang/Object;)Ljava/lang/Object;
checkcast javax.xml.ws.Service
astore 3
end local 5 end local 4 start local 3 19: goto 30
end local 3 20: StackMap locals: org.springframework.context.annotation.CommonAnnotationBeanPostProcessor$WebServiceRefElement java.lang.Object java.lang.String
StackMap stack: java.lang.NoSuchMethodException
pop
21: new java.lang.IllegalStateException
dup
new java.lang.StringBuilder
dup
ldc "JAX-WS Service class ["
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
getfield org.springframework.context.annotation.CommonAnnotationBeanPostProcessor$WebServiceRefElement.lookupType:Ljava/lang/Class;
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
22: ldc "] does not have a (URL, QName) constructor. Cannot apply specified WSDL location ["
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
23: aload 0
getfield org.springframework.context.annotation.CommonAnnotationBeanPostProcessor$WebServiceRefElement.wsdlLocation:Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "]."
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
24: invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
athrow
25: StackMap locals:
StackMap stack: java.net.MalformedURLException
pop
26: new java.lang.IllegalArgumentException
dup
27: new java.lang.StringBuilder
dup
ldc "Specified WSDL location ["
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
getfield org.springframework.context.annotation.CommonAnnotationBeanPostProcessor$WebServiceRefElement.wsdlLocation:Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "] isn't a valid URL"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
28: invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
29: StackMap locals:
StackMap stack:
aload 0
getfield org.springframework.context.annotation.CommonAnnotationBeanPostProcessor$WebServiceRefElement.lookupType:Ljava/lang/Class;
invokestatic org.springframework.beans.BeanUtils.instantiateClass:(Ljava/lang/Class;)Ljava/lang/Object;
checkcast javax.xml.ws.Service
astore 3
start local 3 30: StackMap locals: javax.xml.ws.Service
StackMap stack:
aload 3
aload 0
getfield org.springframework.context.annotation.CommonAnnotationBeanPostProcessor$WebServiceRefElement.elementType:Ljava/lang/Class;
invokevirtual javax.xml.ws.Service.getPort:(Ljava/lang/Class;)Ljava/lang/Object;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 31 0 this Lorg/springframework/context/annotation/CommonAnnotationBeanPostProcessor$WebServiceRefElement;
0 31 1 target Ljava/lang/Object;
0 31 2 requestingBeanName Ljava/lang/String;
1 2 3 service Ljavax/xml/ws/Service;
19 20 3 service Ljavax/xml/ws/Service;
30 31 3 service Ljavax/xml/ws/Service;
11 19 4 ctor Ljava/lang/reflect/Constructor<*>;
12 19 5 clientAnn Ljavax/xml/ws/WebServiceClient;
Exception table:
from to target type
0 1 2 Class org.springframework.beans.factory.NoSuchBeanDefinitionException
10 19 20 Class java.lang.NoSuchMethodException
10 19 25 Class java.net.MalformedURLException
RuntimeVisibleParameterAnnotations:
0:
1:
org.springframework.lang.Nullable()
MethodParameters:
Name Flags
target
requestingBeanName
}
SourceFile: "CommonAnnotationBeanPostProcessor.java"
NestHost: org.springframework.context.annotation.CommonAnnotationBeanPostProcessor
InnerClasses:
protected abstract LookupElement = org.springframework.context.annotation.CommonAnnotationBeanPostProcessor$LookupElement of org.springframework.context.annotation.CommonAnnotationBeanPostProcessor
private WebServiceRefElement = org.springframework.context.annotation.CommonAnnotationBeanPostProcessor$WebServiceRefElement of org.springframework.context.annotation.CommonAnnotationBeanPostProcessor