Может быть, лучший способ сделать это вручную. Но в большом проекте вам нужен какой-то инструмент, который поможет вам. Именно эта идея привела меня к поиску инструмента.
Существуют ли какие-либо средства миграции EJB для миграции EJB 2.0 на 3.x.
Может быть, лучший способ сделать это вручную. Но в большом проекте вам нужен какой-то инструмент, который поможет вам. Именно эта идея привела меня к поиску инструмента.
Существуют ли какие-либо средства миграции EJB для миграции EJB 2.0 на 3.x.
Он находился в разработке только в течение короткого времени, но какое-то время у нас был подключаемый модуль eclipse, который читал файлы ejb-jar.xml, а затем обновлял исходный код и вставлял аннотации.
Его использовал несколько раз человек, который его написал (Джонатан Галлимор), и, может быть, еще один или два раза после. По крайней мере, тогда это сработало, и если вы не боитесь закатать рукава, это может сэкономить вам недели времени.
Хотя я лично не использовал его, я наблюдал за его разработкой. Короче говоря, есть xml-версии всех аннотаций (100% линейка). Контейнер EJB должен эффективно читать XML, а затем заполнять пробелы данными аннотаций. Данные xml превосходят данные аннотаций, поэтому эта обработка в основном представляет собой преобразование аннотаций в xml. Мы взяли код обработки аннотаций/xml OpenEJB и перевернули его таким образом, чтобы вместо преобразования аннотаций в xml мы превратили xml в аннотации — аннотации, которые затем можно легко вставить обратно в исходный код через API-интерфейсы eclipse.
Если он работает, он должен работать отлично и не должен изменять логику вашего приложения. Просто преобразование xml->annotation для ваших данных дескриптора.
У вас по-прежнему будут представления EJB 2.x, но они будут настроены в виде аннотаций в вашем коде.
Однако, прежде чем делать что-либо подобное, я бы настроил модульные тесты для кода EJB 2.x, используя API EJBContainer, как упоминалось в другом вопросе. Затем используйте инструмент преобразования. Затем выполните рефакторинг представлений EJB 2.x, теперь вам не нужно постоянно возиться с xml.
Итак, в основном:
Следуйте по этому пути, и у вас должен быть счастливый переход от EJB 2.x к 3.x. Ну, настолько блаженной, насколько эта работа может быть по крайней мере :)
Да, инструменты рефакторинга IntelliJ EJB: http://www.jetbrains.com/idea/webhelp/migrating-to-ejb-3-0.html
Но я уверен, что это не единственное решение.
Ничего как такового, следующая ссылка дает представление о возможных изменениях в кодовой базе. Миграция EJB2-EJB3