У меня есть этот довольно типичный проект EAR с зависимостями библиотеки и EJB; никакие ошибки компиляции в Eclipse и проект не могут быть успешно опубликованы на сервере Oracle Weblogic. Но когда я получаю доступ к приложению локально, он дает исключение «NoSuchMethodError» при первом вызове метода в суперклассе. Сам метод не важен, так как я доказал, что, если я прокомментирую первую ошибку, он прерывается при первом последующем вызове метода в суперклассе.Weird проблема развертывания EAR в Weblogic 11g
Но, если я экспортирую основной проект в EAR и разворачиваю его через локальную консоль Weblogic , он отлично работает и не дает никаких исключений. Итак, проблема локальна для Eclipse (или, точнее, OEPE).
Weblogic - версия 11gR1 (10.3.5). Eclipse - это OEPE, который поставляется вместе с сервером, версия 3.2.7. Все исходные файлы для моих проектов и каталог домена совпадают с моими сверстниками, которые, разумеется, не имеют проблем.
Это StackTrace:
java.lang.NoSuchMethodError
at hse.core.struts.action.ActionBase.beaInvoke(ActionBase.java)
at hse.medl.web.actions.PreHome.beaInvokeSuper(PreHome.java)
at hse.medl.web.actions.PreHome$beaVersion0_584.execute(PreHome.java:29)
at hse.medl.web.actions.PreHome.execute(PreHome.java)
at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:431)
at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:236)
at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196)
at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:432)
....
Любая помощь, как всегда, ценится.
Это очень похоже на то, что вы используете разные версии флага, предоставляя либо «PreHome», либо «ActionBase». – chrylis
Я так и думал, но не могу найти доказательства. Проблема не только в PreHome: _any_ Действие, вызывающее суперкласс, дает исключение. Я пытаюсь найти, если суперкласс всегда один и тот же, или нет. – Alessandro
Даже _more_ weird (спасибо за sp.) Заключается в том, что иногда это работает. Понятия не имею почему. – Alessandro