TongWeb6.0 中的 JNDI 名空间解析与应用

需积分: 19 52 下载量 134 浏览量 更新于2024-08-09 收藏 3.26MB PDF 举报
本文档主要介绍了TongWeb6.0应用服务器中JNDI(Java Naming and Directory Interface)的使用和管理,特别是在全局名空间、应用名空间、模块名空间以及组件名空间中的应用。JNDI是JAVA EE环境中用于查找和绑定对象的一种服务,它允许程序通过逻辑名称来查找资源,而不需要知道资源的具体物理位置。 首先,全局名空间是TongWeb6.0创建的一个命名空间,其中可以存放如数据源、EJB等资源。在测试例子中,`testtongweb`数据源就在全局名空间中创建,并可以通过JNDI查找机制进行访问,如`ctx.lookup("testtongweb")`。全局名空间下不允许有相同JNDI名的对象绑定,以避免命名冲突。 接着,文档介绍了应用名空间,这是JAVA EE6引入的新规范,旨在规范组件间的访问。`java:app`命名空间内的名称由单个应用程序中的所有模块共享,即使这些模块分布在不同的部署单元,如单独的.ear文件或单个模块部署。通过应用名空间,同一.ear文件内的不同组件可以查找并调用彼此,例如,EJB `MyBean` 可以通过 `java:app/myejb/MyBean` 或 `java:app/myejb/MyBean!com.tw.IHello` 进行访问。 模块名空间是应用名空间的子集,`java:module`命名空间中的名称由一个模块内的所有组件共享。例如,在同一EAR下的myejb.jar中,组件可以通过 `java:module/MyBean` 或 `java:module/MyBean!com.tw.IHello` 查找并调用EJB。 组件名空间是TongWeb6.0的特色,它提供了一个标准化的上下文环境`java:comp/env`,使得应用组件在查找对象时只需要关心引用名,而不需要了解实际的JNDI名称。这降低了应用组件代码与JNDI名称的耦合,提高了灵活性。 此外,TongWeb6.0的管理控制台提供了JNDI树视图,方便用户查找和管理JNDI信息。控制台分为三个视图展示,增强了用户对JNDI资源的管理和监控能力。 TongWeb6.0是一款基于Java EE6 Web Profile的服务器,它支持多种操作系统,具有丰富的特性,如集成第三方产品、规范支持等。用户可以通过管理控制台进行应用部署、管理、查看和编辑等操作,同时也支持自动部署功能,简化了应用的生命周期管理。