【发布时间】:2013-09-28 08:08:10
【问题描述】:
我有一个相当典型的 EAR 项目,具有库和 EJB 依赖项; Eclipse 中没有编译错误,项目可以在 Oracle Weblogic 服务器上成功发布。但是当我在本地访问应用程序时,它会在第一次调用超类中的方法时给出“NoSuchMethodError”异常。方法本身并不重要,因为我证明,如果我注释掉第一个错误,它会在随后第一次调用超类中的方法时中断。
但是,如果我将主项目导出到 EAR 并通过本地 Weblogic 控制台部署它,它可以正常工作并且不会出现任何异常。因此,问题是 Eclipse 本地的(或者,更多确切地说,OEPE)。
Weblogic 是 11gR1 (10.3.5) 版本。 Eclipse 是随服务器一起提供的 OEPE,版本 3.2.7。 我的项目的所有源文件和域目录都和我的同行一样,不用说没有问题。
这是堆栈跟踪:
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)
....
一如既往地感谢任何帮助。
【问题讨论】:
-
这看起来很像您使用不同版本的 jar,提供
PreHome或ActionBase。 -
我是这么想的,但是找不到证据。这个问题不是 PreHome 独有的:any 调用超类的操作会给出异常。我正在尝试查找超类是否始终相同。
-
甚至 more 奇怪的是(感谢 sp.),有时它确实有效。我不知道为什么。
标签: java eclipse oracle oracle11g