文档章节

Weblogic10.x部署Spring3、Spring Data JPA

hefeiuu
 hefeiuu
发布于 2017/05/04 20:27
字数 478
阅读 2
收藏 0
项目中使用了Spring3、Spring Data JPA在开发过程中使用Jetty或Tomcat上没有任何问题,部署在Weblogic10.x上时各种错,目前使用这种组合的项目不在于少数,特此记录一下。
Weblogic10.x只支持JPA1.X,不支持JPA2.X,内置的JPA接口与项目中的Hibernate的hibernate-jpa-2.0-api-1.0.1.Final.jar有冲突,无法部署启动项目,还有就是Weblogic内置的一些版本比较老的jar与项目中使用的也有冲突,道理是一样的,OK,开始!
一、更改persistence.xml名称
我们不想在部署时让Weblogic自动加载persistence.xml文件,所以必须要重命名,比如mps-persistence.xml,然后修改Spring配置文件
<!--WizRtf2Html Charset=0 --> <bean id="entityManagerFactory" class="org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean">
        <property name="persistenceXmlLocation" value="classpath:META-INF/mps-persistence.xml" />
        <property name="dataSource" ref="dataSource" />
        <property name="persistenceUnitName" value="mps" />
        <property name="jpaVendorAdapter">
            <bean class="org.springframework.orm.jpa.vendor.HibernateJpaVendorAdapter">
                <property name="showSql" value="true" />
                <property name="database" value="DB2" />
            </bean>
        </property>
        <property name="jpaProperties">
            <props>
                <prop key="hibernate.dialect">${db.mps.dialect}</prop>
                <prop key="hibernate.format_sql">${db.mps.formatSql}</prop>
                <prop key="hibernate.hbm2ddl.auto">${db.mps.ddlAuto}</prop>
            </props>
        </property>
    </bean>
注意:
 <property name="persistenceXmlLocation" value="classpath:META-INF/mps-persistence.xml" />
此处改为你重命名的文件名称;
二、打ear包
修改好上面的配置文件后,发布还是有问题的,需要把war打成ear包,新建ear工程,然后编写weblogic-application.xml描述文件:
<!--WizRtf2Html Charset=0 --> <?xml version="1.0" encoding="UTF-8"?>
<weblogic-application xmlns="http://www.bea.com/ns/weblogic/90">
    <prefer-application-packages>
        <package-name>antlr.*</package-name>
        <package-name>org.apache.commons.*</package-name>
        <package-name>org.apache.xmlbeans.*</package-name>
        <package-name>org.springframework.*</package-name>
        <package-name>org.hibernate.*</package-name>
        <package-name>javax.persistence.*</package-name>
        <package-name>org.apache.log4j.*</package-name>
    </prefer-application-packages>
</weblogic-application>
文件必须打包后必须放在ear根目录下的META-INF文件夹中,与application.xml在同一个文件夹
三、部署ear致Weblogc控制台即可
四、备注
maven ear打包插件
<!--WizRtf2Html Charset=0 --> <plugin>
                <artifactId>maven-ear-plugin</artifactId>
                <version>2.8</version>
                <configuration>
                    <finalName>${project.artifactId}</finalName>
                    <version>5</version>
                    <generatedDescriptorLocation>${basedir}/src/main/application/META-INF</generatedDescriptorLocation>
                    <modules>
                        <webModule>
                            <groupId>com.demo</groupId>
                            <artifactId>xxx</artifactId>
                            <uri>xxx.war</uri>
                            <bundleFileName>xxx.war</bundleFileName>
                            <contextRoot>/xxx</contextRoot>
                        </webModule>
                    </modules>
                </configuration>
            </plugin>
ear打包命令:ear:ear
ear生成application.xml命令:ear:generate-application-xml
ear项目结构图:

 

 

本文转载自:http://ufopw.iteye.com/blog/1935247

共有 人打赏支持
hefeiuu
粉丝 3
博文 64
码字总数 0
作品 0
合肥
私信 提问
Spring3中js/css/jpg/gif等静态资源无法找到

最近项目中使用到Spring3,在感叹Spring3注解配置清爽的同时竟然出现了这个不和谐的事情,实在无法忍受 问 题:部署项目后程序加载或用浏览器访问时出现类似的警告,2011-01-19 10:52:51,646...

零度的魚
2014/02/19
0
0
spring3 ,spring3 mvc 配置文件整合问题,哪种配置更好?

正常的整合是要在web.xml里面配置spring监听器,spring mvc的dispath servlet,代码如下: Java代码 org.springframework.web.context.ContextLoaderListener contextConfigLocation /WEB-I......

_凤求凰_
2014/01/07
2.4K
3
深入理解Spring MVC 思想

一、前言 二、spring mvc 核心类与接口 三、spring mvc 核心流程图 四、spring mvc DispatcherServlet说明 五、spring mvc 父子上下文的说明 六、springMVC-mvc.xml 配置文件片段讲解 七、s...

qq58edf1d989a2d
06/26
0
0
解决spring jpa中配置文件报'jpa:repositories'的问题

一、问题描述 使用spring jpa,报no declaration can be found for element 'jpa:repositories'错误的解决方案 Multiple annotations found at this line: - cvc-complex-type.2.4.c: The mat......

cloud-coder
2014/04/17
0
1
Spring3.0.4 学习与问题总结系列 - 2 MVC

记得在3年前使用的是 Struct2 与Spring结合的框架开发。当时是用Structs2来进行MVC管理,使用Spring对BO与DAO的Bean管理。还是一个新人的我,懵懂的做了3年。 因为很长时间已经没有接触过这样...

李长春
2011/09/15
0
0

没有更多内容

加载失败,请刷新页面

加载更多

/etc/profile和/etc/profile.d/的区别

/etc/profile 是文件, /etc/profile.d/ 是目录,用在设置环境变量方面,/etc/profile 文件和 /etc/profile.d/ 目录实现效果是一样的,可根据自己对环境变量配置的需求场景,选择一种最好的方...

calmsnow
10分钟前
1
0
支付系统设计

概述 支付系统是连接消费者、商家(或平台)和金融机构的桥梁,管理支付数据,调用第三方支付平台接口,记录支付信息(对应订单号,支付金额等),金额对账等功能,根据不同公司对于支付业务...

小致dad
11分钟前
0
0
解决Docker Image镜像无法删除问题的方法

前言 Docker是Docker.Inc公司开源的一个基于轻量级虚拟化技术的容器引擎项目,整个项目基于Go语言开发,并遵从Apache 2.0协议。通过分层镜像标准化和内核虚拟化技术,Docker使得应用开发者和运...

临江仙卜算子
15分钟前
0
0
centos 7 redis_install.sh

#!/bin/bashprintf "============开始安装redis\n"printf "============输入redis下载url,按enter默认下载5.0.3版本\n"download_url='';while truedoread download_url...

偶遇一只小仙女
18分钟前
0
0
分布式消息通信ActiveMQ原理-消费消息策略-笔记

消费端消费消息的原理 我们通过上一节课的讲解,知道有两种方法可以接收消息, 一种是使用同步阻塞的MessageConsumer#receive方法。 另一种是使用消息监听器MessageListener。 这里需要注意的...

Java搬砖工程师
20分钟前
1
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部