- 浏览: 770705 次
- 性别:
- 来自: 大连
文章分类
- 全部博客 (417)
- ASP.NET MVC (18)
- WEB基础 (24)
- 数据库 (69)
- iPhone (20)
- JQuery (3)
- Android (21)
- UML (8)
- C# (32)
- 移动技术 (19)
- 条码/RFID (6)
- MAC (8)
- VSS/SVN (6)
- 开卷有益 (4)
- 应用软件 (1)
- 软件工程 (1)
- java/Eclipse/tomcat (61)
- 英语学习 (2)
- 综合 (16)
- SharePoint (7)
- linux (42)
- Solaris/Unix (38)
- weblogic (12)
- c/c++ (42)
- 云 (1)
- sqlite (1)
- FTp (2)
- 项目管理 (2)
- webservice (1)
- apache (4)
- javascript (3)
- Spring/Struts/Mybatis/Hibernate (4)
- 航空业务 (1)
- 测试 (6)
- BPM (1)
最新评论
-
dashengkeji:
1a64f39292ebf4b4bed41d9d6b21ee7 ...
使用POI生成Excel文件,可以自动调整excel列宽等(转) -
zi_wu_xian:
PageOffice操作excel也可以设置表格的行高列宽,并 ...
使用POI生成Excel文件,可以自动调整excel列宽等(转) -
wanggang0321:
亲,我在pptx(office2007以上版本)转pdf的时候 ...
JODConverter]word转pdf心得分享(转) -
xiejanee:
楼主:你好!我想请问下 你在代码中用DOMDocument* ...
Xerces-C++学习之——查询修改XML文档 (转)
Weblogic中的热部署——修改JSP、java类无需重启Weblogic
2011-06-29 14:02
转自:http://blog.sina.com.cn/s/blog_51f49da30100t9hf.html
Weblogic中的热部署——修改JSP、java类无需重启Weblogic(2011-05-31 18:16:43)
Weblogic允许在wls运行时部署组件的新版本。这个过程被称作热部署。因为java classloader没有任何一种机制来卸下一系列存在的类,也不能用类的新版本来替换老版本,为了在一个运行的虚拟机中更新相关的类,classloader必须被替换掉。当它被替换时,它所装载的所有类以及衍生的子classloader也要被重新装载。这些类的所有实例也必需被重新装载。在wls中,每一个应用组件都有一个层次化的classloaders,它们都是system classloader的子类,这种结构有助于每个应用或应用的一部分能被单独重新加载,而不会影响其它的组件。所以我们只要理解这个原理,类似的困惑也就迎刃而解了。
最近调试缺陷比较多,每次调试修改一点点代码就要重新启动weblogic。
大量的时间浪费在修改--编译--重启服务上面,让人感觉很烦躁。最终找到解决方法,就是在weblogic下面进行热部署设置了。
以下为weblogic热部署设置方法,建议在开发过程中使用:
1. startWebLogic.cmd:
set STARTMODE=false 设置为开发模式,true为产品模式
2. web.xml:
<servlet-mapping>
<servlet-name>loginA</servlet-name>
<url-pattern>/servlet/loginCheckA</url-pattern>
<load-on-startup>0</load-on-startup> 容器在启动时加载这个类
</servlet-mapping>
3. weblogic.xml:
<!DOCTYPE weblogic-web-app PUBLIC "-//BEA Systems, Inc.//DTD Web Application 8.1//EN"
"http://www.bea.com/servers/wls810/dtd/weblogic810-web-jar.dtd">
<weblogic-web-app>
<session-descriptor>
<session-param>
<param-name>TimeoutSecs</param-name>
<param-value>1800</param-value>
</session-param>
</session-descriptor>
<jsp-descriptor>
<jsp-param>
<param-name>encoding</param-name>
<param-value>GBK</param-value>
</jsp-param>
<jsp-param>
<param-name>pageCheckSeconds</param-name>
<param-value>1</param-value>
</jsp-param>
</jsp-descriptor>
<container-descriptor>
<servlet-reload-check-secs>1</servlet-reload-check-secs>
</container-descriptor>
<context-root>/your-web</context-root>
</weblogic-web-app>
pageCheckSecond的默认值是1,表示每隔1秒对JSP页面进行检查,检查JSP页面是否被修改、是否需要重新编译。
系统上线后,需要对该默认值修改为-1,表示永不检查。修改为-1的一个缺点是:对于页面的修改需要重新部署整个WEB应用。servlet-reload-check-secs该参数的默认值也是1,每隔1秒检查servlet是否被修改并需要重新编译。这里建议修改为-1,表示永不检查。
注意:在发布生产时,需要把这两个值设置为-1,否则会影响效率。
4.Make sure that your servlet classes are not in your classpath which can cause this problem.
5.在WLS console中,在该web app的Files页中,把<Reload Period>设为1
发表评论
-
Weblogic10 Classloading 问题(转)
2013-01-23 16:28 0转自:http://taojingrui.iteye.co ... -
weblogic发布cxf webservice
2013-01-23 12:26 0用cxf2.6.2-spring3开发的webservic ... -
正确配置java运行环境
2013-01-23 10:27 719安装完JDK后,需要正确配置Java运行时必须的环境变量值,它 ... -
weblogic中优先加载jar包
2013-01-23 10:26 6119将应用发布成EAR,在weblogic-applicati ... -
bea weblogic的http错误信息
2013-01-21 15:52 690http://docs.oracle.com/cd/E13 ... -
weblogic 发布webservice
2013-01-16 16:23 0将webservice打成war包,或者按war包展开的目录格 ... -
gcc/g++编译
2012-07-16 13:57 19271. gcc/g++在执行编译工作的时候,总共需要4步 ... -
如何查看solaris操作系统的版本号
2012-07-10 17:44 3811如何查看solaris操作系统的版本号 我知道的有下面 ... -
solaris10中U盘的使用方法
2012-07-10 15:50 4179一般情况下U 盘插上去都可以自动识别,如果不能自动识别 ... -
solaris studio官方文档
2012-07-10 11:35 864Oracle Solaris Studio 12.3 Info ... -
Solaris locale
2012-07-09 15:44 928Solaris locale 设置分两种情况:Partial ... -
在Solaris 10上安装和使用中文输入法 (转)
2012-07-09 14:22 12491, 安装 Open Solaris 11 添加中文包和中文 ... -
给solaris10安装语言包
2012-07-09 09:48 3067增加zh_TW语言包 把solaris10的光盘 mount ... -
solaris10设置IP
2012-07-06 16:40 1059设置IP 假设要将IP 设置为192.168.1 ... -
isainfo 以及 虚拟机等
2012-07-06 14:47 0如何启动Solaris 32-bit/64-bit内核 对 ... -
在solaris操作系统下使用Oracle10.1g廋客户端
2012-07-06 10:17 1475转自:http://blog.csdn.net/l ... -
more 命令 用于分屏显示
2012-07-04 14:45 1153more 命令 用于分屏显示 原文链 ... -
Weblogic 10.3.5在64位Windows系统下的安装和配置
2012-07-02 16:56 2401今天, 笔者将向大家介绍Oracle Weblogic 10. ... -
dtlogin
2012-06-29 16:46 1990Solaris 桌面登录详解 2007-12-13 1 ... -
solaris 10系统上架构phpwind论坛环境(转)
2012-06-21 16:54 1760前提:solaris 已经安装 ...
相关推荐
在开发软件的时候,WebLogic服务热部署可以有效的提过开发速度,不用把时间浪费到不停的重启服务上。
java.lang.String类是final类型的,因此不可以继承这个类、不能修改这个类。为了提高效率节省空间,我们应该用StringBuffer类 3、int 和 Integer 有什么区别 Java 提供两种不同的类型:引用类型和原始类型(或内置...
java.lang.String类是final类型的,因此不可以继承这个类、不能修改这个类。为了提高效率节省空间,我们应该用StringBuffer类 6、int 和 Integer 有什么区别 Java 提供两种不同的类型:引用类型和原始类型(或...
本文介绍了Nginx与Tomcat实现动静态分离和负载均衡,所谓动静分离就是通过nginx(或apache等)来处理用户端请求的图片、html等静态的文件,tomcat(或weblogic)处理jsp、do等动态文件,从而达到动静页面访问时通过...
7.10.1. 热交换目标源 7.10.2. 池化目标源 7.10.3. 原型目标源 7.10.4. ThreadLocal目标源 7.11. 定义新的Advice类型 7.12. 更多资源 8. 测试 8.1. 简介 8.2. 单元测试 8.2.1. Mock对象 8.2.2. 单元测试...
7.10.1. 热交换目标源 7.10.2. 池化目标源 7.10.3. 原型目标源 7.10.4. ThreadLocal目标源 7.11. 定义新的通知类型 7.12. 更多资源 8. 测试 8.1. 简介 8.2. 单元测试 8.3. 集成测试 8.3.1. Context管理和缓存 8.3.2....
7.10.1. 热交换目标源 7.10.2. 池化目标源 7.10.3. 原型目标源 7.10.4. ThreadLocal目标源 7.11. 定义新的通知类型 7.12. 更多资源 8. 测试 8.1. 简介 8.2. 单元测试 8.3. 集成测试 8.3.1. Context管理和...
7.10.1. 热交换目标源 7.10.2. 池化目标源 7.10.3. 原型目标源 7.10.4. ThreadLocal目标源 7.11. 定义新的Advice类型 7.12. 更多资源 8. 测试 8.1. 简介 8.2. 单元测试 8.2.1. Mock对象 8.2.2. 单元测试...
7.10.1. 热交换目标源 7.10.2. 池化目标源 7.10.3. 原型目标源 7.10.4. ThreadLocal目标源 7.11. 定义新的通知类型 7.12. 更多资源 8. 测试 8.1. 简介 8.2. 单元测试 8.3. 集成测试 8.3.1. Context管理和...
部署到云端 i. 49. Cloud Foundry i. 49.1. 绑定服务 ii. 50. Heroku iii. 51. Openshift iv. 52. Google App Engine v. 53. 接下来阅读什么 8. VII. Spring Boot CLI i. 54. 安装CLI ii. 55. 使用CLI i. 55.1. ...