It's possible that your WCF service is returning HTML. In this case, you'll want to set up a binding on the service side to return XML instead. However, this is unlikely: if it is the case, let me know and I'll make an edit with more details.
The more likely reason is that your service is throwing an error, which is returning an HTML error page. You can take a look at this blog post if you want details.
There are a few possible configurations for error pages. If you're hosting on IIS, you'll want to remove the <httpErrors> section from the WCF service's web.config file. If not, please provide details of your service hosting scenario and I can come up with an edit to match them.
Having seen your edit, you can see the full error being returned. Apache can't tell which service you want to call, and is throwing an error for that reason. The service will work fine once you have the correct endpoint - you're pointed at the wrong location. I unfortunately can't tell from the information available what the right location is, but either your action (currently null!) or the URL is incorrect.
The WEb service is a customers I don't have access to this, other than the url I am given to consume
Hi, just edited my response having seen the stack trace you put in. Looks like you need to change your endpoint address.
Hi, I checked with fiddler the app is sending the same url, albeit without the ?wsdl on the end. I can post the code for the project if it helps
?wsdl is important - it means the browser is just getting "Web Services Description Language" for the service, and not calling the service. The WSDL, if you learn to read it, will tell you the action to send. Add that action to your client's endpoint address, and you should have more luck with the service.
Sign up for our newsletter and get our top new questions delivered to your inbox (see an example).