Web services Mule WSDL解析中出现错误-无法读取根异常堆栈的XML流:意外字符'/';prolog中的(代码47);

Web services Mule WSDL解析中出现错误-无法读取根异常堆栈的XML流:意外字符'/';prolog中的(代码47);,web-services,soap,wsdl,mule,Web Services,Soap,Wsdl,Mule,我正试图通过Web service Consumer连接器在mule中使用SOAP服务。每件事情看起来都很好,但在运行应用程序时,我遇到以下异常: org.apache.cxf.interceptor.Fault: COULD_NOT_READ_XML_STREAM at org.apache.cxf.databinding.stax.StaxDataBinding$XMLStreamDataWriter.write(StaxDataBinding.java:151) at org.apache

我正试图通过Web service Consumer连接器在mule中使用SOAP服务。每件事情看起来都很好,但在运行应用程序时,我遇到以下异常:

org.apache.cxf.interceptor.Fault: COULD_NOT_READ_XML_STREAM
at org.apache.cxf.databinding.stax.StaxDataBinding$XMLStreamDataWriter.write(StaxDataBinding.java:151)
at org.apache.cxf.databinding.stax.StaxDataBinding$XMLStreamDataWriter.write(StaxDataBinding.java:135)
at org.apache.cxf.databinding.stax.StaxDataBinding$XMLStreamDataWriter.write(StaxDataBinding.java:131)
at org.apache.cxf.interceptor.AbstractOutDatabindingInterceptor.writeParts(AbstractOutDatabindingInterceptor.java:119)
at org.apache.cxf.interceptor.BareOutInterceptor.handleMessage(BareOutInterceptor.java:68)
at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:263)
at org.mule.module.cxf.transport.MuleUniversalConduit$1.write(MuleUniversalConduit.java:143)

:44)
at org.mule.execution.SuspendXaTransactionInterceptor.execute(SuspendXaTransactionInterceptor.java:50)
at org.mule.execution.ValidateTransactionalStateInterceptor.execute(ValidateTransactionalStateInterceptor.java:40)
at org.mule.execution.IsolateCurrentTransactionInterceptor.execute(IsolateCurrentTransactionInterceptor.java:41)
at org.mule.execution.ExternalTransactionInterceptor.execute(ExternalTransactionInterceptor.java:48)
at org.mule.execution.RethrowExceptionInterceptor.execute(RethrowExceptionInterceptor.java:28)
at org.mule.execution.RethrowExceptionInterceptor.execute(RethrowExceptionInterceptor.java:13)
at org.mule.execution.TransactionalErrorHandlingExecutionTemplate.execute(TransactionalErrorHandlingExecutionTemplate.java:109)
at org.mule.execution.FlowProcessingPhase$1.run(FlowProcessingPhase.java:62)
at org.mule.transport.TrackingWorkManager$TrackeableWork.run(TrackingWorkManager.java:267)
at org.mule.work.WorkerContext.run(WorkerContext.java:286)
at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
Caused by: com.ctc.wstx.exc.WstxUnexpectedCharException: Unexpected character '/' (code 47) in prolog; expected '<'
 at [row,col {unknown-source}]: [1,1]
at com.ctc.wstx.sr.StreamScanner.throwUnexpectedChar(StreamScanner.java:639)
at com.ctc.wstx.sr.BasicStreamReader.nextFromProlog(BasicStreamReader.java:2029)
at com.ctc.wstx.sr.BasicStreamReader.next(BasicStreamReader.java:1114)
at org.apache.cxf.staxutils.StaxUtils.copy(StaxUtils.java:606)
at org.apache.cxf.staxutils.StaxUtils.copy(StaxUtils.java:565)
at org.apache.cxf.databinding.stax.StaxDataBinding$XMLStreamDataWriter.write(StaxDataBinding.java:142)
... 214 more
org.apache.cxf.interceptor.Fault:无法读取XML流
位于org.apache.cxf.databinding.stax.StaxDataBinding$XMLStreamDataWriter.write(StaxDataBinding.java:151)
位于org.apache.cxf.databinding.stax.StaxDataBinding$XMLStreamDataWriter.write(StaxDataBinding.java:135)
位于org.apache.cxf.databinding.stax.StaxDataBinding$XMLStreamDataWriter.write(StaxDataBinding.java:131)
位于org.apache.cxf.interceptor.AbstractOutDatabindingInterceptor.writeParts(AbstractOutDatabindingInterceptor.java:119)
位于org.apache.cxf.interceptor.bareoutiterceptor.handleMessage(bareoutiterceptor.java:68)
位于org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:263)
位于org.mule.module.cxf.transport.MuleUniversalConduit$1.write(MuleUniversalConduit.java:143)
:44)
位于org.mule.execution.SuspendXaTransactionInterceptor.execute(SuspendXaTransactionInterceptor.java:50)
位于org.mule.execution.ValidateTransactionalStateInterceptor.execute(ValidateTransactionalStateInterceptor.java:40)
位于org.mule.execution.IsolateCurrentTransactionInterceptor.execute(IsolateCurrentTransactionInterceptor.java:41)
位于org.mule.execution.ExternalTransactionInterceptor.execute(ExternalTransactionInterceptor.java:48)
位于org.mule.execution.RethrowExceptionInterceptor.execute(RethrowExceptionInterceptor.java:28)
位于org.mule.execution.RethrowExceptionInterceptor.execute(RethrowExceptionInterceptor.java:13)
位于org.mule.execution.TransactionalErrorHandlingExecutionTemplate.execute(TransactionalErrorHandlingExecutionTemplate.java:109)
位于org.mule.execution.FlowProcessingPhase$1.run(FlowProcessingPhase.java:62)
位于org.mule.transport.TrackingWorkManager$TrackeableWork.run(TrackingWorkManager.java:267)
位于org.mule.work.WorkerContext.run(WorkerContext.java:286)
位于java.util.concurrent.ThreadPoolExecutor.runWorker(未知源)
位于java.util.concurrent.ThreadPoolExecutor$Worker.run(未知源)
位于java.lang.Thread.run(未知源)

原因:com.ctc.wstx.exc.WstxUnexpectedCharException:prolog中的意外字符“/”(代码47);预期“您可以共享您发布到的SOAP Xml吗? 有没有可能你没有发送,这就是它失败的原因?默认情况下,当没有有效负载时,入站端点会将有效负载设置为请求路径,在本例中为“/”,因为端点中没有配置路径,而这正是消费者所抱怨的

 <ws:consumer-config name="Web_Service_Consumer" wsdlLocation="D:\Balwant\docs\greet.wsdl" service="GreeterService" port="GreeterPort" serviceAddress="http://localhost:63081/services/unsecure" doc:name="Web Service Consumer"/>

<flow name="jax-ws-external" doc:name="jax-ws-external">
    <http:inbound-endpoint exchange-pattern="request-response"
        host="localhost" port="8084"  doc:name="HTTP" />
    <ws:consumer config-ref="Web_Service_Consumer" operation="greet" doc:name="Web Service Consumer" mtomEnabled="true"/>

</flow>