Я пытаюсь сгенерировать код Java из следующего WSDL: http://www.ebi.ac.uk/Tools/services/soap/emboss_needle?wsdl
$ wsimport -keep "http://www.ebi.ac.uk/Tools/services/soap/emboss_needle?wsdl"
однако он генерирует JAXBElement<String>
вместо String
. Итак, я попытался использовать привязку xjb, как описано здесь: Избавьтесь от JAXBElement в классах, сгенерированных wsimport, вызываемых из ant
<jxb:bindings xmlns:jxb="http://java.sun.com/xml/ns/jaxb" xmlns:xs="http://www.w3.org/2001/XMLSchema" version="2.0">
<jxb:bindings>
<jxb:globalbindings generateelementproperty="false">
<jxb:javatype name="java.lang.String" xmltype="xs:string"/>
</jxb:globalbindings>
</jxb:bindings>
</jxb:bindings>
но wsimport вызывает исключение:
$ wsimport -keep -b binding.xjb "http://www.ebi.ac.uk/Tools/services/soap/emboss_needle?wsdl"
[ERROR] The "jxb:globalbindings" customization is not associated with any schema element.
line 6 of file:/home/lindenb/tmp/WS/biostar14996.xjb
Схема XSD встроена в документ WSDL. Какой URI я должен указать для jxb: schemaLocation? Как я могу решить эту проблему?
Спасибо,
P.