2008-12-11 23 views
0

我正在使用Java 6 + JavaEE + Tomcat 6 + Metro for SOAP Web服務。在響應中,命名空間前綴是ns2,ns3,ns4等等。我希望能夠指示Web服務堆棧使用自定義名稱。如何自定義Metro/JavaEE自動生成的WSDL中的命名空間前綴?

我該怎麼做?

+0

史蒂夫,如果下面的答案解決您的問題,那麼你應該至少upvote它,如果不是真的接受它作爲答案。 – 2009-08-10 23:58:54

回答

1

使用@XmlSchema註釋(假設你使用JAXB2.x)

@XmlSchema (
    xmlns = { 
    @XmlNs(prefix = "so", 
       namespaceURI="http://stackoverflow.com/questions/358991") 
) 
) 

會導致:

<schema 
    xmlns:so="http://stackoverflow.com/questions/358991" 
    targetNamespace="http://stackoverflow.com/questions/358991">