Ось генерирует все классы, но не Ось2?

Я создал заглушки, используя следующие команды

Ось: java org.apache.axis.wsdl.WSDL2Java CrmDiscoveryServiceWsdl.xml: создает все классы

Axis2: wsdl2java.bat -u -uri CrmDiscoveryServiceWsdl.xml: создает только несколько классов.

       Pattern I observed is, in the wsdl:types section, it has created classes for the <s:element> types but not  <s:complexTypes>. I don't get why. I have to use those complexType elements to consume webservice.

Я также пробовал опции -pn, -ap, думал, что они могут работать, но порты не имеют к этому никакого отношения. Я понял после того, как сделал это.

Примечание. Я могу сгенерировать все с помощью Axis2, когда использую опции -ss -g, которые также генерируют серверную часть. Очевидно, это обходной путь, и мне не нужно, по крайней мере, некоторые из них.

Пожалуйста помоги.

Благодарю.

1 ответ

Я тоже это заметил с чем-то немного другим. Генерация заглушек с Axis2 1.6 против Great Plains 10, некоторые типы отсутствовали. Все они были сложными типами xsd, которые получены из других типов в определении схемы. Это вызвало только ошибку при анализе ответа, который включал эти пропущенные типы. Ошибка была выдана из ExtensionMapper.

После генерации с опцией -g дополнительные типы (включая эти отсутствующие производные типы) включаются в ExtensionMapper, и проблема устраняется.

Я не уверен, что генерация кода на стороне сервера имеет отношение к правильному синтаксическому анализу и генерации bean-компонентов adb, но теперь это работает.

В Apache Axis JIRA также есть ошибка, в которой упоминаются разные bean-компоненты при использовании -g против его использования: http://issues.apache.org/jira/browse/AXIS2-3988

Другие вопросы по тегам