2010-06-07 67 views
0

我們使用apache cxf 2.2.2和JaxB,我需要將導出的wsdl的wsdl:definitions名稱更改爲其他名稱。有誰知道我可以通過JAXB註釋來改變它嗎?什麼註釋/屬性定義了Jaxb中wsdl的wsdl:definitions部分?

+3

難道不是通過JAX-WS而不是JAXB? – justkt 2010-06-07 16:16:49

+0

是的,但是當你處理這些事情時,你傾向於最終使用JAXB和JAX-WS,所以混合是可以理解的。 – 2011-01-10 22:42:34

回答

3

假設您的意思是元素的name屬性,它由主實現類中@WebService批註的serviceName屬性設置。如果你需要更深層次的配置,你必須告訴CXF提供你自己的自定義WSDL,而不是從註釋派生的(我沒有做過這樣的嘗試)。

+0

在@WebService註釋中有一個名爲'wsdlLocation'的方法,您可以在其中配置位置。該位置是類路徑中相對於部署中某些內容的文件,但我認爲它在實現中並不一致(有些需要在META-INF中使用,有些則不需要),因此您必須嘗試使用​​該位置。 – Yishai 2010-06-14 15:47:07

+0

對不起,花了這麼長時間才能給你答案的功勞 - 我忘記了這個問題的背景,並且無法測試這個答案的有效性。一位開發人員報告了成功的結果,所以我會接受這一點 - 謝謝。 – MetroidFan2002 2011-01-10 17:55:06

+0

@Metroid:感謝您煞費苦心(與您的同事一起)檢查我寫的內容。 – 2011-01-10 22:41:19