废话不多说下面讲介绍他的具体部署web应用,应该注意哪些问题。

准备工作:

Java JDK 安装及环境配置

  http://jingyan.baidu.com/article/ff41162596a77912e4823716.html

WebLogic 12c 安装包可以去官网下载,也可以去我的云盘下载

  https://yunpan.cn/cvKmivqjrfE6C  访问密码 19e2

WebLogic12c 安装步骤请查看另一篇文章

  http://blog.csdn.net/hanxuemin12345/article/details/46291189

注意第五个步骤时,选择服务器jdk安装的位置。

Weblogic10.x只支持JPA1.X,不支持JPA2.X,内置的JPA接口与项目中的Hibernate的hibernate-jpa-2.0-api-1.0.1.Final.jar有冲突,无法部署启动项目,还有就是Weblogic内置的一些版本比较老的jar与项目中使用的也有冲突

WebLogic发布的主要内容有以下几点

  一、升级jdk(针对原有 12)

WEBLOGIC 修改一下配置,即可

     F:\ORACLE\weblogic\user_projects\domains\dev_domain\bin\setDomainEnv.cmd
set SUN_JAVA_HOME=D:\jdk1.7.0_65
set DEFAULT_SUN_JAVA_HOME=D:\jdk1.7.0_65
set JAVA_HOME=D:\jdk1.7.0_65

注意:<D:\jdk1.7.0_65> 这是我本机的jdk 位置,要根据您服务器的jdk选择具体目录

如果你在安装weblogic的时候,选择了本地安装的jdk位置路径这一个步骤可以省略。

  二、更改 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" />
</bean>

注意:

<property name="persistenceXmlLocation" value="classpath:META-INF/mps-persistence.xml" />

  三、添加weblogic.xml

如果不添加这个weblogic.xml,将会报

  Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean]: Factory method 'entityManagerFactory' threw exception; nested exception is Java.lang.NoSuchMethodError : javax.persistence.JoinColumn.foreignKey()Ljavax/persistence/ForeignKey.……

引起改问题的主要原因是 JPA 2.1 规范中定义了javax.persistence.JoinColumn.foreignKey(); 但是JPA 2.0中却没有, WebLogic 默认会优先使用自己的JPA JAR(2.0)版本, 所以虽然Spring中定义使用 JPA2.1的JAR, 但部署到Weblogic后会不起作用, 引起错误。

XML内容如下:

 <?xml version="1.0" encoding="UTF-8"?>

 <weblogic-web-app xmlns="http://xmlns.oracle.com/weblogic/weblogic-web-app" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/ejb-jar_3_0.xsd
http://xmlns.oracle.com/weblogic/weblogic-web-app http://xmlns.oracle.com/weblogic/weblogic-web-app/1.2/weblogic-web-app.xsd">
<context-root>PosService</context-root>
<container-descriptor>
<prefer-web-inf-classes>true</prefer-web-inf-classes>
<show-archived-real-path-enabled>true</show-archived-real-path-enabled>
</container-descriptor>
</weblogic-web-app>

   四、Jpa2.0应用

  在%WLS_HOME%\modules\ 目录中添加 hibernate-jpa-2.1-api-1.0.0.Final.jar

    更改 startweblogic.cmd 文件【 set CLASSPATH=%WL_HOME%\modules\hibernate-jpa-2.1-api-1.0.0.Final.jar;%WL_HOME%\lib\mbeantypes\WantongTechAuthenticator.jar;%SAVE_CLASSPATH% 】

  hibernate-jpa-2.1-api-1.0.0.Final.jar下载 https://yunpan.cn/cvZeTSqPd3qE7  访问密码 246a

  五、目录中UTF-8项目sitemesh 页面乱码

  六、坑

  HTTP1.1 有个  Transfer-Encoding: chunked 特性  会造成内容 返回时 分多次返回(在建立连接后,有内容就输出,不指定 CONTENT LENGTH)。非标准访问时注意下。
  如POS 机访问 WEBSERVICE
  七、bug
现象 解决 最优
<Error> <HTTP> <BEA-101083>
<Error> <Socket> <BEA-000403>
你的主机中的软件中止了一个已建立的连接。
据说是weblogic12.1.2的一个bug ,
官方出了一个补丁,补丁编号:18373180:
MERGE REQUEST ON TOP OF 12.1.2.0.0 FOR BUGS 16851678 18073982解决这个问题
最近WEBLOGIC SUPPORT 在维护 http://support.oracle.com/
附件暂缓上传。或直接安装 12.1.2以后的版本
部署这个版本 weblogic 12.2.1
java 反序列化 开源的坑
打补丁或是升级新版本。
 

感谢来自斯登闯前辈的指导。

weblogic 12c web部署注意的问题的更多相关文章

  1. WebLogic 12c Linux 命令行 安装

    最近负责在Linux上安装WebLogic Server 12c,客户说要安装最新的版本,版本号为 12.1.X(12.1.2,12.1.3).开始以为和旧版安装一样,使用控制台的方式,下载bin文件 ...

  2. Weblogic 12c 一个domain建多个server(端口)

    一.基本概念 我觉得如果刚接触Weblogic,首先应该做的是明白几个基本的概念,可以从一张图入手: 1. 域(domain) 它是一个基本管理单元: 每个域包含一个管理服务器(Administrat ...

  3. WebLogic 12c Linux 命令行 静默安装

    CentOS 6.3安装配置Weblogic 10  http://www.linuxidc.com/Linux/2014-02/96918.htm Oracle WebLogic 11g 安装部署文 ...

  4. vmware安装cent os 6.5 + oracle 11g xe + jboss eap 6.2 + weblogic 12c+ webshpere mq 7.5

    前言: mac系统发展速度确实很快,短短数年,mac os上已经能网银支付(中行.招行.工商.支付宝等均已全面支持mac os了),windows上的经典常用软件:qq.飞信.旺旺.有道词典.有道云笔 ...

  5. Weblogic 12c 负载均衡和session复制

    在上一篇,我们介绍了weblogic集群的部署和session的复制,如何将请求负载均衡到这个三个服务器上呢? 这里提供两种方式:(1)weblogic自带的proxy代理        (2) ng ...

  6. weblogic 12c下jxls导出excel报错Could not initialize class org.apache.poi.xssf.usermodel.XSSFVMLDrawing

    周一,开发反馈weblogic 12c下jxls导出excel报错,公司环境和UAT环境均报错,看日志如下: 2016-06-08 09:16:55,825 ERROR org.jxls.util.T ...

  7. Walle 瓦力 web部署系统

    Walle 一个web部署系统工具,可能也是个持续发布工具,配置简单.功能完善.界面流畅.开箱即用! 安装步骤: 1. git clone 首先配置成功(去百度找答案) 打开git bash命令窗口执 ...

  8. NET站点Web部署

    NET站点Web部署(一键发布的实现) 在开发过程中经常需要发布到开发环境.测试环境或者预发布环境上给其他同事进行测试验证效果等等,每次发布都要备份,拷贝,修改配置文件等等重复操作非常的麻烦,效率大打 ...

  9. 理解 IntelliJ IDEA 的项目配置和Web部署

    1.项目配置的理解 IDEA 中最重要的各种设置项,就是这个 Project Structre 了,关乎你的项目运行,缺胳膊少腿都不行.最近公司正好也是用之前自己比较熟悉的IDEA而不是Eclipse ...

随机推荐

  1. Java守护线程

    最近的项目使用的是dubbo.Web工程发布在Tomcat上,会作为消费者调用其他的dubbo微服务.但是最近发现一个问题,在使用shutdown命令关闭tomcat的时候,Tomcat并没有真正关闭 ...

  2. MongoDB高可用集群配置的方案

    >>高可用集群的解决方案 高可用性即HA(High Availability)指的是通过尽量缩短因日常维护操作(计划)和突发的系统崩溃(非计划)所导致的停机时间,以提高系统和应用的可用性. ...

  3. CSV文件分割与列异常处理的python脚本

    csv文件通常存在如下问题: 1. 文件过大(需要进行文件分割)2. 列异常(列不一致,如元数据列为10列,但csv文件有些行是11列,或者4列)本脚本用于解决此问题. #coding=utf-8 ' ...

  4. 3小时搞定一个简单的MIS系统案例Northwind,有视频、有源代码下载、有真相

    一.瞎扯框架.架构 楼主自从1998年从C语言.MASM.Foxbase开始学计算机开始接触这个行当16年以来,2001年干第一份与程序.软件.然后是各种屌的东西开始,差不多干了13年了,这13年来, ...

  5. Android传递数据5种方法

       Android开发中,在不同模块(如Activity)间经常会有各种各样的数据需要相互传递,我把常用的几种 方法都收集到了一起.它们各有利弊,有各自的应用场景. 我现在把它们集中到一个例子中展示 ...

  6. linux命令二

    4. df -h 查看磁盘使用情况    cpu:        user,system,idle,iowait    mem:        total,used,free,cached,buffe ...

  7. OpenCV2.4.13+VS2013开发环境配置

    List1:完成 写在前面:之前电脑很杂乱的装了OpenCV的2个版本,在配置OpenCV和VS2013环境时死活配不好.但是接下来的工作要用到,没有办法,还是得好好做.今天重新装了OpenCV2.4 ...

  8. pwnable.kr的passcode

    前段时间找到一个练习pwn的网站,pwnable.kr 这里记录其中的passcode的做题过程,给自己加深印象. 废话不多说了,看一下题目, 看到题目,就ssh连接进去,就看到三个文件如下 看了一下 ...

  9. 使用echarts开发电子屏数据展示页面

    背景 之前的项目因为要顾及体量问题,选用了highchart,没用上echarts:这次因为是本地部署电子屏幕的展示页,不需要考虑体量大小,直接用上了echarts:用起来觉得非常不错,特别是地图上非 ...

  10. iOS分析UI利器——Reveal简单使用

    一,简单使用 * 在xcode中打开你的项目(project); * 打开reveal 和选中 Help → Show Reveal Library in Finder * 把Reveal.frame ...