如何使用Grails和CXF在Web服务中生成targetNamespace

时间:2012-09-26 14:43:07

标签: web-services grails namespaces cxf

我正在使用Grails(2.1.0)和CXF插件(0.9.0)生成Web服务端点,我的wsdl是使用包名称作为targetNamespace生成的。

根据this教程,我应该使用@WebService注释我的类,并使用targetNamespace属性来满足我的需要但是没有用。

即使使用服务类中的注释(不使用接口),我生成的wsdl第一行是:

<wsdl:definitions name="ServiceName" targetNamespace="http://com.packageName/" xmlns:ns1="http://schemas.xmlsoap.org/soap/http" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:tns="http://com.packageName/" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:xsd="http://www.w3.org/2001/XMLSchema">

我应该如何处理正确的targetNamespace?

1 个答案:

答案 0 :(得分:3)

只有在使用

时才会读取各种@Web*注释
static expose = ['cxfjax']

在您的服务中。如果您使用的是expose = ['cxf'],则需要更改为cxfjax