首页 > 解决方案 > WebLogic 12c 中的 org.springframework.aop.framework.AopConfigException 错误

问题描述

我正在将 WebLogic Server 11g (10.3.6.0) 升级到 12c (12.2.1.3.0)。

我将war文件安装到12c服务器上没有问题。然后,我尝试启动模块。weblogic.application.ModuleException: java.lang.RuntimeException: java.lang.ClassNotFoundException: org.springframework.aop.framework.AopConfigException由于缺少特定的类文件,我遇到了错误。看起来类文件属于“spring-aop-2.5.2.jar”。

当我将相同的war 文件部署到WebLogic Server 11g 环境中时,我没有发现任何问题。我确保war文件中存在“spring-aop-2.5.2.jar”。我正在为 SpringFramework 使用 2.5.2 版本。我怀疑这也可能是一个问题。

根据我的研究,有些人建议<package-name>net.sf.cglib.*</package-name><prefer-application-packages>你的weblogic-application.xml. 我的weblogic-application.xml项目或war文件中没有。我只看到服务器上的文件。尽管我将标签附加到weblogic-application.xml中,但我仍然收到相同的错误。

我应该根据我的描述配置其他任何东西吗?任何想法?

标签: weblogic12c

解决方案


遇到同样的问题,我通过将 spring 和 cglib jar 放在 ear APP-INF/lib 文件夹中并使用以下 META-INF/weblogic-application.xml 来让它工作

<?xml version='1.0' encoding='UTF-8'?>
<weblogic-application xmlns="http://xmlns.oracle.com/weblogic/weblogic-application" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://xmlns.oracle.com/weblogic/weblogic-application http://xmlns.oracle.com/weblogic/weblogic-application/1.3/weblogic-application.xsd">
    <prefer-application-packages>
        <package-name>net.sf.cglib.*</package-name>
        <package-name>org.springframework.*</package-name>
    </prefer-application-packages>
</weblogic-application>

据我了解,重要的是:

  • cglib 和 spring jar 都在同一个类路径文件夹中
  • 两者都存在于“首选应用程序包”中

由于某种原因,在我的 .war 文件中的 weblogic.xml 中使用“prefer-application-packages”似乎不起作用。


推荐阅读