`
csbison
  • 浏览: 156017 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

Weblogic的update和stop/start的区别

阅读更多

 

 

 

Weblogic的update和stop/start的区别。

 

今天联调测试人员发现一个bug,当对weblogic的web应用执行stop,然后start的时候 系统就出现故障了。

但如果对weblogic的web应用 进行update的时候,就没问题。

 

 

问题的缘由:

对weblogic的webapp执行 stop/start时候,只会调用javax.servlet.ServletContextListener接口的

contextDestroyed()、contextInitialized()方法。

所以对于单例的类,或者类中的静态成员变量,就可能存在危险。

 

而update的时候不仅会调用ServletContextListener接口的方法,而且会将类对象摧毁,然后ClassLoader重新加载相关的类。单例的类也同样要摧毁掉重新创建。

 

 

另外update或者stop,甚至delete掉webapp的时候 其实程序中start起来的线程都继续在跑的(因为此时线程的生命期跟webapp不关联,而是跟weblogic的主进程关联)。 所以对于webapp,都必须在contextDestroyed() 将该中止的线程手动停止掉。

0
0
分享到:
评论

相关推荐

    weblogic 使用经验

    这些步骤涵盖了 WebLogic 使用过程中的关键环节,包括如何利用 WebLogic Builder 快速构建应用程序、如何分离管理服务器和应用服务器以提高系统的可维护性、以及如何进行基本的性能调优等。对于 WebLogic 用户来说,...

    平安上机考试题02(精品文档)_共8页借鉴.pdf

    根据题目35和38,Java图形中,paint()方法是用于绘制图形的,而init()、start()、stop()方法是用于初始化、启动和停止图形的。 Weblogic相关知识点 根据题目39,Weblogic的启动Admin Server后,默认的控制台路径是...

    OSGi原理与最佳实践(精选版)

    - **模块(Bundle)的生命周期管理**:包括安装(Install)、启动(Start)、停止(Stop)、更新(Update)和卸载(Uninstall)等操作。 - **服务注册与查找**:模块可以通过`BundleContext`注册服务,并通过服务名...

    最新Java面试宝典pdf版

    9、hibernate中的update()和saveOrUpdate()的区别,session的load()和get()的区别。 122 10、简述 Hibernate 和 JDBC 的优缺点? 如何书写一个 one to many 配置文件. 122 11、iBatis与Hibernate有什么不同? 122 12、...

    JAVA面试宝典2010

    9、hibernate中的update()和saveOrUpdate()的区别,session的load()和get()的区别。 122 10、简述 Hibernate 和 JDBC 的优缺点? 如何书写一个 one to many 配置文件. 122 11、iBatis与Hibernate有什么不同? 122 12、...

    Java面试宝典-经典

    9、hibernate中的update()和saveOrUpdate()的区别,session的load()和get()的区别。 122 10、简述 Hibernate 和 JDBC 的优缺点? 如何书写一个 one to many 配置文件. 122 11、iBatis与Hibernate有什么不同? 122 12、...

    java面试题大全(2012版)

    9、hibernate中的update()和saveOrUpdate()的区别,session的load()和get()的区别。 122 10、简述 Hibernate 和 JDBC 的优缺点? 如何书写一个 one to many 配置文件. 122 11、iBatis与Hibernate有什么不同? 122 12、...

    Java面试宝典2012版

    9、hibernate中的update()和saveOrUpdate()的区别,session的load()和get()的区别。 122 10、简述 Hibernate 和 JDBC 的优缺点? 如何书写一个 one to many 配置文件. 122 11、iBatis与Hibernate有什么不同? 122 ...

    java面试宝典2012

    9、hibernate中的update()和saveOrUpdate()的区别,session的load()和get()的区别。 133 10、简述 Hibernate 和 JDBC 的优缺点? 如何书写一个 one to many 配置文件. 133 11、iBatis与Hibernate有什么不同? 133 12、...

    Java面试宝典2012新版

    9、hibernate中的update()和saveOrUpdate()的区别,session的load()和get()的区别。 122 10、简述 Hibernate 和 JDBC 的优缺点? 如何书写一个 one to many 配置文件. 122 11、iBatis与Hibernate有什么不同? 122 12、...

Global site tag (gtag.js) - Google Analytics