[ 
https://issues.apache.org/jira/browse/CXF-6665?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14991991#comment-14991991
 ] 

Akitoshi Yoshida commented on CXF-6665:
---------------------------------------

Here is a short update and the info about this problem.

The relevant code that brought this regression to 2.7.x is about handling a 
non-conformant soap 1.2 multipart request header that does not set the 
start-info and action properties. So, the code itself is normally never 
executed, assuming most clients follow the relevant specs and set these 
properties. We have tested this code for CXF 3.1.x and 3.0.x at that time and 
have some test cases. However, in CXF 2.7.x, this code was integrated 
incorrectly and didn't expose this issue earlier.

We will fix this issue for 2.7.x. 

> ClassCastException in SoapActionInInterceptor
> ---------------------------------------------
>
>                 Key: CXF-6665
>                 URL: https://issues.apache.org/jira/browse/CXF-6665
>             Project: CXF
>          Issue Type: Bug
>          Components: Soap Binding
>    Affects Versions: 2.7.17
>            Reporter: Tom Cunningham
>            Assignee: Akitoshi Yoshida
>
> Seeing a ClassCastException in SoapActionInInterceptor after upgrading to cxf 
> 2.7.17.    I do not see this error in previous versions of CXF - it looks 
> like this is caused by the changes in CXF-6433.
> 02:54:00,882 WARN  [org.apache.cxf.phase.PhaseInterceptorChain] Interceptor 
> for {urn:switchyard-quickstart:soap-attachment:1.0}ImageServiceService has 
> thrown exception, unwinding now
> java.lang.ClassCastException: javax.mail.internet.InternetHeaders cannot be 
> cast to java.util.Map
>         at 
> org.apache.cxf.binding.soap.interceptor.SoapActionInInterceptor.getSoapAction(SoapActionInInterceptor.java:86)
>         at 
> org.apache.cxf.binding.soap.interceptor.SoapActionInInterceptor.handleMessage(SoapActionInInterceptor.java:121)
>         at 
> org.apache.cxf.binding.soap.interceptor.SoapActionInInterceptor.handleMessage(SoapActionInInterceptor.java:45)
>         at 
> org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:272)
>         at 
> org.apache.cxf.transport.ChainInitiationObserver.onMessage(ChainInitiationObserver.java:121)
>         at 
> org.apache.cxf.transport.http_jetty.JettyHTTPDestination.serviceRequest(JettyHTTPDestination.java:355)
>         at 
> org.apache.cxf.transport.http_jetty.JettyHTTPDestination.doService(JettyHTTPDestination.java:319)
>         at 
> org.apache.cxf.transport.http_jetty.JettyHTTPHandler.handle(JettyHTTPHandler.java:66)
>         at 
> org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1088)
>         at 
> org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1024)
>         at 
> org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:135)
>         at 
> org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:255)
>         at 
> org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:116)
>         at org.eclipse.jetty.server.Server.handle(Server.java:370)
>         at 
> org.eclipse.jetty.server.AbstractHttpConnection.handleRequest(AbstractHttpConnection.java:494)
>         at 
> org.eclipse.jetty.server.AbstractHttpConnection.content(AbstractHttpConnection.java:982)
>         at 
> org.eclipse.jetty.server.AbstractHttpConnection$RequestHandler.content(AbstractHttpConnection.java:1043)
>         at org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:865)
>         at 
> org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:240)
>         at 
> org.eclipse.jetty.server.AsyncHttpConnection.handle(AsyncHttpConnection.java:82)
>         at 
> org.eclipse.jetty.io.nio.SelectChannelEndPoint.handle(SelectChannelEndPoint.java:667)
>         at 
> org.eclipse.jetty.io.nio.SelectChannelEndPoint$1.run(SelectChannelEndPoint.java:52)
>         at 
> org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:608)
>         at 
> org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:543)
>         at java.lang.Thread.run(Thread.java:745)



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to