Как я могу настроить префиксы пространства имен в автоматически сгенерированном WSDL Metro / JavaEE?

Я использую Java 6 + JavaEE + Tomcat 6 + Metro для веб-сервисов SOAP. В ответе префиксами пространства имен являются ns2, ns3, ns4 и т. Д. Я хотел бы иметь возможность указывать стеку веб-служб вместо использования пользовательских имен.

Как мне это сделать?

11.12.2008 10:58:27
Стив, если ответ ниже решил твою проблему, то ты должен хотя бы отозвать его, если на самом деле не примешь его в качестве ответа.
John Saunders 10.08.2009 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">
1
19.01.2009 22:17:55