As part of a volunteer assignment I’ve been spending a lot of time with Eclipse and Salesforce. We use Web Services to interact with Salesforce from our middle-tier, and the generated proxy code had not been updated in a few months (since the developer responsible for the code left the project).
Though I hadn’t played with Eclipse Web Services integration before, it seemed like it would be straightforward enough. I downloaded an updated WSDL, added it to my project, right-clicked on it, and chose Web Services->Generate Client.
Not so fast:
Some web searching uncovered that what this error really means is “The Web Services generation tool detected multiple versions of the javax.xml.soap plug-in installed. Resolve this error by removing the conflicting plug-in.”
Sure enough, when I checked in Eclipse there were two versions.
I encountered two speed bumps when testing this theory:
- There’s no easy way to uninstall a plug-in within the Eclipse UI, so I had to resort to removing the directory from eclipse\plugins directly from Windows Explorer.
- Which version should I remove? It took me two tries to figure out which version was causing the error. Turns out that newer is not always better…in this case 1.3 was at fault and 1.2 (javax.xml.soap_1.2.0.v200905122109) was the version to keep.