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中,它还负责加载应用部署目录下的类。 5. **WebLogic特定类加载器** - **Domain类加载器**:每个WebLogic域都有一个专属的类加载器,用于加载整个域配置相关的类。 - **EAR类加载器**:加载EAR应用中...
在本文中,我们将介绍如何在 WebLogic 中设置 Session 超时时间。 Method 1: 使用 web.xml 文件 在 Web 应用程序中,可以使用 `web.xml` 文件来设置 Session 超时时间。这个文件是 Java Servlet 规范的一部分,...
在这一章中,文档首先解释了WebLogic Server应用的基本结构和组成部分。WebLogic Server应用通常由多个模块组成,包括Java Servlets、JavaServer Pages (JSP)、JavaBeans、EJB(Enterprise JavaBeans)以及Web服务等...
在现代企业级应用环境中,提高Weblogic服务器的并发处理能力是一项重要的优化措施。本文将详细介绍通过调整Weblogic线程数、设置JDBC缓冲池以及修改`startWeblogic.cmd`文件来实现这一目标的方法。 #### 1. 设置...
在企业级应用开发中,Oracle WebLogic Server作为一款高性能的Java EE中间件服务器,被广泛应用于各种复杂的企业应用环境中。它提供了多种方式来部署Java应用程序,包括自动部署、使用命令行工具部署以及通过...
在企业级Java应用服务器领域,WebLogic Server是一个广泛使用的平台,它提供了丰富的功能来管理和部署企业级应用。本文将深入探讨“weblogic控制台与应用端口分开”以及“节点服务器配置”这两个重要知识点。 首先...
"将应用部署在Weblogic中与Axis2冲突的问题及解决方案" 问题描述 在将应用部署到Weblogic Server 10.3时,出现了一个错误,抛出ClassCastException异常,具体错误信息为: `java.lang.ClassCastException: ...
2. **使用WebLogic的Class-Path元素**:在`weblogic.xml`配置文件中,可以使用`<class-loader>`标签来指定应用的类加载策略。例如,可以使用`delegate="false"`来让WebLogic优先使用应用自身的类库,避免与服务器...
WebLogic中的"域"是一个管理单元,包含了服务器实例、集群、数据源等资源。你可以通过WebLogic管理控制台或命令行工具(如`wlst`)创建新的域,并配置相关的服务器参数。 3. **部署环境准备** 需要确保JDK已经...
在IT行业中,WebLogic是Oracle公司提供的一款广泛应用服务器,它主要用于构建、部署和管理企业级的Java EE(Enterprise JavaBeans)应用。这篇博客文章“WebLogic部署应用程序(图解)”可能详细阐述了如何在...
在企业级IT环境中,WebLogic Server是Oracle公司提供的一个强大且广泛使用的Java EE应用程序服务器,它为开发和部署企业级应用程序提供了稳定、高效的基础。在"企业级weblogic应用第三章"中,我们将会深入探讨...
当设置为`true`时,WebLogic 会优先加载`WEB-INF`目录下的类,而不是父加载器中的类,这使得应用可以覆盖服务器中已存在的类,但需要注意避免类转换错误。 WebLogic 支持热部署,即在服务器运行时部署新版本的应用...
这篇操作说明主要介绍了如何在WebLogic 9环境中进行应用发布,包括Domain的创建、DataSource的配置以及应用的发布流程。 **Domain的创建** Domain是WebLogic Server中管理和配置应用的基本单位,包含了服务器实例...
在Weblogic中配置数据源分为两个步骤: 1. **配置数据源连接池**: - 登录Weblogic控制台,定位至【Connection Pools】页面。 - 点击【Configure a new JDBC Connection Pool】按钮。 - 在弹出的配置界面中选择...
在IT行业中,WebLogic是Oracle公司的一款流行的企业级Java中间件,用于构建、部署和管理企业应用程序。在本文中,我们将深入探讨一个常见的问题:“WebLogic下应用无法显示验证码”,以及如何解决这个问题。这个问题...