You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@cxf.apache.org by "Aki Yoshida (JIRA)" <ji...@apache.org> on 2014/07/01 11:42:24 UTC

[jira] [Resolved] (CXF-5834) WS-RM's JAXB marshalling/unmarshalling is not thread-safe

     [ https://issues.apache.org/jira/browse/CXF-5834?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Aki Yoshida resolved CXF-5834.
------------------------------

       Resolution: Fixed
    Fix Version/s: 3.0.1
                   2.7.12
                   2.6.15

> 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: 2.7.11, 2.6.14, 3.0.0
>            Reporter: Aki Yoshida
>            Assignee: Aki Yoshida
>             Fix For: 2.6.15, 2.7.12, 3.0.1
>
>
> 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)