function readOnly(count){ }
Starting November 20, the site will be set to read-only. On December 4, 2023,
forum discussions will move to the Trailblazer Community.
+ Start a Discussion
heiriticheiritic 

error on using external web service : Web service callout failed

Hi all..

I want to ask a question regarding visualforce.. I use an apex class that generated by wsdl.
I'll give you the link to the ABN wsdl I use : http://abr.business.gov.au/abrxmlsearch/ABRXMLSearch.asmx?WSDL

before I parse the wsdl into apex class, I need to modify the wsdl.  elementFormDefault="qualified" -> become elementFormDefault="unqualified", if not, it will get error when using the apex class. Remove wsdl:port name = ABRXMLSearchHttpGet and ABRXMLSearchHttpPost, so there is no multiple wsdl:portname. do the same thing with the wsdl:binding. parse wsdl is a success, but using the apex class, get the error response. Here is one of the error response :

System.CalloutException: Web service callout failed: WebService returned a SOAP Fault: System.Web.Services.Protocols.SoapException: Server was unable to process request. ---> System.Runtime.Remoting.RemotingException: Server encountered an internal error. For more information, turn on customErrors in the server's .config file. Server stack trace: Exception rethrown at [0]: at System.Runtime.Remoting.Proxies.RealProxy.HandleReturnMessage(IMessage reqMsg, IMessage retMsg) at System.Runtime.Remoting.Proxies.RealProxy.PrivateInvoke(MessageData& msgData, Int32 type) at BEP.Application.ABR.ABRXMLWebServices.XMLSearch.SearchByABN(String searchString, String includeHistory, String authenticationGuid) at BEP.Application.ABR.ABRXMLSearch.ABRXMLSearch.ABRSearchByABN(String searchString, String includeHistoricalDetails, String authenticationGuid) --- End of inner exception stack trace --- faultcode=soap:Server faultactor=

Am I missing something or not correctly modifying the wsdl to apex class ? For information, I can use the wsdl from .net application. Help and suggestion would be great. thanx all

regards,
edwin

SuperfellSuperfell
Can you expand on why you're doing this part : elementFormDefault="qualified" -> become elementFormDefault="unqualified"

that will change the requests we send in ways that are significant to almost every SOAP stack i'm aware of, and is probably the reason your server is returning an error.
heiriticheiritic
Sorry for incomplete information. If I don't change that, it will give an error :
System.CalloutException: Web service callout failed: Unable to parse callout response. Apex type not found for element http://abr.business.gov.au/ABRXMLSearch/=organisationName

For some request, it will give the error so I change into elementFormDefault="unqualified", the error is gone but another error shows up. Is this change the real matter of th error ?


regards,
edwin
SuperfellSuperfell
You need to make sure that the WSDL correctly defines the runtime messages, it sounds like it is not, perhaps a good Web Services diagnostics tool like SOAPScope would help.
heiriticheiritic
Okay, I'll try it first..
mba75mba75

Hi I know your post is old now but did you finally find a solution ?

I have got the same error message :  

System.CalloutException: Web service callout failed: Unable to parse callout response. Apex type not found for element http://abr.business.gov.au/ABRXMLSearch/=organisationName