Hi,
during load tests there is an reoccuring problem with ClassCastException. I
am affraid, that it could have sth in common with multi-threading.
For following SOAP response:
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<ns2:xxOperationResponse xmlns:ns2="namespace">
<return>...obj1...</return>
<return>...obj1...</return>
<return>...obj1...</return>
</ns2:xxOperationResponse>
</soap:Body>
</soap:Envelope>
I am getting following Exception:
at
mystuff.InternalCachedService.xxOperation(InternalCachedService.java:58)
at
org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:204)
~[spring-core-3.2.3.RELEASE.jar:3.2.3.RELEASE]
at
org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.invokeJoinpoint(CglibAopProxy.java:698)
~[spring-aop-3.2.3.RELEASE.jar:3.2.3.RELEASE]
at
org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)
[spring-aop-3.2.3.RELEASE.jar:3.2.3.RELEASE]
at
org.springframework.cache.interceptor.CacheInterceptor$1.invoke(CacheInterceptor.java:58)
~[spring-context-3.2.3.RELEASE.jar:3.2.3.RELEASE]
at
org.springframework.cache.interceptor.CacheAspectSupport.execute(CacheAspectSupport.java:214)
~[spring-context-3.2.3.RELEASE.jar:3.2.3.RELEASE]
at
org.springframework.cache.interceptor.CacheInterceptor.invoke(CacheInterceptor.java:66)
~[spring-context-3.2.3.RELEASE.jar:3.2.3.RELEASE]
at
org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
[spring-aop-3.2.3.RELEASE.jar:3.2.3.RELEASE]
at
org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:631)
~[spring-aop-3.2.3.RELEASE.jar:3.2.3.RELEASE]
...
Caused by: java.lang.ClassCastException: namespace.XxOperationResponse
incompatible with java.util.List
at com.sun.proxy.$Proxy255.xxOperation(Unknown Source) ~[na:na]
at
mystuff.InternalCachedService.xxOperation(InternalCachedService.java:56)
Everything goes OK, when I repeat the situation without big load, then such
response is correctly handled.
*Here is the hint: *
I believe the List from error message is a list of "Return" objects.
Do you have any ideas?
during load tests there is an reoccuring problem with ClassCastException. I
am affraid, that it could have sth in common with multi-threading.
For following SOAP response:
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<ns2:xxOperationResponse xmlns:ns2="namespace">
<return>...obj1...</return>
<return>...obj1...</return>
<return>...obj1...</return>
</ns2:xxOperationResponse>
</soap:Body>
</soap:Envelope>
I am getting following Exception:
at
mystuff.InternalCachedService.xxOperation(InternalCachedService.java:58)
at
org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:204)
~[spring-core-3.2.3.RELEASE.jar:3.2.3.RELEASE]
at
org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.invokeJoinpoint(CglibAopProxy.java:698)
~[spring-aop-3.2.3.RELEASE.jar:3.2.3.RELEASE]
at
org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)
[spring-aop-3.2.3.RELEASE.jar:3.2.3.RELEASE]
at
org.springframework.cache.interceptor.CacheInterceptor$1.invoke(CacheInterceptor.java:58)
~[spring-context-3.2.3.RELEASE.jar:3.2.3.RELEASE]
at
org.springframework.cache.interceptor.CacheAspectSupport.execute(CacheAspectSupport.java:214)
~[spring-context-3.2.3.RELEASE.jar:3.2.3.RELEASE]
at
org.springframework.cache.interceptor.CacheInterceptor.invoke(CacheInterceptor.java:66)
~[spring-context-3.2.3.RELEASE.jar:3.2.3.RELEASE]
at
org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
[spring-aop-3.2.3.RELEASE.jar:3.2.3.RELEASE]
at
org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:631)
~[spring-aop-3.2.3.RELEASE.jar:3.2.3.RELEASE]
...
Caused by: java.lang.ClassCastException: namespace.XxOperationResponse
incompatible with java.util.List
at com.sun.proxy.$Proxy255.xxOperation(Unknown Source) ~[na:na]
at
mystuff.InternalCachedService.xxOperation(InternalCachedService.java:56)
Everything goes OK, when I repeat the situation without big load, then such
response is correctly handled.
*Here is the hint: *
I believe the List from error message is a list of "Return" objects.
Do you have any ideas?