`
whzhengzy
  • 浏览: 135966 次
  • 性别: Icon_minigender_1
  • 来自: China
社区版块
存档分类
最新评论

WebLogic中应用类库预先加载的设置

阅读更多
War应用类库预先加载方法:

(1)将war包打入ear包中,当然还需要有META-INF文件,带有weblogic-application.xml和application.xml,主要就是在weblogic-application.xml中配置prefer-application-packages,如下:

<weblogic-application> 
  <prefer-application-packages> 
     <package-name>antlr.*</package-name> 
  </prefer-application-packages> 
</weblogic-application> 

(2)在weblogic.xml中配置,如下:
<container-descriptor>
       <prefer-web-inf-classes>true</prefer-web-inf-classes>
</container-descriptor>

参考weblogic的说明,如下:
(1)加载类
类加载器在加载类时使用委托模型。类加载器实现首先检查其缓存,查看是否已经加载所请求的类。由于不重复从磁盘中加载类,而是使用该类在缓存内存中的副本,所以,这种类验证可以提高性能。如果在类缓存中找不到该类,则当前类加载器会要求其父类加载器提供该类。仅当父类加载器也无法加载该类时,该类加载器才会尝试加载该类。如果某个类既存在于父类加载器中,又存在于子类加载器中,则将加载父类加载器中的类。遵循这种委托模型可以避免同时加载多份相同的类。加载多份相同的类会引发 ClassCastException。

类加载器会先要求其父加载器加载类,然后再尝试自己加载该类。可以对 WebLogic Server 中与Web 应用程序关联的类加载器进行配置,使其首先在本地进行检查,然后再要求其父类加载器提供该类。这样,Web 应用程序能够使用其自己版本的第三方类,这些类也可能包含于 WebLogic Server 产品中。prefer-web-inf-classes 元素部分将详细讨论。

(2)prefer-web-inf-classes 元素
weblogic.xml Web 应用程序部署描述符中包含 <prefer-web-inf-classes> 元素(<container-descriptor> 元素的子元素)。默认情况下,该元素设置为 False。将该元素设置为 True 会颠反类加载器委托模型,以便优先加载 Web 应用程序中的类定义,其次才加载更高一级的类加载器中的类定义。这使得 Web 应用程序能够使用自己版本的第三方类,这些类也可能包含于 WebLogic Server 中。请参阅 weblogic.xml 部署描述符元素。

使用此功能时必须谨慎,不要混淆通过 Web 应用程序类定义创建的实例与通过服务器定义创建的实例。如果混淆这些实例,则会引发 ClassCastException。

分享到:
评论

相关推荐

    weblogic类加载过程简述

    在WebLogic中,它还负责加载应用部署目录下的类。 5. **WebLogic特定类加载器** - **Domain类加载器**:每个WebLogic域都有一个专属的类加载器,用于加载整个域配置相关的类。 - **EAR类加载器**:加载EAR应用中...

    weblogic设置session超时时间

    在本文中,我们将介绍如何在 WebLogic 中设置 Session 超时时间。 Method 1: 使用 web.xml 文件 在 Web 应用程序中,可以使用 `web.xml` 文件来设置 Session 超时时间。这个文件是 Java Servlet 规范的一部分,...

    BEA WebLogic Server 开发WebLogic Server 应用.doc

    在这一章中,文档首先解释了WebLogic Server应用的基本结构和组成部分。WebLogic Server应用通常由多个模块组成,包括Java Servlets、JavaServer Pages (JSP)、JavaBeans、EJB(Enterprise JavaBeans)以及Web服务等...

    Weblogic提高并发处理性能的设置

    在现代企业级应用环境中,提高Weblogic服务器的并发处理能力是一项重要的优化措施。本文将详细介绍通过调整Weblogic线程数、设置JDBC缓冲池以及修改`startWeblogic.cmd`文件来实现这一目标的方法。 #### 1. 设置...

    WebLogic部署应用程序(图解).

    在企业级应用开发中,Oracle WebLogic Server作为一款高性能的Java EE中间件服务器,被广泛应用于各种复杂的企业应用环境中。它提供了多种方式来部署Java应用程序,包括自动部署、使用命令行工具部署以及通过...

    weblogic 控制台与应用端口分开、节点服务器配置

    在企业级Java应用服务器领域,WebLogic Server是一个广泛使用的平台,它提供了丰富的功能来管理和部署企业级应用。本文将深入探讨“weblogic控制台与应用端口分开”以及“节点服务器配置”这两个重要知识点。 首先...

    将应用部署在weblogic中于axis2冲突的问题及解决方案

    "将应用部署在Weblogic中与Axis2冲突的问题及解决方案" 问题描述 在将应用部署到Weblogic Server 10.3时,出现了一个错误,抛出ClassCastException异常,具体错误信息为: `java.lang.ClassCastException: ...

    weblogic部署项目jar冲突解决

    2. **使用WebLogic的Class-Path元素**:在`weblogic.xml`配置文件中,可以使用`&lt;class-loader&gt;`标签来指定应用的类加载策略。例如,可以使用`delegate="false"`来让WebLogic优先使用应用自身的类库,避免与服务器...

    WebLogic部署应用程序(图解)

    WebLogic中的"域"是一个管理单元,包含了服务器实例、集群、数据源等资源。你可以通过WebLogic管理控制台或命令行工具(如`wlst`)创建新的域,并配置相关的服务器参数。 3. **部署环境准备** 需要确保JDK已经...

    WebLogic部署应用程序(图解)

    在IT行业中,WebLogic是Oracle公司提供的一款广泛应用服务器,它主要用于构建、部署和管理企业级的Java EE(Enterprise JavaBeans)应用。这篇博客文章“WebLogic部署应用程序(图解)”可能详细阐述了如何在...

    企业级weblogic应用第三章

    在企业级IT环境中,WebLogic Server是Oracle公司提供的一个强大且广泛使用的Java EE应用程序服务器,它为开发和部署企业级应用程序提供了稳定、高效的基础。在"企业级weblogic应用第三章"中,我们将会深入探讨...

    weblogic 类加载

    当设置为`true`时,WebLogic 会优先加载`WEB-INF`目录下的类,而不是父加载器中的类,这使得应用可以覆盖服务器中已存在的类,但需要注意避免类转换错误。 WebLogic 支持热部署,即在服务器运行时部署新版本的应用...

    WebLogic9应用发布操作说明

    这篇操作说明主要介绍了如何在WebLogic 9环境中进行应用发布,包括Domain的创建、DataSource的配置以及应用的发布流程。 **Domain的创建** Domain是WebLogic Server中管理和配置应用的基本单位,包含了服务器实例...

    weblogic8.1应用部署.docx

    在Weblogic中配置数据源分为两个步骤: 1. **配置数据源连接池**: - 登录Weblogic控制台,定位至【Connection Pools】页面。 - 点击【Configure a new JDBC Connection Pool】按钮。 - 在弹出的配置界面中选择...

    weblogic下应用无法显示验证码

    在IT行业中,WebLogic是Oracle公司的一款流行的企业级Java中间件,用于构建、部署和管理企业应用程序。在本文中,我们将深入探讨一个常见的问题:“WebLogic下应用无法显示验证码”,以及如何解决这个问题。这个问题...

Global site tag (gtag.js) - Google Analytics