Aki Yoshida created CXF-5834:
--------------------------------
Summary: WS-RM's JAXB marshalling/unmarshalling is not thread-safe
Key: CXF-5834
URL: https://issues.apache.org/jira/browse/CXF-5834
Project: CXF
Issue Type: Bug
Components: WS-* Components
Affects Versions: 3.0.0, 2.6.14, 2.7.11
Reporter: Aki Yoshida
Assignee: Aki Yoshida
WS-RM's JAXB classes such as Acknowledgement etc are not marshaled or
unamarshalled thread-safe and this may lead to some JAXB exception
2014 06 30 09:23:50#+00#WARN#org.apache.cxf.phase.PhaseInterceptorChain##M16
SSL client SSL Client
(Standard)@SAPNetCA#default-workqueue-8##avatarperf#rpetsy2#ifl#sy2#Interceptor
for {http://schem
as.xmlsoap.org/ws/2005/02/rm}SequenceAbstractService#{http://schemas.xmlsoap.org/ws/2005/02/rm}TerminateSequence
has thrown exception, unwinding nowjava.lang.ArrayIndexOutOfBoundsException: -1
at
com.sun.xml.internal.bind.v2.util.CollisionCheckStack.pushNocheck(CollisionCheckStack.java:117)
at
com.sun.xml.internal.bind.v2.runtime.XMLSerializer.childAsRoot(XMLSerializer.java:476)
at
com.sun.xml.internal.bind.v2.runtime.MarshallerImpl.write(MarshallerImpl.java:308)
at
com.sun.xml.internal.bind.v2.runtime.MarshallerImpl.marshal(MarshallerImpl.java:236)
at
javax.xml.bind.helpers.AbstractMarshallerImpl.marshal(AbstractMarshallerImpl.java:95)
at
org.apache.cxf.ws.rm.persistence.PersistenceUtils.serialiseAcknowledgment(PersistenceUtils.java:75)
at
org.apache.cxf.ws.rm.persistence.jdbc.RMTxStore.updateDestinationSequence(RMTxStore.java:817)
at
org.apache.cxf.ws.rm.persistence.jdbc.RMTxStore.persistIncoming(RMTxStore.java:635)
at sun.reflect.GeneratedMethodAccessor228.invoke(Unknown Source)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:601)
at
org.apache.aries.proxy.impl.ProxyHandler$1.invoke(ProxyHandler.java:54)
at
org.apache.aries.proxy.impl.ProxyHandler.invoke(ProxyHandler.java:119)
at $Proxy119.persistIncoming(Unknown Source)
at
org.apache.cxf.ws.rm.DestinationSequence.terminate(DestinationSequence.java:558)
at
org.apache.cxf.ws.rm.Destination.terminateSequence(Destination.java:81)
at org.apache.cxf.ws.rm.Servant.terminateSequence(Servant.java:247)
at org.apache.cxf.ws.rm.Servant.invoke(Servant.java:107)
at
org.apache.cxf.interceptor.ServiceInvokerInterceptor$1.run(ServiceInvokerInterceptor.java:58)
at
java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)
at java.util.concurrent.FutureTask.run(FutureTask.java:166)
at
org.apache.cxf.workqueue.SynchronousExecutor.execute(SynchronousExecutor.java:37)
at
org.apache.cxf.interceptor.ServiceInvokerInterceptor.handleMessage(ServiceInvokerInterceptor.java:107)
at
org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:272)
at
org.apache.cxf.phase.PhaseInterceptorChain.resume(PhaseInterceptorChain.java:242)
at
org.apache.cxf.ws.addressing.impl.InternalContextUtils$1.run(InternalContextUtils.java:323)
at
org.apache.cxf.workqueue.AutomaticWorkQueueImpl$3.run(AutomaticWorkQueueImpl.java:428)
at
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
at
org.apache.cxf.workqueue.AutomaticWorkQueueImpl$AWQThreadFactory$1.run(AutomaticWorkQueueImpl.java:353)
at java.lang.Thread.run(Thread.java:789)
This was reported by Franz Forsthofer by mail.
--
This message was sent by Atlassian JIRA
(v6.2#6252)