This issue is directly related to JIRA
XFIRE-481 ("@WebService.wsdlLocation does not resolve to files located on the application classpath").
That issue was closed with the statement "Instead of adding the @WebService.wsdlLocation attribute we now generate a service descriptor, which should help."
Unfortunately it doesn't. It is still not possible to use a relative path from your application to specify the WSDL location - using the services.xml file is no help here. I tried every possibility for <wsdlURL>, but every entry either results in a MalformedURLException or a FileNotFoundException. The only thing that works is a fully qualified path in your file system (file:/C:/somepath/xyz.wsdl
) - which is not an acceptable solution IMHO.
In XFIRE-417 Mike McAngus asked - when you have something like "file://somepath/SomeFile.wsdl" - if "somepath" isn't relative to the classpath. My answer is "No, unfortunately that doesn't work".
In XFIRE-492 he stated "The @WebService.wsdlLocation path created by WsGen in the Service Impl class is an Absolute file path on the development machine where WsGen was run. In most cases, the developer will still need to modify this path to a path relative to the running service's classpath." I'd really love to do that, but its not possible.
So this problem is already mentioned in several issues, but unfortunately its stil not fixed.