[ https://issues.apache.org/jira/browse/AXIS2-2548?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12506179 ]
Nick Gallardo commented on AXIS2-2548: -------------------------------------- Glen, This problem surfaced because of some of the conversions that we were having to do between SAAJ and Axiom for the JAX-WS handler support. When a fault is stored in a SOAP Axiom structure, it is always represented as a SOAP 1.2 fault. So, if I walked that and tried to build a SOAP 1.1 fault, I'd be creating elements with the wrong QName. For now, the solution is to serialize the whole structure and then read it back in. That's horribly non-performant, but at least a step to get us going. Once I get the patch integrated, I'll build a small sample that shows what I'm talking about and we can see how to solve that at the Axiom level. > Handler test with fault causes exception > ---------------------------------------- > > Key: AXIS2-2548 > URL: https://issues.apache.org/jira/browse/AXIS2-2548 > Project: Axis 2.0 (Axis2) > Issue Type: Bug > Components: jaxws > Reporter: Mike Rheinheimer > Assignee: Nick Gallardo > > This is most likely an axiom problem, but opened against JAXWS until such > determination is made. When I enable the > AddNumbersHandlerTests.testAddNumbersWithFault, I get: > javax.xml.ws.soap.SOAPFaultException: java.lang.ClassCastException: > org.apache.axiom.om.impl.llom.OMSourcedElementImpl incompatible with > org.apache.axiom.soap.SOAPFault > at > org.apache.axis2.jaxws.marshaller.impl.alt.MethodMarshallerUtils.createSystemException(MethodMarshallerUtils.java:1057) > at > org.apache.axis2.jaxws.marshaller.impl.alt.MethodMarshallerUtils.demarshalFaultResponse(MethodMarshallerUtils.java:811) > at > org.apache.axis2.jaxws.marshaller.impl.alt.DocLitWrappedPlusMethodMarshaller.demarshalFaultResponse(DocLitWrappedPlusMethodMarshaller.java:725) > at > org.apache.axis2.jaxws.client.proxy.JAXWSProxyHandler.getFaultResponse(JAXWSProxyHandler.java:394) > at > org.apache.axis2.jaxws.client.proxy.JAXWSProxyHandler.createResponse(JAXWSProxyHandler.java:369) > at > org.apache.axis2.jaxws.client.proxy.JAXWSProxyHandler.invokeSEIMethod(JAXWSProxyHandler.java:291) > at > org.apache.axis2.jaxws.client.proxy.JAXWSProxyHandler.invoke(JAXWSProxyHandler.java:141) > at $Proxy19.addNumbersHandler(Unknown Source) > at > org.apache.axis2.jaxws.sample.AddNumbersHandlerTests.testAddNumbersHandlerWithFault(AddNumbersHandlerTests.java) > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:64) > at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > at java.lang.reflect.Method.invoke(Method.java:615) > at junit.framework.TestCase.runTest(TestCase.java:164) > at junit.framework.TestCase.runBare(TestCase.java:130) > at junit.framework.TestResult$1.protect(TestResult.java:106) > at junit.framework.TestResult.runProtected(TestResult.java:124) > at junit.framework.TestResult.run(TestResult.java:109) > at junit.framework.TestCase.run(TestCase.java:120) > at junit.framework.TestSuite.runTest(TestSuite.java:230) > at junit.framework.TestSuite.run(TestSuite.java:225) > at junit.framework.TestSuite.runTest(TestSuite.java:230) > at junit.framework.TestSuite.run(TestSuite.java:225) > at junit.extensions.TestDecorator.basicRun(TestDecorator.java:24) > at junit.extensions.TestSetup$1.protect(TestSetup.java:21) > at junit.framework.TestResult.runProtected(TestResult.java:124) > at junit.extensions.TestSetup.run(TestSetup.java:25) > at > org.eclipse.jdt.internal.junit.runner.junit3.JUnit3TestReference.run(JUnit3TestReference.java:128) > at > org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38) > at > org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:460) > at > org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:673) > at > org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:386) > at > org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:196) > I believe Nick has worked on this code before and can address it. If not, > I'll take a look. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online. --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]