2009-02-09 5 views
0

Я работаю над существующим проектом Java с типичной настройкой служб dao, для которой доступно только веб-приложение. Моя работа заключается в том, чтобы добавить веб-сервисы поверх уровня услуг, но веб-службы имеют собственный функциональный анализ и datamodel. Функциональный анализ источника фокусируется на том, что возможно в различных методах обслуживания.WSDL сначала для существующего уровня обслуживания

В соответствии с требованиями хорошей практики мы использовали первую стратегию WSDL и сгенерировали связанные классы JAXB Java и SEI для веб-сервисов. После того, как частично реализованы веб-сервисы, мы заметили совпадение 70% между данными. Это привело к написанию конвертеров, которые используют классы JAXB для веб-сервисов и сопоставляют их с классами уровня обслуживания.

Customer customer = new Customer(); 
customer.setName(wsCustomer.getName()); 
customer.setFirstName(wsCustomer.getFirstName(); 
.. 

Это очень очевидный пример, некоторые другие сопоставления, где немного сложнее. Может ли кто-нибудь дать свои лучшие практики, переживания, решения таких ситуаций?

Являются ли какие-либо из этих фреймворков полезными? http://transmorph.sourceforge.net/wiki/index.php/Main_Page http://ezmorph.sourceforge.net/

Пожалуйста, не начинайте обсуждение WSDL первого против кода первого.

ответ

0

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

1

Я испытываю такую ​​же проблему в своем проекте. Я создал фабрику для сгенерированных объектов и использовал ее для создания объектов.

Customer customer = factory.createCustomer(wsCustomer); 

который изолирует код конструкции, без изменения сгенерированного кода.

+0

Хорошо, у нас есть эти заводы с методами создания для обоих направлений –

Смежные вопросы