your exception stracktrace seems to indicate that the problem is
happening when the response message is being processed.
Can you check how the request message from the cxf-client and the
response message to the cxt-client look (e.g., using the logging
feature of cxf or capturing the wire messages)?

regards, aki

2014-11-23 22:57 GMT+01:00 Alex O'Ree <spyhunte...@gmail.com>:
> Howdy all, never ran into an issue I haven't seen before.
>
>
> I have a jaxws client, running within tomcat. I.e. a client within tomcat
> is calling another service in a different tomcat container. From what I can
> tell the requestor is throwing the fault before transmission.
>
> This is a wsdl first scenario and I can't modify the wsdl.
>
> Wsdl is located at
>
> https://git-wip-us.apache.org/repos/asf/juddi.git/?p=juddi.git;a=blob_plain;f=uddi-ws/src/main/resources/uddi_v3_service.wsdl;hb=HEAD
>
> Method is on the UDDI_Replication Port, get_changeRecords.
>
>
> Preconditions: this only happens in a web container (Tomcat 6 in this case)
> with CXF 2.7.x. Clients using the jaxws ri don't have a problem. I haven't
> tried other versions of tomcat, cxf or other containers.
>
> Note: the invocation does work correctly from SOAP UI, which leads me to
> believe it's a client side issues. It also works using the jdk's jaxws ri
> without any issues.
>
>
> There's one warning from the log that may be related.
>
> WARNING: Could not unwrap Operation
> {urn:uddi-org:repl_v3_portType}get_changeRecords to match method "public
> abstract java.util.List
> org.uddi.v3_service.UDDIReplicationPortType.getChangeRecords(java.lang.String,org.uddi.repl_v3.HighWaterMarkVectorType,java.math.BigInteger,org.uddi.repl_v3.HighWaterMarkVectorType)
> throws
> org.uddi.v3_service.DispositionReportFaultMessage,java.rmi.RemoteException"
>
> The client is constructed using the original wsdl file that's within the
> classpath
>
>
> log output below
>
> Nov 23, 2014 3:20:50 PM org.apache.cxf.phase.PhaseInterceptorChain
> doDefaultLogging
>
> WARNING: Interceptor for
> {urn:uddi-org:repl_v3_portType}UDDI_Replication_PortType#{urn:uddi-org:repl_v3_portType}get_changeRecords
> has thrown exception, unwinding now
>
> org.apache.cxf.interceptor.Fault: Unmarshalling Error:
> cvc-complex-type.2.3: Element 'get_changeRecords' cannot have character
> [children], because the type's content type is element-only.
>
> at
> org.apache.cxf.jaxb.JAXBEncoderDecoder.unmarshall(JAXBEncoderDecoder.java:881)
>
> at
> org.apache.cxf.jaxb.JAXBEncoderDecoder.unmarshall(JAXBEncoderDecoder.java:702)
>
> at org.apache.cxf.jaxb.io.DataReaderImpl.read(DataReaderImpl.java:160)
>
> at
> org.apache.cxf.interceptor.DocLiteralInInterceptor.handleMessage(DocLiteralInInterceptor.java:107)
>
> 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.AbstractHTTPDestination.invoke(AbstractHTTPDestination.java:241)
>
> at
> org.apache.cxf.transport.servlet.ServletController.invokeDestination(ServletController.java:248)
>
> at
> org.apache.cxf.transport.servlet.ServletController.invoke(ServletController.java:222)
>
> at
> org.apache.cxf.transport.servlet.ServletController.invoke(ServletController.java:153)
>
> at
> org.apache.cxf.transport.servlet.CXFNonSpringServlet.invoke(CXFNonSpringServlet.java:171)
>
> at
> org.apache.cxf.transport.servlet.AbstractHTTPServlet.handleRequest(AbstractHTTPServlet.java:286)
>
> at
> org.apache.cxf.transport.servlet.AbstractHTTPServlet.doPost(AbstractHTTPServlet.java:206)
>
> at javax.servlet.http.HttpServlet.service(HttpServlet.java:637)
>
> at
> org.apache.cxf.transport.servlet.AbstractHTTPServlet.service(AbstractHTTPServlet.java:262)
>
> at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
>
> at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
>
> at
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
>
> at
> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
>
> at
> org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:465)
>
> at
> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
>
> at
> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
>
> at
> org.apache.catalina.authenticator.SingleSignOn.invoke(SingleSignOn.java:394)
>
> at
> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
>
> at
> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298)
>
> at
> org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:852)
>
> at
> org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:588)
>
> at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
>
> at java.lang.Thread.run(Thread.java:745)
>
> Caused by: javax.xml.bind.UnmarshalException
>
>  - with linked exception:
>
> [org.xml.sax.SAXParseException; lineNumber: 1; columnNumber: 497;
> cvc-complex-type.2.3: Element 'get_changeRecords' cannot have character
> [children], because the type's content type is element-only.]
>
> at
> com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.handleStreamException(UnmarshallerImpl.java:435)
>
> at
> com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal0(UnmarshallerImpl.java:372)
>
> at
> com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal(UnmarshallerImpl.java:349)
>
> at
> org.apache.cxf.jaxb.JAXBEncoderDecoder.doUnmarshal(JAXBEncoderDecoder.java:842)
>
> at
> org.apache.cxf.jaxb.JAXBEncoderDecoder.access$100(JAXBEncoderDecoder.java:101)
>
> at org.apache.cxf.jaxb.JAXBEncoderDecoder$2.run(JAXBEncoderDecoder.java:870)
>
> at java.security.AccessController.doPrivileged(Native Method)
>
> at
> org.apache.cxf.jaxb.JAXBEncoderDecoder.unmarshall(JAXBEncoderDecoder.java:868)
>
> ... 28 more
>
> Caused by: org.xml.sax.SAXParseException; lineNumber: 1; columnNumber: 497;
> cvc-complex-type.2.3: Element 'get_changeRecords' cannot have character
> [children], because the type's content type is element-only.
>
> at
> com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.createSAXParseException(ErrorHandlerWrapper.java:198)
>
> at
> com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.error(ErrorHandlerWrapper.java:134)
>
> at
> com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:437)
>
> at
> com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:368)
>
> at
> com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:325)
>
> at
> com.sun.org.apache.xerces.internal.impl.xs.XMLSchemaValidator$XSIErrorReporter.reportError(XMLSchemaValidator.java:458)
>
> at
> com.sun.org.apache.xerces.internal.impl.xs.XMLSchemaValidator.reportSchemaError(XMLSchemaValidator.java:3237)
>
> at
> com.sun.org.apache.xerces.internal.impl.xs.XMLSchemaValidator.elementLocallyValidComplexType(XMLSchemaValidator.java:3200)
>
> at
> com.sun.org.apache.xerces.internal.impl.xs.XMLSchemaValidator.elementLocallyValidType(XMLSchemaValidator.java:3160)
>
> at
> com.sun.org.apache.xerces.internal.impl.xs.XMLSchemaValidator.processElementContent(XMLSchemaValidator.java:3062)
>
> at
> com.sun.org.apache.xerces.internal.impl.xs.XMLSchemaValidator.handleEndElement(XMLSchemaValidator.java:2140)
>
> at
> com.sun.org.apache.xerces.internal.impl.xs.XMLSchemaValidator.endElement(XMLSchemaValidator.java:859)
>
> at
> com.sun.org.apache.xerces.internal.jaxp.validation.ValidatorHandlerImpl.endElement(ValidatorHandlerImpl.java:584)
>
> at
> com.sun.xml.bind.v2.runtime.unmarshaller.ValidatingUnmarshaller.endElement(ValidatingUnmarshaller.java:106)
>
> at
> com.sun.xml.bind.v2.runtime.unmarshaller.StAXStreamConnector.handleEndElement(StAXStreamConnector.java:221)
>
> at
> com.sun.xml.bind.v2.runtime.unmarshaller.StAXStreamConnector.bridge(StAXStreamConnector.java:185)
>
> at
> com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal0(UnmarshallerImpl.java:370)
>
> ... 34 more
>
>
> Nov 23, 2014 3:20:50 PM org.apache.cxf.phase.PhaseInterceptorChain
> doDefaultLogging
>
> WARNING: Interceptor for
> {urn:uddi-org:repl_v3_portType}UDDI_Replication_PortType#{urn:uddi-org:repl_v3_portType}get_changeRecords
> has thrown exception, unwinding now
>
> org.apache.cxf.interceptor.Fault: Unmarshalling Error:
> cvc-complex-type.2.3: Element 'get_changeRecords' cannot have character
> [children], because the type's content type is element-only.
>
> at
> org.apache.cxf.jaxb.JAXBEncoderDecoder.unmarshall(JAXBEncoderDecoder.java:881)
>
> at
> org.apache.cxf.jaxb.JAXBEncoderDecoder.unmarshall(JAXBEncoderDecoder.java:702)
>
> at org.apache.cxf.jaxb.io.DataReaderImpl.read(DataReaderImpl.java:160)
>
> at
> org.apache.cxf.interceptor.DocLiteralInInterceptor.handleMessage(DocLiteralInInterceptor.java:107)
>
> 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.AbstractHTTPDestination.invoke(AbstractHTTPDestination.java:241)
>
> at
> org.apache.cxf.transport.servlet.ServletController.invokeDestination(ServletController.java:248)
>
> at
> org.apache.cxf.transport.servlet.ServletController.invoke(ServletController.java:222)
>
> at
> org.apache.cxf.transport.servlet.ServletController.invoke(ServletController.java:153)
>
> at
> org.apache.cxf.transport.servlet.CXFNonSpringServlet.invoke(CXFNonSpringServlet.java:171)
>
> at
> org.apache.cxf.transport.servlet.AbstractHTTPServlet.handleRequest(AbstractHTTPServlet.java:286)
>
> at
> org.apache.cxf.transport.servlet.AbstractHTTPServlet.doPost(AbstractHTTPServlet.java:206)
>
> at javax.servlet.http.HttpServlet.service(HttpServlet.java:637)
>
> at
> org.apache.cxf.transport.servlet.AbstractHTTPServlet.service(AbstractHTTPServlet.java:262)
>
> at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
>
> at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
>
> at
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
>
> at
> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
>
> at
> org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:465)
>
> at
> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
>
> at
> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
>
> at
> org.apache.catalina.authenticator.SingleSignOn.invoke(SingleSignOn.java:394)
>
> at
> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
>
> at
> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298)
>
> at
> org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:852)
>
> at
> org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:588)
>
> at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
>
> at java.lang.Thread.run(Thread.java:745)
>
> Caused by: javax.xml.bind.UnmarshalException
>
>  - with linked exception:
>
> [org.xml.sax.SAXParseException; lineNumber: 1; columnNumber: 497;
> cvc-complex-type.2.3: Element 'get_changeRecords' cannot have character
> [children], because the type's content type is element-only.]
>
> at
> com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.handleStreamException(UnmarshallerImpl.java:435)
>
> at
> com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal0(UnmarshallerImpl.java:372)
>
> at
> com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal(UnmarshallerImpl.java:349)
>
> at
> org.apache.cxf.jaxb.JAXBEncoderDecoder.doUnmarshal(JAXBEncoderDecoder.java:842)
>
> at
> org.apache.cxf.jaxb.JAXBEncoderDecoder.access$100(JAXBEncoderDecoder.java:101)
>
> at org.apache.cxf.jaxb.JAXBEncoderDecoder$2.run(JAXBEncoderDecoder.java:870)
>
> at java.security.AccessController.doPrivileged(Native Method)
>
> at
> org.apache.cxf.jaxb.JAXBEncoderDecoder.unmarshall(JAXBEncoderDecoder.java:868)
>
> ... 28 more
>
> Caused by: org.xml.sax.SAXParseException; lineNumber: 1; columnNumber: 497;
> cvc-complex-type.2.3: Element 'get_changeRecords' cannot have character
> [children], because the type's content type is element-only.
>
> at
> com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.createSAXParseException(ErrorHandlerWrapper.java:198)
>
> at
> com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.error(ErrorHandlerWrapper.java:134)
>
> at
> com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:437)
>
> at
> com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:368)
>
> at
> com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:325)
>
> at
> com.sun.org.apache.xerces.internal.impl.xs.XMLSchemaValidator$XSIErrorReporter.reportError(XMLSchemaValidator.java:458)
>
> at
> com.sun.org.apache.xerces.internal.impl.xs.XMLSchemaValidator.reportSchemaError(XMLSchemaValidator.java:3237)
>
> at
> com.sun.org.apache.xerces.internal.impl.xs.XMLSchemaValidator.elementLocallyValidComplexType(XMLSchemaValidator.java:3200)
>
> at
> com.sun.org.apache.xerces.internal.impl.xs.XMLSchemaValidator.elementLocallyValidType(XMLSchemaValidator.java:3160)
>
> at
> com.sun.org.apache.xerces.internal.impl.xs.XMLSchemaValidator.processElementContent(XMLSchemaValidator.java:3062)
>
> at
> com.sun.org.apache.xerces.internal.impl.xs.XMLSchemaValidator.handleEndElement(XMLSchemaValidator.java:2140)
>
> at
> com.sun.org.apache.xerces.internal.impl.xs.XMLSchemaValidator.endElement(XMLSchemaValidator.java:859)
>
> at
> com.sun.org.apache.xerces.internal.jaxp.validation.ValidatorHandlerImpl.endElement(ValidatorHandlerImpl.java:584)
>
> at
> com.sun.xml.bind.v2.runtime.unmarshaller.ValidatingUnmarshaller.endElement(ValidatingUnmarshaller.java:106)
>
> at
> com.sun.xml.bind.v2.runtime.unmarshaller.StAXStreamConnector.handleEndElement(StAXStreamConnector.java:221)
>
> at
> com.sun.xml.bind.v2.runtime.unmarshaller.StAXStreamConnector.bridge(StAXStreamConnector.java:185)
>
> at
> com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal0(UnmarshallerImpl.java:370)
>
> ... 34 more

Reply via email to