IntelliJ: XDoclet, EJB и т. Д. - PullRequest
       24

IntelliJ: XDoclet, EJB и т. Д.

1 голос
/ 27 июля 2010

Я унаследовал существующий проект IntelliJ и, потратив некоторое время на него, я почти все понял.

Единственное место, где я застрял, это то, что я вижу тонну EJB.

Я вижу, что есть EJB (персистентность, управляемая контейнером), и я хотел бы создать новый бин.С этим EJB все исходные файлы начинаются с:

/*
* Generated by XDoclet - Do not edit!
*/

Как создаются эти файлы?Я не вижу ничего в пользовательском интерфейсе, чтобы использовать их для создания.

Ответы [ 2 ]

1 голос
/ 28 июля 2010

Ваш проект использует EJB 2.x и EJB 2.x довольно многословно.Для каждого EJB вы должны написать реализацию Bean, Remote интерфейс, Home интерфейс и вести записи в дескрипторе развертывания ejb-jar.xml и т. Д. Это много вещей, с некоторыми избыточностями, и этоне легко поддерживать.

И вот тут XDoclet входит в картину.XDoclet - это механизм генерации кода, созданный для создания EJB-компонентов (для упрощения разработки).XDoclet анализирует метаданные, которые вы добавляете в источники Java, используя специальный тег JavaDoc, и генерирует из него XML-дескрипторы и / или исходный код.

Таким образом, в основном идея заключалась в том, чтобы предоставить только реализацию Bean, чтобы добавитьспециальные @ejb комментарии JavaDoc, а также генерирование остального из него.И само поколение, вероятно, было выполнено с использованием Ant и задачи Ant * <ejbdoclet .. /> (или, возможно, Maven, но идея похожа).

Так что не ожидайте найти специальный пункт меню в IntelliJ, я не думаю, что IntelliJ предоставляет что-то особенное для XDoclet.Вместо этого найдите build.xml (сценарий сборки Ant) или, возможно, сценарий Maven и посмотрите, сможете ли вы получить этот файл, сгенерированный во время сборки, именно так и предполагается его использовать.

Затем,имитируйте то, что уже сделано для существующего компонента - посмотрите на реализацию компонента - чтобы добавить свой новый объектный компонент CMP.И я искренне желаю вам удачи, потому что ваш проект выглядит пыльным ... Я думал, что никто больше не использует EJB 2.x Entity Beans.

1 голос
/ 27 июля 2010

XDoclet - это программа, которая принимает комментарии и преобразует их в XML.Вид аннотации бедного человека.Это было круто, еще до того, как появились аннотации для таких вещей, как спящий режим (генерировал длинные скучные XML-файлы, необходимые для каждого объекта).

Вы можете прочитать об этом здесь

http://www.xdoclet.net/xdoclet/index.html

Существуют различные плагины, которые делают xdoclet, но если проект не слишком большой, я бы порекомендовал отойти.Чтобы отодвинуться:

1) Удалите все комментарии xdoclet (необязательно, но следующий парень меньше запутает)
2) Возьмите все файлы .xml и сочтите их редактируемыми вручную ... так что храните их вваш контроль версий, а не генерировать во время выполнения.
3) В будущем, когда все изменится, отредактируйте xml вручную вместо изменения комментария xdoclet и создания новых файлов xml.
4) Медленно преобразуйте в аннотацию или что-то в этом роде.более современный ...

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...