В настоящее время мы используем Axis2 на нашем предприятии. Наш проект включает в себя вызов нескольких веб-сервисов для диагностики неисправностей. Проблема в том, что очень часто у нас происходят изменения в WSDL (которые не представляют угрозы для жизни, так как новые типы данных и сервисы только добавляются, очень редко что-то отбрасывается), из-за чего нам также необходимо обновить наше приложение. По сути, у нас есть возможность получить новую копию WSDL, запустить ее через WSDL2java и использовать новые jar-файлы, запустить наши модульные тесты, упаковать новые jar-файлы и установить их в производство.
Хотя возможность создания заглушек в команде компиляции дает нам xmlbean-компоненты, с которыми мы можем легко работать в нашем коде уровня Java DAO, этот цикл развертывания компиляции из-за WSDL отнимает время команды. Мне было интересно, возможны ли какие-либо изменения? Существуют ли какие-либо API-интерфейсы Java, которые могут генерировать заглушки во время выполнения или обеспечивать вызов веб-службы без использования заглушек, но все же дают нам возможность работать с объектами Java, а не с документами-запросами ручной работы? Что-то вроде на этом тестовом сайте мыла . Я должен просто иметь возможность указать местоположение WSDL, и я должен просто получить объект, с помощью которого я могу получить доступ к документу (как запрос, так и ответ), а также иметь возможность изменить местоположение WSDL во время выполнения?
Не уверен, что этот тип поведения во время выполнения возможен в Java, поскольку объекты, генерируемые во время выполнения, будут иметь разные типы и т. Д. ?? не уверен ... Я видел некоторые примеры Groovy, которые приближаются к тому, что я хочу, но использование Groovy означает для нас архитектурное изменение ... и это немного сложно ... Есть ли какая-либо библиотека / API Java доступная?