2012-09-26 65 views
3

我正在使用Grails(2.1.0)和CXF插件(0.9.0)來生成Web服務端點,並且正在使用包名稱生成我的wsdl,作爲targetNamespace。如何使用Grails和CXF在Web服務中生成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"> 

我應該爲一個正確的目標名稱嗎?如果您在服務中使用

static expose = ['cxfjax'] 

+1

你在服務中使用'expose = ['cxfjax']'嗎?我認爲它不會與'expose = ['cxf']'一起工作。 –

+0

@IanRoberts我正在使用'expose = ['cxf']'。更改爲'expose = ['cxfjax]''並且targetNamespace已正確生成 – fzampa

+0

很高興幫助。我已將我的評論寫入答案,以便您接受它。 –

回答

3

各種@Web*註解是隻讀的。如果您使用的是expose = ['cxf'],則需要更改爲cxfjax

相關問題