在 weblogic 10.3 中运行我的 spring2.5.6,jpa(hibernate3.4) webapp 时出现一个奇怪的错误
[ERROR] Javassist Enhancement failed: com.xxx.domain.model.Scheme
java.lang.NoSuchMethodError: pcGetManagedFieldCount
at com.xxx.domain.model.Fund.<clinit>(Fund.java)
at sun.misc.Unsafe.ensureClassInitialized(Native Method)
at sun.reflect.UnsafeFieldAccessorFactory.newFieldAccessor(UnsafeFieldAc
cessorFactory.java:25)
com.xxx.domain.model.Scheme 类是 single_table 继承层次结构上抽象基金实体的映射子类实体,并且层次结构上的所有实体都出现此错误。我同时使用带注释的类和 xml 元数据来定义我的持久性类的映射。
当应用程序部署到 weblogic 时,我只会收到此错误,因此使用 junit 一切正常。我已经尝试在 javaassit.jar 上升级到最新版本。
问题在我看来像是类加载顺序的问题,但我无法弄清楚。
PS。正如 bea 所建议的,我已将以下内容添加到 weblogic.xml
<container-descriptor>
<prefer-web-inf-classes>true</prefer-web-inf-classes>
</container-descriptor>
有人有任何想法、其他配置提示或我应该进行调查的方向吗?