[SalesForce] How to resolve system call out exception

I am new to webservice task . I am getting an exception like

System.CalloutException: Web service callout failed: WebService
returned a SOAP Fault: Internal Error faultcode=env:Client faultactor=

I know what is callout but dont have any idea about the remaining things specified here .
Please tell me how to resolve and what exactly the error is about ?

Best Answer

I have seen this done in two different ways

  1. on callout failure, use apex to recreate your outbound xml, send it using httpRequest and parse the response xml to get your error message

  2. add an 'error' string field to the response class. You then do your webservice call to an intermediate layer which hides these exceptions and always returns to salesforce a 'valid' response.

both of which are just workarounds to salesforce limitations