项目中使用了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项目结构图:
相关推荐
使用eclipse通过weblogic开发简单的ejb应用(weblogic 10.x & ejb3.x)
weblogic9.x配置部署
weblogic 9.x,10.x 线程调整
在myeclipse 9下配置weblogic10.x
weblogic10.X AES加解密 jdbc加解密 boot.properties加解密 WLEncrypt:=========================== encrypt result:{AES}f5GuX7x1nWKVrz2yTneeiKBRMDkE1Z08Ud/rcZYozwE= decrypt result:weblogic WLEncrypt:======...
开发部署中间件weblogic下载,经实践试用,没有任何问题。 WebLogic是美国Oracle公司出品的一个application server,确切的说是一个基于JAVAEE架构的中间件,WebLogic是用于开发、集成、部署和管理大型分布式Web...
JBuilder X+WebLogic 8.1.x.doc开发
weblogic 9.X license.bea 无限制版
Oracle WebLogic Server 12.2.1.4 2020年7月发布的累积更新补丁包 p31537019_122140_Generic 主要修复各种Bug和安全漏洞等问题 安装之前须先卸载老的补丁 遭到过攻击的服务器、域 建议删除域并重建
Oracle的高危远程代码执行漏洞(CVE-2018-2893),通过该漏洞攻击者可以在未授权的情况下远程执行任意代码。 受此漏洞影响的版本包括: WebLogic 10.3.6.0 WebLogic 12.1.3.0 WebLogic 12.2.1.2 ...3.升级补丁
零基础学习MyEclipse+Weblogic9.x安装、配置、部署
Weblogic中MIME的默认配置文件 文件名称:domain/config/mimemappings.properties 格式如下: js=text/javascript 个人觉得设置完后,Weblogic可能要重启一下。
weblogic5.pdf
windows系统 weblogic 12.2.1.3.0.打补丁操作流程,包含最新补丁和13.9.4.2.4Optach所需的jar包,opatch_generic.jar
Weblogic 9.1.x 的配置秘笈,weblogic域的定义,weblogic数据源,配置setDomainEnv.cmd,部署应用程序。。。。等等。
NULL 博文链接:https://ligaosong.iteye.com/blog/1750085
JBuilder2006中配置WebLogic8.x.doc
Weblogic8.X+SQL SERVER2000安装及连接池配置指南
weblogic 分析一批 access.log,生成csv 分析结果