Mule-尝试开发SOAP代理Web服务时出错

Mule-尝试开发SOAP代理Web服务时出错,soap,mule,Soap,Mule,我需要开发一个soapweb服务代理,它将来自其他源的SOAP客户端请求定向到外部应用程序。但是,我的流程失败,出现了一个错误。请帮忙 我的骡子流: > <?xml version="1.0" encoding="UTF-8"?> > > <mule xmlns:mulexml="http://www.mulesoft.org/schema/mule/xml" > xmlns:tracking="http://www.mulesoft.org/sche

我需要开发一个soapweb服务代理,它将来自其他源的SOAP客户端请求定向到外部应用程序。但是,我的流程失败,出现了一个错误。请帮忙

我的骡子流:

> <?xml version="1.0" encoding="UTF-8"?>
> 
> <mule xmlns:mulexml="http://www.mulesoft.org/schema/mule/xml"
> xmlns:tracking="http://www.mulesoft.org/schema/mule/ee/tracking"
> xmlns:https="http://www.mulesoft.org/schema/mule/https"
> xmlns:http="http://www.mulesoft.org/schema/mule/http"
>   xmlns:cxf="http://www.mulesoft.org/schema/mule/cxf"
>   xmlns:vm="http://www.mulesoft.org/schema/mule/vm"
>   xmlns:ajax="http://www.mulesoft.org/schema/mule/ajax"
> xmlns="http://www.mulesoft.org/schema/mule/core"
> xmlns:doc="http://www.mulesoft.org/schema/mule/documentation"
> xmlns:spring="http://www.springframework.org/schema/beans"
> version="EE-3.4.0"
> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
> xsi:schemaLocation="http://www.mulesoft.org/schema/mule/http
> http://www.mulesoft.org/schema/mule/http/current/mule-http.xsd
> http://www.mulesoft.org/schema/mule/cxf
> http://www.mulesoft.org/schema/mule/cxf/current/mule-cxf.xsd
> http://www.mulesoft.org/schema/mule/vm
> http://www.mulesoft.org/schema/mule/vm/current/mule-vm.xsd
> http://www.springframework.org/schema/beans
> http://www.springframework.org/schema/beans/spring-beans-current.xsd
> http://www.mulesoft.org/schema/mule/core
> http://www.mulesoft.org/schema/mule/core/current/mule.xsd
> http://www.mulesoft.org/schema/mule/ajax
> http://www.mulesoft.org/schema/mule/ajax/current/mule-ajax.xsd
> http://www.mulesoft.org/schema/mule/https
> http://www.mulesoft.org/schema/mule/https/current/mule-https.xsd
> http://www.mulesoft.org/schema/mule/ee/tracking
> http://www.mulesoft.org/schema/mule/ee/tracking/current/mule-tracking-ee.xsd
> http://www.mulesoft.org/schema/mule/xml
> http://www.mulesoft.org/schema/mule/xml/current/mule-xml.xsd">
>     <spring:beans>
>         <spring:bean id="INBean" name="INBean" class="org.apache.cxf.interceptor.LoggingInInterceptor"/>
>         <spring:bean id="OUTBean" name="OUTBean" class="org.apache.cxf.interceptor.LoggingOutInterceptor"/>
>     </spring:beans>
>     <https:connector name="HTTP_HTTPS" cookieSpec="netscape" validateConnections="true" sendBufferSize="0" receiveBufferSize="0"
> receiveBacklog="0" clientSoTimeout="100000" serverSoTimeout="100000"
> socketSoLinger="0" doc:name="HTTP\HTTPS">
>         <https:tls-server path="TestTrustStore" storePassword="test"/>
>     </https:connector>
>         
>     <flow name="WebserviceClientFlow1" doc:name="WebserviceClientFlow1">          
>         <http:inbound-endpoint exchange-pattern="request-response"   doc:name="HTTP" address="http://localhost:8989/accountviews.asmx">
>         <cxf:proxy-service payload="envelope" doc:name="SOAP" service = "AccountViews" wsdlLocation= "src/main/resources/AccountView.wsdl" enableMuleSoapHeaders="false"
> namespace="http://AccountView.namespace.com" >
>             <cxf:inInterceptors>
>                 <spring:ref bean="INBean"/>
>             </cxf:inInterceptors>
>             <cxf:outInterceptors>
>                 <spring:ref bean="OUTBean"/>
>             </cxf:outInterceptors>
>         </cxf:proxy-service> 
>         </http:inbound-endpoint>
>         <copy-properties propertyName="SOAPAction" />             
>         <https:outbound-endpoint exchange-pattern="request-response" address="https://externalurl/accountviews.asmx"
> responseTimeout="20000" connector-ref="HTTP_HTTPS" doc:name="HTTP"
> encoding="UTF-8">
>             <cxf:proxy-client payload="envelope" enableMuleSoapHeaders="false" doc:name="SOAP"/>
>             </https:outbound-endpoint>     
>       </flow> </mule>
>
> 
>xmlns:tracking=”http://www.mulesoft.org/schema/mule/ee/tracking"
>xmlns:https=”http://www.mulesoft.org/schema/mule/https"
>xmlns:http=”http://www.mulesoft.org/schema/mule/http"
>xmlns:cxf=”http://www.mulesoft.org/schema/mule/cxf"
>xmlns:vm=”http://www.mulesoft.org/schema/mule/vm"
>xmlns:ajax=”http://www.mulesoft.org/schema/mule/ajax"
>xmlns=”http://www.mulesoft.org/schema/mule/core"
>xmlns:doc=”http://www.mulesoft.org/schema/mule/documentation"
>xmlns:spring=”http://www.springframework.org/schema/beans"
>version=“EE-3.4.0”
>xmlns:xsi=”http://www.w3.org/2001/XMLSchema-instance"
>xsi:schemaLocation=”http://www.mulesoft.org/schema/mule/http
> http://www.mulesoft.org/schema/mule/http/current/mule-http.xsd
> http://www.mulesoft.org/schema/mule/cxf
> http://www.mulesoft.org/schema/mule/cxf/current/mule-cxf.xsd
> http://www.mulesoft.org/schema/mule/vm
> http://www.mulesoft.org/schema/mule/vm/current/mule-vm.xsd
> http://www.springframework.org/schema/beans
> http://www.springframework.org/schema/beans/spring-beans-current.xsd
> http://www.mulesoft.org/schema/mule/core
> http://www.mulesoft.org/schema/mule/core/current/mule.xsd
> http://www.mulesoft.org/schema/mule/ajax
> http://www.mulesoft.org/schema/mule/ajax/current/mule-ajax.xsd
> http://www.mulesoft.org/schema/mule/https
> http://www.mulesoft.org/schema/mule/https/current/mule-https.xsd
> http://www.mulesoft.org/schema/mule/ee/tracking
> http://www.mulesoft.org/schema/mule/ee/tracking/current/mule-tracking-ee.xsd
> http://www.mulesoft.org/schema/mule/xml
> http://www.mulesoft.org/schema/mule/xml/current/mule-xml.xsd">
>     
>         
>         
>     
>receiveBacklog=“0”clientSoTimeout=“100000”serverSoTimeout=“100000”
>socketSoLinger=“0”doc:name=“HTTP\HTTPS”>
>         
>     
>         
>               
>         
>名称空间=”http://AccountView.namespace.com" >
>             
>                 
>             
>             
>                 
>             
>          
>         
>                      
>responseTimeout=“20000”连接器ref=“HTTP\u HTTPS”doc:name=“HTTP”
>encoding=“UTF-8”>
>             
>                  
>        
我得到的错误如下:

   <soap:Body>
      <soap:Fault>
         <faultcode>soap:Server</faultcode>
         <faultstring>Failed to route event via endpoint: DefaultOutboundEndpoint{endpointUri=https://esomething/accountviews.asmx, connector=HttpsConnector
{
  name=HTTP_HTTPS
  lifecycle=start
  this=b6a6597
  numberOfConcurrentTransactedReceivers=4
  createMultipleTransactedReceivers=true
  connected=true
  supportedProtocols=[https]
  serviceOverrides=&lt;none>
}
,  name='endpoint.https.esomething.accountviews.asmx', mep=REQUEST_RESPONSE, properties={}, transactionConfig=Transaction{factory=null, action=INDIFFERENT, timeout=0}, deleteUnacceptedMessages=false, initialState=started, responseTimeout=20000, endpointEncoding=UTF-8, disableTransportTransformer=false}. Message payload is of type: PostMethod</faultstring>
      </soap:Fault>
   </soap:Body>
</soap:Envelope>

soap:服务器
未能通过端点路由事件:DefaultOutboundEndpoint{endpointUri=https://esomething/accountviews.asmx,连接器=https连接器
{
name=HTTP\u HTTPS
生命周期=开始
这=b6a6597
ConcurrentTransacticedReceiver的数量=4
CreateMultipleTransactedReceiver=true
已连接=真
supportedProtocols=[https]
serviceOverrides=none>
}
,name='endpoint.https.esomething.accountviews.asmx',mep=REQUEST\u RESPONSE,properties={},transactionConfig=Transaction{factory=null,action=interference,timeout=0},deleteUnceptedMessages=false,initialState=started,responseTimeout=20000,endpointEncoding=UTF-8,disableTransportTransformer=false}。消息负载的类型为:PostMethod
我可以在调用HTTP端点时查看WSDL。但是当我发送一个实际的soap请求时,我收到了上面的错误。我看了这篇文章,这个解决方案似乎对我不起作用。请帮忙

错误日志:

Exception stack is:
1. Read timed out (java.net.SocketTimeoutException)
  java.net.SocketInputStream:-2 (null)
2. Failed to route event via endpoint: DefaultOutboundEndpoint{endpointUri=https://**********/accountviews.asmx, connector=HttpsConnector
{
  name=HTTP_HTTPS
  lifecycle=start
  this=b6a6597
  numberOfConcurrentTransactedReceivers=4
  createMultipleTransactedReceivers=true
  connected=true
  supportedProtocols=[https]
  serviceOverrides=<none>
}
,  name='endpoint.https.*********.accountviews.asmx', mep=REQUEST_RESPONSE, properties={}, transactionConfig=Transaction{factory=null, action=INDIFFERENT, timeout=0}, deleteUnacceptedMessages=false, initialState=started, responseTimeout=20000, endpointEncoding=UTF-8, disableTransportTransformer=false}. Message payload is of type: PostMethod (org.mule.api.transport.DispatchException)
  org.mule.transport.http.HttpClientMessageDispatcher:155 (http://www.mulesoft.org/docs/site/current3/apidocs/org/mule/api/transport/DispatchException.html)
--------------------------------------------------------------------------------
Root Exception stack trace:
java.net.SocketTimeoutException: Read timed out
    at java.net.SocketInputStream.socketRead0(Native Method)
    at java.net.SocketInputStream.read(SocketInputStream.java:129)
    at com.sun.net.ssl.internal.ssl.InputRecord.readFully(InputRecord.java:422)
    + 3 more (set debug level logging or '-Dmule.verbose.exceptions=true' for everything)
********************************************************************************

WARN  2014-01-09 08:46:45,150 [[testproxy1].connector.http.mule.default.receiver.02] org.apache.cxf.phase.PhaseInterceptorChain: Interceptor for {http://AccountViews.secure.themembersgroup.com}AccountViews has thrown exception, unwinding now
org.apache.cxf.interceptor.Fault: Failed to route event via endpoint: DefaultOutboundEndpoint{endpointUri=https://********/accountviews.asmx, connector=HttpsConnector
{
  name=HTTP_HTTPS
  lifecycle=start
  this=b6a6597
  numberOfConcurrentTransactedReceivers=4
  createMultipleTransactedReceivers=true
  connected=true
  supportedProtocols=[https]
  serviceOverrides=<none>
}
,  name='endpoint.https.*********.accountviews.asmx', mep=REQUEST_RESPONSE, properties={}, transactionConfig=Transaction{factory=null, action=INDIFFERENT, timeout=0}, deleteUnacceptedMessages=false, initialState=started, responseTimeout=20000, endpointEncoding=UTF-8, disableTransportTransformer=false}. Message payload is of type: PostMethod
    at org.mule.module.cxf.MuleInvoker.invoke(MuleInvoker.java:117)
    at org.apache.cxf.interceptor.ServiceInvokerInterceptor$1.run(ServiceInvokerInterceptor.java:58)
    at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:439)
    at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
    at java.util.concurrent.FutureTask.run(FutureTask.java:138)
    at org.apache.cxf.workqueue.SynchronousExecutor.execute(SynchronousExecutor.java:37)
    at org.apache.cxf.interceptor.ServiceInvokerInterceptor.handleMessage(ServiceInvokerInterceptor.java:106)
    at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:263)
    at org.apache.cxf.transport.ChainInitiationObserver.onMessage(ChainInitiationObserver.java:123)
    at org.mule.module.cxf.CxfInboundMessageProcessor.sendToDestination(CxfInboundMessageProcessor.java:295)
    at org.mule.module.cxf.CxfInboundMessageProcessor.process(CxfInboundMessageProcessor.java:136)
    at org.mule.module.cxf.config.FlowConfiguringMessageProcessor.process(FlowConfiguringMessageProcessor.java:52)
    at org.mule.execution.ExceptionToMessagingExceptionExecutionInterceptor.execute(ExceptionToMessagingExceptionExecutionInterceptor.java:27)
    at org.mule.execution.MessageProcessorNotificationExecutionInterceptor.execute(MessageProcessorNotificationExecutionInterceptor.java:61)
    at org.mule.execution.MessageProcessorExecutionTemplate.execute(MessageProcessorExecutionTemplate.java:47)
    at org.mule.processor.chain.SimpleMessageProcessorChain.doProcess(SimpleMessageProcessorChain.java:47)
    at org.mule.processor.chain.AbstractMessageProcessorChain.process(AbstractMessageProcessorChain.java:70)
    at org.mule.processor.chain.InterceptingChainLifecycleWrapper.doProcess(InterceptingChainLifecycleWrapper.java:54)
    at org.mule.processor.chain.AbstractMessageProcessorChain.process(AbstractMessageProcessorChain.java:70)
    at org.mule.processor.chain.InterceptingChainLifecycleWrapper.access$001(InterceptingChainLifecycleWrapper.java:26)
    at org.mule.processor.chain.InterceptingChainLifecycleWrapper$1.process(InterceptingChainLifecycleWrapper.java:70)
    at org.mule.execution.ExceptionToMessagingExceptionExecutionInterceptor.execute(ExceptionToMessagingExceptionExecutionInterceptor.java:27)
    at org.mule.execution.MessageProcessorNotificationExecutionInterceptor.execute(MessageProcessorNotificationExecutionInterceptor.java:61)
    at org.mule.execution.MessageProcessorExecutionTemplate.execute(MessageProcessorExecutionTemplate.java:47)
    at org.mule.processor.chain.InterceptingChainLifecycleWrapper.process(InterceptingChainLifecycleWrapper.java:65)
    at org.mule.execution.ExceptionToMessagingExceptionExecutionInterceptor.execute(ExceptionToMessagingExceptionExecutionInterceptor.java:27)
    at org.mule.execution.MessageProcessorNotificationExecutionInterceptor.execute(MessageProcessorNotificationExecutionInterceptor.java:61)
    at org.mule.execution.MessageProcessorExecutionTemplate.execute(MessageProcessorExecutionTemplate.java:47)
    at org.mule.processor.chain.SimpleMessageProcessorChain.doProcess(SimpleMessageProcessorChain.java:47)
    at org.mule.processor.chain.AbstractMessageProcessorChain.process(AbstractMessageProcessorChain.java:70)
    at org.mule.processor.chain.InterceptingChainLifecycleWrapper.doProcess(InterceptingChainLifecycleWrapper.java:54)
    at org.mule.processor.chain.AbstractMessageProcessorChain.process(AbstractMessageProcessorChain.java:70)
    at org.mule.processor.chain.InterceptingChainLifecycleWrapper.access$001(InterceptingChainLifecycleWrapper.java:26)
    at org.mule.processor.chain.InterceptingChainLifecycleWrapper$1.process(InterceptingChainLifecycleWrapper.java:70)
    at org.mule.execution.ExceptionToMessagingExceptionExecutionInterceptor.execute(ExceptionToMessagingExceptionExecutionInterceptor.java:27)
    at org.mule.execution.MessageProcessorNotificationExecutionInterceptor.execute(MessageProcessorNotificationExecutionInterceptor.java:61)
    at org.mule.execution.MessageProcessorExecutionTemplate.execute(MessageProcessorExecutionTemplate.java:47)
    at org.mule.processor.chain.InterceptingChainLifecycleWrapper.process(InterceptingChainLifecycleWrapper.java:65)
    at org.mule.transport.AbstractMessageReceiver.routeEvent(AbstractMessageReceiver.java:473)
    at org.mule.transport.AbstractTransportMessageProcessTemplate.routeEvent(AbstractTransportMessageProcessTemplate.java:84)
    at org.mule.execution.FlowProcessingPhase$1$1.process(FlowProcessingPhase.java:75)
    at org.mule.execution.FlowProcessingPhase$1$1.process(FlowProcessingPhase.java:64)
    at org.mule.execution.ExecuteCallbackInterceptor.execute(ExecuteCallbackInterceptor.java:20)
    at org.mule.execution.HandleExceptionInterceptor.execute(HandleExceptionInterceptor.java:34)
    at org.mule.execution.HandleExceptionInterceptor.execute(HandleExceptionInterceptor.java:18)
    at org.mule.execution.BeginAndResolveTransactionInterceptor.execute(BeginAndResolveTransactionInterceptor.java:58)
    at org.mule.execution.ResolvePreviousTransactionInterceptor.execute(ResolvePreviousTransactionInterceptor.java:48)
    at org.mule.execution.SuspendXaTransactionInterceptor.execute(SuspendXaTransactionInterceptor.java:54)
    at org.mule.execution.ValidateTransactionalStateInterceptor.execute(ValidateTransactionalStateInterceptor.java:44)
    at org.mule.execution.IsolateCurrentTransactionInterceptor.execute(IsolateCurrentTransactionInterceptor.java:44)
    at org.mule.execution.ExternalTransactionInterceptor.execute(ExternalTransactionInterceptor.java:52)
    at org.mule.execution.RethrowExceptionInterceptor.execute(RethrowExceptionInterceptor.java:32)
    at org.mule.execution.RethrowExceptionInterceptor.execute(RethrowExceptionInterceptor.java:17)
    at org.mule.execution.TransactionalErrorHandlingExecutionTemplate.execute(TransactionalErrorHandlingExecutionTemplate.java:113)
    at org.mule.execution.FlowProcessingPhase$1.run(FlowProcessingPhase.java:63)
    at org.mule.work.WorkerContext.run(WorkerContext.java:311)
    at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918)
    at java.lang.Thread.run(Thread.java:662)
Caused by: java.net.SocketTimeoutException: Read timed out
        at java.net.SocketInputStream.socketRead0(Native Method)
        at java.net.SocketInputStream.read(SocketInputStream.java:129)
        at com.sun.net.ssl.internal.ssl.InputRecord.readFully(InputRecord.java:422)
异常堆栈是:
1.读取超时(java.net.SocketTimeoutException)
java.net.SocketInputStream:-2(空)
2.无法通过端点路由事件:DefaultOutboundEndpoint{endpointUri=https://***************/accountviews.asmx,connector=HttpsConnector
{
name=HTTP\u HTTPS
生命周期=开始
这=b6a6597
ConcurrentTransacticedReceiver的数量=4
CreateMultipleTransactedReceiver=true
已连接=真
supportedProtocols=[https]
服务覆盖=
}
,name='endpoint.https.************.accountviews.asmx',mep=REQUEST_RESPONSE,properties={},transactionConfig=Transaction{factory=null,action=interference,timeout=0},deleteUnceptedMessages=false,initialState=started,responseTimeout=20000,endpointEncoding=UTF-8,disableTransportTransformer=false}。消息负载的类型为:PostMethod(org.mule.api.transport.DispatchException)
org.mule.transport.http.HttpClientMessageDispatcher:155(http://www.mulesoft.org/docs/site/current3/apidocs/org/mule/api/transport/DispatchException.html)
--------------------------------------------------------------------------------
根异常堆栈跟踪:
java.net.SocketTimeoutException:读取超时
位于java.net.SocketInputStream.socketRead0(本机方法)
位于java.net.SocketInputStream.read(SocketInputStream.java:129)
在com.sun.net.ssl.internal.ssl.InputRecord.readFully上(InputRecord.java:422)
+3个以上(为所有内容设置调试级别日志或“-Dmule.verbose.exceptions=true”)
********************************************************************************
WARN 2014-01-09 08:46:45150[[testproxy1].connector.http.mule.default.receiver.02]org.apache.cxf.phase.PhaseInterceptorChain:用于{http://AccountViews.secure.themembersgroup.com}AccountView引发异常,正在解除
org.apache.cxf.interceptor.Fault:未能通过端点路由事件:DefaultOutboundEndpoint{endpointUri=https://************/accountviews.asmx,connector=HttpsConnector
{
name=HTTP\u HTTPS
生命周期=开始
这=b6a6597
ConcurrentTransacticedReceiver的数量=4
CreateMultipleTransactedReceiver=true
已连接=真
supportedProtocols=[https]
服务覆盖=
}
,name='endpoint.https.************.accountviews.asmx',mep=REQUEST_RESPONSE,properties={},transactionConfig=Transaction{factory=null,action=interference,timeout=0},deleteUnceptedMessages=false,initialState=started,responseTimeout=20000,endpointEncoding=UTF-8,disableTransportTransformer=false}。消息负载的类型为:PostMethod
在org。