views:

342

answers:

1

I am having trouble getting web services to work in ColdFusion. This works just fine on my development server, but when I gave it to QA they are getting this error on their server. Both are running ColdFusion 8.0.1.195765. Is there some system setting I'm missing that would cause this behavior?

My very simple CFC file:

<cfcomponent output="false">

  <cffunction name="Test" access="remote" returntype="any">
    <cfreturn />
  </cffunction>

</cfcomponent>

When I go to http://www.example.com/zSoapTest.cfc?wsdl I get the following error:

AXIS error

Could not generate WSDL!

There is no SOAP service at this location

Fault - The AXIS engine could not find a target service to invoke!  targetService is null

AxisFault
 faultCode: {http://xml.apache.org/axis/}Server.NoService
 faultSubcode: 
 faultString: The AXIS engine could not find a target service to invoke!  targetService is null
 faultActor: 
 faultNode: 
    {http://xml.apache.org/axis/}stackTrace:The AXIS engine could not find a target service to invoke!  targetService is null
    at org.apache.axis.server.AxisServer.generateWSDL(AxisServer.java:475)
    at org.apache.axis.transport.http.QSWSDLHandler.invoke(QSWSDLHandler.java:68)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        ...

I've done some web searching and found this method to flush the web services cache, but that doesn't work for me. I don't think it even has a cache of the WSDL, I think it's failing before that.

+2  A: 

I've just tried your cfc on my ColdFusion 8 (8,0,1,195765) and ColdFusion 9 and correctly get a wdsl definition returned.

I would suggest checking that the QA server is correctly set up and that target service definition hasn't been deleted/damaged/changed. This article might help http://kb2.adobe.com/cps/182/tn_18271.html

Stephen Moretti
Thanks, that eventually got me to the solution: missing `client-config.wsdd` and `server-config.wsdd` files in C:\ColdFusion8\wwwroot\WEB-INF. I'm still not sure why these files were missing though.
Kip