Использование службы SOAP 1.1, сгенерированной ServiceStack, в Flash Builder - PullRequest
1 голос
/ 02 ноября 2011

Я возился с ServiceStack , чтобы показать некоторые веб-сервисы, и был очень впечатлен.

Одним из потенциальных потребителей этих услуг будет приложение Flex.Flash Builder (Flex IDE) имеет инструмент, который автоматически генерирует прокси-классы AS3 для веб-служб SOAP на основе wsdl - на данный момент только для SOAP 1.1.

Если я воссоздаю HelloWorld учебник, и попробуйте использовать SOAP 1.1 wsdl для автоматического создания классов, я получаю следующие ошибки в Flash Builder.

There was an error during service introspection.
  The part 'parameters' has an invalid value 'HelloResponse' defined for its element. Element declarations must refer to valid values defined in a schema.
  The part 'parameters' has an invalid value 'Hello' defined for its element. Element declarations must refer to valid values defined in a schema.

Я уверен, что это проблема с инструментом Flash Builder.Мне интересно, был ли кто-нибудь успешным в автоматической генерации классов AS3 из ServiceStack wsdl?

1 Ответ

1 голос
/ 02 ноября 2011

Много месяцев назад один из первоначальных потребителей инфраструктуры ServiceStack был из Flash, использующего встроенный в Flash Builder код поколения, у нас все еще есть специальная опция для настройки WSDL для решения проблем с помощью Flash Builders при обработке Guids, которую вы используете.можно получить доступ с помощью:

  • / soap11? flash = true

Проблема все та же, если вы используете / soap12?flash = true WSDL?

Подход, который мы взяли на себя в проекте, заключался в том, чтобы использовать генератор кода Flash Builders для генерации типов, но вместо этого использовать их только в качестве DTO, которые мы повторно использовали с универсальным XmlServiceClient, позволяющимнам использовать более быстрые конечные точки XML вместо SOAP.(Я где-нибудь открою исходный код, если смогу его найти).

Хотя подход, который я выбрал бы сейчас, состоял бы в простом использовании динамических моделей и конечных точек JSON, поскольку сериализатор JSON намного быстрее и меньше, чем даже конечные точки XML.

Я не могу проверить это, так как у меня не установлен Flash Builder, но если вы можете сохранить WSDL локально и поменять выходные данные так, чтобы Flash Builder понравился, я могу посмотреть на включение изменений в flash = true Флаг WSDL.

...