0

I edited the question down, it was getting overly complicated. I disabled the SSL requirement from the web service to remove it as a concern.

I am simply trying to call a local web service from Mule. When I call it via an outbound http endpoint (passing the correct username and password), I get the following error.

Failed to route event via endpoint:
DefaultOutboundEndpoint{
    endpointUri=http://myUsername:<password>@localhost/WebServices3/apfmlead, connector=HttpConnector
    {
        name=connector.http.mule.default
        lifecycle=start
        this=6cb6a34
        numberOfConcurrentTransactedReceivers=4
        createMultipleTransactedReceivers=true
        connected=true
        supportedProtocols=[http]
        serviceOverrides=<none>
    },
    name='endpoint.http.localhost.80.WebServices3.apfmlead', mep=REQUEST_RESPONSE,
    properties={followRedirects=true, http.method=GET},
    transactionConfig=Transaction{factory=null, action=INDIFFERENT, timeout=0},
    deleteUnacceptedMessages=false, initialState=started, responseTimeout=10000,
    endpointEncoding=UTF-8, disableTransportTransformer=false}. Message payload is of type: GetMethod

If I copy the endpointUri to the browser and replace "< password >" with the actual password, the service functions correctly.

caltrop
  • 364
  • 1
  • 6
  • 15

2 Answers2

0

If the web service you are calling uses HTTPS then you have to import its certificate and configure the HTTPS connector properly:
http://www.mulesoft.org/documentation/display/current/HTTPS+Transport+Reference

Seba
  • 2,319
  • 15
  • 14
  • I tried to create and reference keystore.jks before with no luck. I tried again just now, please check edit to my question. Thanks for the suggestion. I feel like I'm really close. – caltrop Jul 16 '13 at 23:35
  • If you are not importing the certificate in the keystore you created, it won't work. – Seba Jul 17 '13 at 02:31
0

When calling the web server via browser, a popup would appear asking for username and password. I thought that was comparable to the username/password fields ind the "HTTP Settings" tab of the outbound http endpoint. By removing username and password from the HTTP Settings tab, I was able to pass authentication in through a header using a tag in the configuration xml.

It looks like my issue was just a poor understanding of web service authentication.

caltrop
  • 364
  • 1
  • 6
  • 15
  • Can you post the code for the fix that you applied to make it work? I have somewhat similar situation where I have to call .net web service secured by windows integrated authentication and it's not working so far. Full details here: http://stackoverflow.com/questions/18860924/consuming-net-asmx-web-service-from-mule-esb-throws-cxf-exception-401-unauthor – Tech Matrix Sep 19 '13 at 21:04