weblogic11g 部署spring项目报错

  最近做了一个项目是基于springside的框架,但是客户那边是要求部署到tomcat的。

  按照常规我把weblogic.xml放到项目中,贴出weblogic代码:

<?xml version='1.0' encoding='UTF-8'?>
<weblogic-web-app xmlns="http://www.bea.com/ns/weblogic/weblogic-web-app">    
<charset-params>
        <input-charset>
            <resource-path>/</resource-path>
            <java-charset-name>UTF-8</java-charset-name>
        </input-charset>
    </charset-params>
    <jsp-descriptor>
       <precompile>true</precompile>
    </jsp-descriptor>

    <container-descriptor>
          <prefer-web-inf-classes>true</prefer-web-inf-classes>
    </container-descriptor>    
    
    <context-root>/</context-root>
</weblogic-web-app>

 按照以往的项目部署都是这么放的,但是这次却报错了。
 weblogic抛出如下异常信息:

java.lang.NoSuchMethodError: javax/persistence/spi/PersistenceUnitInfo.getValidationMode()Ljavax/persistence/ValidationMode

但是从百度得到的信息多是我原先的代码。

最后是从http://stackoverflow.com/questions/7990633/java-lang-nosuchmethoderror-javax-persistence-spi-persistenceunitinfo-getvalida这里找到的答案

<?xml version="1.0" encoding="UTF-8"?>
<weblogic-web-app ...>
    ...
    <container-descriptor>
        <prefer-application-packages>
            <package-name>antlr.*</package-name>
            <package-name>org.hibernate.*</package-name>
            <package-name>javax.persistence.*</package-name>
        </prefer-application-packages>
    </container-descriptor>
</weblogic-web-app>

原话是:I tried with the <prefer-web-inf-classes>true</prefer-web-inf-classes>, with no luck. I'm using Weblogic 11g (10.3.6), Hibernate 4.1.9 and Spring 3.2.1. With this, persistence works like a charm!

于是我把这段代码改入到我的weblogic.xml这样就解决了上述的问题。

转载于:https://www.cnblogs.com/zhangnanblog/archive/2013/03/19/2969947.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值