Copy link to clipboard
Copied
Hello everyone,
we recently upgraded from Coldfusion 8 to Coldfusion 10 and we found a business-stopping bug:
In Coldfusion 10 Administrator console go to DATA & SERVICES -> Web Services.
There add a web-service with WSDL link http://developer.ebay.com/webservices/latest/ebaySvc.wsdl
Other input values have no affect in this issue.
You will then receive a Coldfusion error:
Template: /CFIDE/Administrator/extensions/webservices.cfm
Diagnostics: javax.wsdl.Operation.getExtensionAttributes()Ljava/util/Map; null
The error occurred on line 141.
Same error if you try to instantiate an ebay web service object with given WSDL from inside the cfscript.
This is a serious show stopper since ebay API no longer work with Coldfusion 10 and we were forced to rollback to Coldfusion 8.
Any help would be highly appreciated!
P.S. other non-ebay WSDLs seem to add fine to CF10.
Adam, Consumption of the web service will also be impacted. The version decides which framework is used for generating the client side stubs.
DmitriD, could you please post the code used for testing. Where did you try to set the version? For consuming you should set the version in CFInvoke or CreateObject(). If you change the server level wsversion, it is used while publishing only.
<cfscript>
ws = createObject("webservice","http://developer.ebay.com/webservices/latest/ebaySvc.wsdl", {ws
...Copy link to clipboard
Copied
CF10 is upgraded to new Axis2 engine and it is used by default. Would that be cuasing an issue?
There is a setting in admin where you can change the webservice enginer version to 1. Can you try and check if it helps resolve the issue for you?
Copy link to clipboard
Copied
Hemant, I can understand that CF using Axis2 vs whatever CF9 used (Axis1, I guess?) would impact how CF publishes its own web services, but this shouldn't impact calling third party web services, surely? How does that make sense?
--
Adam
Copy link to clipboard
Copied
Adam, Consumption of the web service will also be impacted. The version decides which framework is used for generating the client side stubs.
DmitriD, could you please post the code used for testing. Where did you try to set the version? For consuming you should set the version in CFInvoke or CreateObject(). If you change the server level wsversion, it is used while publishing only.
<cfscript>
ws = createObject("webservice","http://developer.ebay.com/webservices/latest/ebaySvc.wsdl", {wsversion="1"});
WriteDump(ws);
</cfscript>
I tried the above code and it is working fine for me. Please check and let me know.
Thanks,
Paul
Copy link to clipboard
Copied
This worked Paul!
But how did you thought of that? I mean there's nothing said about wsversion in CreateObject tag (checked CF9 reference since there is no CreateObject reference for CF10 yet):
http://help.adobe.com/en_US/ColdFusion/9.0/CFMLRef/WSc3ff6d0ea77859461172e0811cbec22c24-6978.html
or in WSDL2Java Reference:
http://ws.apache.org/axis/java/reference.html#WSDL2JavaReference
I would never thought of that myself
Thank you very much Paul.
Copy link to clipboard
Copied
Thank you for your reply Hemant.
tried changing versions but as Adam said below - it has no affect on the issue (tried restarting CF with webservice engine version 1 or 2). No effect