Я должен предоставить интерфейс для набора веб-сервисов, для которых я сгенерировал заглушки кода и привязку объекта.Многие из транзакций имеют общую объектную модель и, таким образом, большая часть сгенерированного кода перекрывается.Обычно это не представляет проблемы, так как я бы просто использовал один и тот же код, поскольку wsdl связывал бы те же файлы xsd.
К сожалению, здесь поставщик этих служб разделил xsd, так что каждый из них связывается сотдельный набор (в основном копия) тех же файлов.В своей спецификации они утверждают, что реализация на стороне клиента должна изолировать каждый веб-сервис для облегчения обслуживания.По сути, они хотят иметь возможность изменять xsd для одного веб-сервиса, оставляя все остальные нетронутыми.
Вопрос заключается в следующем:
Как я могу интегрировать эти различные наборы сгенерированных классов водна и та же программа, чтобы каждый сервис предоставлял свои функциональные возможности, не мешая своим братьям?
Одним из решений, которое я думал, было создание фасада для каждого из них, который предоставил бы желаемую функциональность и объектную модель, чтобы фактическая реализация осталасьскрытый.Тогда, несмотря на умное использование пользовательских загрузчиков классов, каждый фасад будет загружать конкретный jar, содержащий сгенерированный код для этой конкретной службы.
Есть мысли?идеи?с каким опытом вы столкнулись с подобной проблемой?
спасибо