We have downloaded the Partner.wsdl version 37.0 from Salesforce, which we use with our application to connect to Salesforce(using AXIS) to read/write records and to build the metadata locally read from Salesforce using the Salesforce API 37. To build metadata we use the Salesforce API describeSObjects() Previously we did the same for API version 32, that time we could build the metadata objects using the " https://login.salesforce.com/services/Soap/u/32", as well as any lower version of the API

But now when we have done the same procedure with API 37, we can only access the Salesforce Metadata Objects using API 37, "https://login.salesforce.com/services/Soap/u/37.0". If we try with any older API version like API 36 or API 35, it throws the excepotion as mentioned below

[10/28/16 24:42:21:324 IST] 561 org.apache.axis.client.Call invoke SEVERE Exception: java.lang.IllegalArgumentException at org.apache.axis.encoding.ser.SimpleDeserializer.onEndElement(SimpleDeserializer.java:176) at org.apache.axis.encoding.DeserializerImpl.endElement(DeserializerImpl.java:502) at org.apache.axis.encoding.DeserializationContext.endElement(DeserializationContext.java:1087) at org.apache.axis.message.SAX2EventRecorder.replay(SAX2EventRecorder.java:171) at org.apache.axis.message.MessageElement.publishToHandler(MessageElement.java:1141) at org.apache.axis.message.RPCElement.deserialize(RPCElement.java:236) at org.apache.axis.message.RPCElement.getParams(RPCElement.java:384) at org.apache.axis.client.Call.invoke(Call.java:2467) at org.apache.axis.client.Call.invoke(Call.java:2366) at org.apache.axis.client.Call.invoke(Call.java:1812) at com.sforce.soap.partner.SoapBindingStub.describeSObjects(SoapBindingStub.java:4088) at com.ibm.is.erp.salesforce.core.SalesForceRepository.retrieveObjectsAttributes(SalesForceRepository.java:301)

Is this an expected behavior

1 Answer 1


The API is not designed to work like that, you have to use the API version that matches the WSDL version. Yes, by random chance you may find that certain API response work from different API versions with the WSDL you have, but thats just coincidence.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.