Это сводит меня с ума. У меня есть схема, встроенная в WSDL, которая нуждается в настройке, потому что WSIMPORT выдает следующую ошибку
[ERROR] Complex type and its child element share the same name "DomainsMap".
Use a class customization to resolve this conflict.
line 878 of file:/C:/jaxws-ri/bin/ArtesiaWebServices.wsdl
1) У меня нет контроля над этим WSDL, так как я создаю первого клиента WSDL, и я ожидаю, что он будет пересматривать версии без каких-либо официальных консультаций или выпуска для меня.
2) Это больше не допустимо, чтобы вручную исправить это столкновение имен, потому что мне нужно включить конструкцию заглушек в автоматизированную цепочку сборки.
Я должен использовать внешний файл настроек. Я просто не могу понять, как заставить работать настройку.
Вот оскорбительный фрагмент WSDL:
<wsdl:definitions>
<wsdl:types>
<xs:schema>
.
.
.
<xs:complexType final="extension restriction" name="domainsMap">
<xs:sequence>
<xs:element name="domainsMap">
<xs:complexType>
<xs:sequence>
<xs:element maxOccurs="unbounded" minOccurs="0" name="entry">
<xs:complexType>
<xs:sequence>
<xs:element minOccurs="0" name="key" type="xs:string"/>
<xs:element minOccurs="0" name="value" type="tns:domainValueMap"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
Это было бы отличным шансом для вас улучшить свои навыки JAXB. Любая помощь будет принята с благодарностью.
Я часами смотрел на документацию по jaxb, но все равно не повезло. Я могу предложить весь WSDL, если это будет необходимо. Кто-нибудь может помочь?