Компилятор RMI генерирует сломанную заглушку для EJB 2.1 - PullRequest
0 голосов
/ 02 ноября 2011

Добавление нового метода в EJB без состояния (2.1) и продвижение его в интерфейс Remote через интерфейс Rad 8 приводит к тому, что компилятор RMI генерирует сломанный EJB _Stub.

Ошибка компилятора Java: тип _ChoiceApplicationService_Stub должен реализовывать унаследованный абстрактный метод ChoiceApplicationService.updateSeatsData (SeatsUpdate)

Я несколько раз удалял заглушку, и Рэд повторно вызывал RMIC не менее 10 раз, но безуспешно. Я выключил RAD и перезапустил его с директивой -clean несколько раз, но безуспешно.

Кто-нибудь имел проблемы с поколением заглушки в Rad / Exclipse и знает, что может вызвать это? К сожалению, EJB поврежден из-за плохой заглушки, и я даже не могу исправить ее, исправив заглушку, так как она будет перезаписана.

Редактировать: Похоже, что в Rad 8 / Eclipse где-то кешируется скрытый файл. Независимо от того, что я продвигаю / понижаю или вручную добавляю в интерфейс службы, сгенерированная заглушка всегда идентична.

Edit2: при демодуляции методов он также создает неисправный Tie, в котором все еще есть все «кэшированные» методы: _EJSRemoteStatelessChoiceApplicationService_77509b5e_Tie

Edit3: та же проблема с новым рабочим пространством, но она работает на нашей сборочной машине ...

1 Ответ

0 голосов
/ 03 ноября 2011

Это действительно не решает проблему, с которой я столкнулся, но в итоге я создал новый проект EJB 3, воссоздающий файлы конфигурации и копирующий исходный код Java. Я могу построить снова, и в качестве приятного побочного эффекта я использую последнюю версию EAR, EJB и т. Д.

...