2010-01-19 3 views
1

Я пытаюсь настроить файл конфигурации для Mule ESB 2.2.1, который направляет входящие запросы в другое поле. Это кажется прямым, но я получаю связь отказался от исключений, и я не уверен, почему.Создать проход с Mule ESB 2.2.1

Вот модель от моего Mule файла конфигурации:

<model name="ProxySample"> 
    <service name="HttpProxyService"> 
     <inbound> 
      <http:inbound-endpoint address="http://localhost:8787" synchronous="true"/> 
     </inbound> 
     <outbound> 
      <pass-through-router> 
       <outbound-endpoint address="http://server2.xyz.com:8080#[header:http.request]" synchronous="true"/> 
      </pass-through-router> 
     </outbound> 
    </service> 
</model> 

Я просматривающий к http://localhost:8787/my-site в моем браузере, думая, что это будет путь к http://server2.xyz.com:8080/my-site, но я получаю отказ в соединении ошибки.

Вот вывод на консоль с сервера Mule:

********************************************************************** 
* Mule ESB and Integration Platform         * 
* Version: 2.2.1 Build: 14422          * 
* MuleSource, Inc.             * 
* For more information go to http://mule.mulesource.org    * 
*                 * 
* Server started: 1/19/10 10:43 AM         * 
* Server ID: 6802537d-0511-11df-bb89-710580f6c729     * 
* JDK: 1.6.0_18 (mixed mode, sharing)        * 
* OS encoding: UTF-8, Mule encoding: UTF-8       * 
* OS: Windows XP - Service Pack 3 (5.1, x86)       * 
* Host:          * 
*                 * 
* Agents Running: None            * 
********************************************************************** 
INFO 2010-01-19 10:43:50,681 [connector.http.0.receiver.2] org.mule.transport.http.HttpClientMessageDispatcher: Connected: endpoint.outbound.http://localhost:8080#[header:http.request] 
ERROR 2010-01-19 10:43:54,665 [connector.http.0.receiver.2] org.mule.DefaultExceptionStrategy: 
******************************************************************************** 
Message    : Failed to route event via endpoint: [email protected] Message payload is of type: GetMethod 
Type     : org.mule.api.transport.DispatchException 
Code     : MULE_ERROR-42999 
Payload    : [email protected] 
JavaDoc    : http://www.mulesource.org/docs/site/current2/apidocs/org/mule/api/transport/DispatchException.html 
******************************************************************************** 
Exception stack is: 
1. Connection refused: connect (java.net.ConnectException) 
    java.net.PlainSocketImpl:-2 (null) 
2. Failed to route event via endpoint: [email protected] Message payload is of type: GetMethod (org.mule.api.transport.DispatchException) 
    org.mule.transport.http.HttpClientMessageDispatcher:127 (http://www.mulesource.org/docs/site/current2/apidocs/org/mule/api/transport/DispatchException.html) 
******************************************************************************** 
Root Exception stack trace: 
java.net.ConnectException: Connection refused: connect 
    at java.net.PlainSocketImpl.socketConnect(Native Method) 
    at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:333) 
    at java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:195) 
    at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:182) 
    at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:366) 
    at java.net.Socket.connect(Socket.java:525) 
    at java.net.Socket.connect(Socket.java:475) 
    at java.net.Socket.<init>(Socket.java:372) 
    at java.net.Socket.<init>(Socket.java:246) 
    at org.apache.commons.httpclient.protocol.DefaultProtocolSocketFactory.createSocket(DefaultProtocolSocketFactory.java:80) 
    at org.apache.commons.httpclient.protocol.DefaultProtocolSocketFactory.createSocket(DefaultProtocolSocketFactory.java:122) 
    at org.apache.commons.httpclient.HttpConnection.open(HttpConnection.java:707) 
    at org.apache.commons.httpclient.MultiThreadedHttpConnectionManager$HttpConnectionAdapter.open(MultiThreadedHttpConnectionManager.java:1361) 
    at org.apache.commons.httpclient.HttpMethodDirector.executeWithRetry(HttpMethodDirector.java:387) 
    at org.apache.commons.httpclient.HttpMethodDirector.executeMethod(HttpMethodDirector.java:171) 
    at org.apache.commons.httpclient.HttpClient.executeMethod(HttpClient.java:397) 
    at org.apache.commons.httpclient.HttpClient.executeMethod(HttpClient.java:346) 
    at org.mule.transport.http.HttpClientMessageDispatcher.execute(HttpClientMessageDispatcher.java:120) 
    at org.mule.transport.http.HttpClientMessageDispatcher.doSend(HttpClientMessageDispatcher.java:258) 
    at org.mule.transport.AbstractMessageDispatcher.send(AbstractMessageDispatcher.java:163) 
    at org.mule.transport.AbstractConnector.send(AbstractConnector.java:2016) 
    at org.mule.endpoint.DynamicURIOutboundEndpoint.send(DynamicURIOutboundEndpoint.java:178) 
    at org.mule.DefaultMuleSession.sendEvent(DefaultMuleSession.java:327) 
    at org.mule.DefaultMuleSession.sendEvent(DefaultMuleSession.java:213) 
    at org.mule.routing.outbound.AbstractOutboundRouter$2.doInTransaction(AbstractOutboundRouter.java:152) 
    at org.mule.transaction.TransactionTemplate.execute(TransactionTemplate.java:99) 
    at org.mule.routing.outbound.AbstractOutboundRouter.send(AbstractOutboundRouter.java:159) 
    at org.mule.routing.outbound.ChainingRouter.route(ChainingRouter.java:123) 
    at org.mule.routing.outbound.DefaultOutboundRouterCollection$1.doInTransaction(DefaultOutboundRouterCollection.java:88) 
    at org.mule.transaction.TransactionTemplate.execute(TransactionTemplate.java:45) 
    at org.mule.routing.outbound.DefaultOutboundRouterCollection.route(DefaultOutboundRouterCollection.java:93) 
    at org.mule.service.AbstractService.sendToOutboundRouter(AbstractService.java:892) 
    at org.mule.model.seda.SedaService.doSend(SedaService.java:258) 
    at org.mule.service.AbstractService.sendEvent(AbstractService.java:500) 
    at org.mule.DefaultMuleSession.sendEvent(DefaultMuleSession.java:354) 
    at org.mule.routing.inbound.DefaultInboundRouterCollection.send(DefaultInboundRouterCollection.java:228) 
    at org.mule.routing.inbound.DefaultInboundRouterCollection.route(DefaultInboundRouterCollection.java:188) 
    at org.mule.transport.AbstractMessageReceiver$DefaultInternalMessageListener.onMessage(AbstractMessageReceiver.java:364) 
    at org.mule.transport.AbstractMessageReceiver.routeMessage(AbstractMessageReceiver.java:252) 
    at org.mule.transport.AbstractMessageReceiver.routeMessage(AbstractMessageReceiver.java:193) 
    at org.mule.transport.http.HttpMessageReceiver$HttpWorker.doRequest(HttpMessageReceiver.java:273) 
    at org.mule.transport.http.HttpMessageReceiver$HttpWorker.processRequest(HttpMessageReceiver.java:227) 
    at org.mule.transport.http.HttpMessageReceiver$HttpWorker.run(HttpMessageReceiver.java:190) 
    at org.mule.work.WorkerContext.run(WorkerContext.java:310) 
    at edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1061) 
    at edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:575) 
    at java.lang.Thread.run(Thread.java:619) 

******************************************************************************** 

INFO 2010-01-19 10:43:54,665 [connector.http.0.receiver.2] org.mule.transaction.TransactionTemplate: Exception Caught in Transaction template. Handing off to exception handler: [email protected] 
ERROR 2010-01-19 10:43:54,665 [connector.http.0.receiver.2] org.mule.service.DefaultServiceExceptionStrategy: 
******************************************************************************** 
Message    : Failed to route event via endpoint: [email protected] Message payload is of type: GetMethod 
Type     : org.mule.api.transport.DispatchException 
Code     : MULE_ERROR-42999 
Payload    : [email protected] 
JavaDoc    : http://www.mulesource.org/docs/site/current2/apidocs/org/mule/api/transport/DispatchException.html 
******************************************************************************** 
Exception stack is: 
1. Connection refused: connect (java.net.ConnectException) 
    java.net.PlainSocketImpl:-2 (null) 
2. Failed to route event via endpoint: [email protected] Message payload is of type: GetMethod (org.mule.api.transport.DispatchException) 
    org.mule.transport.http.HttpClientMessageDispatcher:127 (http://www.mulesource.org/docs/site/current2/apidocs/org/mule/api/transport/DispatchException.html) 
******************************************************************************** 
Root Exception stack trace: 
java.net.ConnectException: Connection refused: connect 
    at java.net.PlainSocketImpl.socketConnect(Native Method) 
    at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:333) 
    at java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:195) 
    at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:182) 
    at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:366) 
    at java.net.Socket.connect(Socket.java:525) 
    at java.net.Socket.connect(Socket.java:475) 
    at java.net.Socket.<init>(Socket.java:372) 
    at java.net.Socket.<init>(Socket.java:246) 
    at org.apache.commons.httpclient.protocol.DefaultProtocolSocketFactory.createSocket(DefaultProtocolSocketFactory.java:80) 
    at org.apache.commons.httpclient.protocol.DefaultProtocolSocketFactory.createSocket(DefaultProtocolSocketFactory.java:122) 
    at org.apache.commons.httpclient.HttpConnection.open(HttpConnection.java:707) 
    at org.apache.commons.httpclient.MultiThreadedHttpConnectionManager$HttpConnectionAdapter.open(MultiThreadedHttpConnectionManager.java:1361) 
    at org.apache.commons.httpclient.HttpMethodDirector.executeWithRetry(HttpMethodDirector.java:387) 
    at org.apache.commons.httpclient.HttpMethodDirector.executeMethod(HttpMethodDirector.java:171) 
    at org.apache.commons.httpclient.HttpClient.executeMethod(HttpClient.java:397) 
    at org.apache.commons.httpclient.HttpClient.executeMethod(HttpClient.java:346) 
    at org.mule.transport.http.HttpClientMessageDispatcher.execute(HttpClientMessageDispatcher.java:120) 
    at org.mule.transport.http.HttpClientMessageDispatcher.doSend(HttpClientMessageDispatcher.java:258) 
    at org.mule.transport.AbstractMessageDispatcher.send(AbstractMessageDispatcher.java:163) 
    at org.mule.transport.AbstractConnector.send(AbstractConnector.java:2016) 
    at org.mule.endpoint.DynamicURIOutboundEndpoint.send(DynamicURIOutboundEndpoint.java:178) 
    at org.mule.DefaultMuleSession.sendEvent(DefaultMuleSession.java:327) 
    at org.mule.DefaultMuleSession.sendEvent(DefaultMuleSession.java:213) 
    at org.mule.routing.outbound.AbstractOutboundRouter$2.doInTransaction(AbstractOutboundRouter.java:152) 
    at org.mule.transaction.TransactionTemplate.execute(TransactionTemplate.java:99) 
    at org.mule.routing.outbound.AbstractOutboundRouter.send(AbstractOutboundRouter.java:159) 
    at org.mule.routing.outbound.ChainingRouter.route(ChainingRouter.java:123) 
    at org.mule.routing.outbound.DefaultOutboundRouterCollection$1.doInTransaction(DefaultOutboundRouterCollection.java:88) 
    at org.mule.transaction.TransactionTemplate.execute(TransactionTemplate.java:45) 
    at org.mule.routing.outbound.DefaultOutboundRouterCollection.route(DefaultOutboundRouterCollection.java:93) 
    at org.mule.service.AbstractService.sendToOutboundRouter(AbstractService.java:892) 
    at org.mule.model.seda.SedaService.doSend(SedaService.java:258) 
    at org.mule.service.AbstractService.sendEvent(AbstractService.java:500) 
    at org.mule.DefaultMuleSession.sendEvent(DefaultMuleSession.java:354) 
    at org.mule.routing.inbound.DefaultInboundRouterCollection.send(DefaultInboundRouterCollection.java:228) 
    at org.mule.routing.inbound.DefaultInboundRouterCollection.route(DefaultInboundRouterCollection.java:188) 
    at org.mule.transport.AbstractMessageReceiver$DefaultInternalMessageListener.onMessage(AbstractMessageReceiver.java:364) 
    at org.mule.transport.AbstractMessageReceiver.routeMessage(AbstractMessageReceiver.java:252) 
    at org.mule.transport.AbstractMessageReceiver.routeMessage(AbstractMessageReceiver.java:193) 
    at org.mule.transport.http.HttpMessageReceiver$HttpWorker.doRequest(HttpMessageReceiver.java:273) 
    at org.mule.transport.http.HttpMessageReceiver$HttpWorker.processRequest(HttpMessageReceiver.java:227) 
    at org.mule.transport.http.HttpMessageReceiver$HttpWorker.run(HttpMessageReceiver.java:190) 
    at org.mule.work.WorkerContext.run(WorkerContext.java:310) 
    at edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1061) 
    at edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:575) 
    at java.lang.Thread.run(Thread.java:619) 

******************************************************************************** 

ERROR 2010-01-19 10:43:54,665 [connector.http.0.receiver.2] org.mule.service.DefaultServiceExceptionStrategy: 
******************************************************************************** 
Message    : Failed to route event via endpoint: [email protected] Message payload is of type: GetMethod 
Type     : org.mule.api.transport.DispatchException 
Code     : MULE_ERROR-42999 
Payload    : [email protected] 
JavaDoc    : http://www.mulesource.org/docs/site/current2/apidocs/org/mule/api/transport/DispatchException.html 
******************************************************************************** 
Exception stack is: 
1. Connection refused: connect (java.net.ConnectException) 
    java.net.PlainSocketImpl:-2 (null) 
2. Failed to route event via endpoint: [email protected] Message payload is of type: GetMethod (org.mule.api.transport.DispatchException) 
    org.mule.transport.http.HttpClientMessageDispatcher:127 (http://www.mulesource.org/docs/site/current2/apidocs/org/mule/api/transport/DispatchException.html) 
******************************************************************************** 
Root Exception stack trace: 
java.net.ConnectException: Connection refused: connect 
    at java.net.PlainSocketImpl.socketConnect(Native Method) 
    at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:333) 
    at java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:195) 
    at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:182) 
    at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:366) 
    at java.net.Socket.connect(Socket.java:525) 
    at java.net.Socket.connect(Socket.java:475) 
    at java.net.Socket.<init>(Socket.java:372) 
    at java.net.Socket.<init>(Socket.java:246) 
    at org.apache.commons.httpclient.protocol.DefaultProtocolSocketFactory.createSocket(DefaultProtocolSocketFactory.java:80) 
    at org.apache.commons.httpclient.protocol.DefaultProtocolSocketFactory.createSocket(DefaultProtocolSocketFactory.java:122) 
    at org.apache.commons.httpclient.HttpConnection.open(HttpConnection.java:707) 
    at org.apache.commons.httpclient.MultiThreadedHttpConnectionManager$HttpConnectionAdapter.open(MultiThreadedHttpConnectionManager.java:1361) 
    at org.apache.commons.httpclient.HttpMethodDirector.executeWithRetry(HttpMethodDirector.java:387) 
    at org.apache.commons.httpclient.HttpMethodDirector.executeMethod(HttpMethodDirector.java:171) 
    at org.apache.commons.httpclient.HttpClient.executeMethod(HttpClient.java:397) 
    at org.apache.commons.httpclient.HttpClient.executeMethod(HttpClient.java:346) 
    at org.mule.transport.http.HttpClientMessageDispatcher.execute(HttpClientMessageDispatcher.java:120) 
    at org.mule.transport.http.HttpClientMessageDispatcher.doSend(HttpClientMessageDispatcher.java:258) 
    at org.mule.transport.AbstractMessageDispatcher.send(AbstractMessageDispatcher.java:163) 
    at org.mule.transport.AbstractConnector.send(AbstractConnector.java:2016) 
    at org.mule.endpoint.DynamicURIOutboundEndpoint.send(DynamicURIOutboundEndpoint.java:178) 
    at org.mule.DefaultMuleSession.sendEvent(DefaultMuleSession.java:327) 
    at org.mule.DefaultMuleSession.sendEvent(DefaultMuleSession.java:213) 
    at org.mule.routing.outbound.AbstractOutboundRouter$2.doInTransaction(AbstractOutboundRouter.java:152) 
    at org.mule.transaction.TransactionTemplate.execute(TransactionTemplate.java:99) 
    at org.mule.routing.outbound.AbstractOutboundRouter.send(AbstractOutboundRouter.java:159) 
    at org.mule.routing.outbound.ChainingRouter.route(ChainingRouter.java:123) 
    at org.mule.routing.outbound.DefaultOutboundRouterCollection$1.doInTransaction(DefaultOutboundRouterCollection.java:88) 
    at org.mule.transaction.TransactionTemplate.execute(TransactionTemplate.java:45) 
    at org.mule.routing.outbound.DefaultOutboundRouterCollection.route(DefaultOutboundRouterCollection.java:93) 
    at org.mule.service.AbstractService.sendToOutboundRouter(AbstractService.java:892) 
    at org.mule.model.seda.SedaService.doSend(SedaService.java:258) 
    at org.mule.service.AbstractService.sendEvent(AbstractService.java:500) 
    at org.mule.DefaultMuleSession.sendEvent(DefaultMuleSession.java:354) 
    at org.mule.routing.inbound.DefaultInboundRouterCollection.send(DefaultInboundRouterCollection.java:228) 
    at org.mule.routing.inbound.DefaultInboundRouterCollection.route(DefaultInboundRouterCollection.java:188) 
    at org.mule.transport.AbstractMessageReceiver$DefaultInternalMessageListener.onMessage(AbstractMessageReceiver.java:364) 
    at org.mule.transport.AbstractMessageReceiver.routeMessage(AbstractMessageReceiver.java:252) 
    at org.mule.transport.AbstractMessageReceiver.routeMessage(AbstractMessageReceiver.java:193) 
    at org.mule.transport.http.HttpMessageReceiver$HttpWorker.doRequest(HttpMessageReceiver.java:273) 
    at org.mule.transport.http.HttpMessageReceiver$HttpWorker.processRequest(HttpMessageReceiver.java:227) 
    at org.mule.transport.http.HttpMessageReceiver$HttpWorker.run(HttpMessageReceiver.java:190) 
    at org.mule.work.WorkerContext.run(WorkerContext.java:310) 
    at edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1061) 
    at edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:575) 
    at java.lang.Thread.run(Thread.java:619) 

******************************************************************************** 

ответ

2

Мой проект не был правильно очистки в Eclipse. Как только я запустил правильный файл конфигурации, приведенный выше пример работал так, как предполагалось.

1

Это должно definitelly работать, если вы wan't сделать сервис более удобным для чтения, вы можете также записать неявный компонент:

<model name="ProxySample"> 
    <service name="HttpProxyService"> 
     <inbound> 
      <http:inbound-endpoint address="http://localhost:8787" synchronous="true"/> 
     </inbound> 

     <bridge-component /> 

     <outbound> 
      <pass-through-router> 
       <outbound-endpoint address="http://server2.xyz.com:8080#[header:http.request]" synchronous="true"/> 
      </pass-through-router> 
     </outbound> 
    </service> 
</model>