动软代码生成器 做网站,黄页88网站关键词怎么做,付费链接生成平台,中国最牛的设计公司如本系列前面的部分所述#xff0c;EJB 3.0版规范的主要缺点是缺少可移植的全局JNDI名称。 这意味着没有可移植的方式将EJB引用链接到应用程序外部的Bean。 EJB v。3.1规范用自己的话填补了这一定义#xff1a; “一个标准化的全局JNDI名称空间和一系列相关的名称空间#… 如本系列前面的部分所述EJB 3.0版规范的主要缺点是缺少可移植的全局JNDI名称。 这意味着没有可移植的方式将EJB引用链接到应用程序外部的Bean。 EJB v。3.1规范用自己的话填补了这一定义 “一个标准化的全局JNDI名称空间和一系列相关的名称空间它们映射到Java EE应用程序的各个范围。” 此博客文章将为您提供EJB v.3.1规范定义的Global JNDI Access的概述。 命名空间和范围 EJB v。3.1规范使用其自己的范围定义了三个不同的名称空间 全球。 应用。 模块。 该规范要求兼容的容器使用所需的JNDI名称注册所有会话Bean。 这样的标准化名称是可移植的您的应用程序组件将能够使用跨应用程序服务器可移植的名称来建立对EJB的引用。 全球 全局名称空间中的名称可在任何应用程序中访问并且符合以下语法 javaglobal [/ app-name] / module-name / bean-name [interface-fqn] app-name是在其标准部署描述符 application.xml 中指定的Java EE应用程序的名称或者默认情况下是已部署EAR归档文件的基本名称。 仅当会话EJB部署在Java EE应用程序EAR文件中时才使用此路径片段。 如果会话EJB部署在EAR文件中则其module-name是Java EE模块的路径名该Java EE模块包含EAR文件中的bean无扩展名。 如果将会话bean部署为JAR文件中的独立Java EE组件或WAR文件中的Java EE Web模块的一部分现在Java EE 6规范允许则module-name是档案名称不带扩展名。 可以通过组件的标准部署描述符 ejb-jar.xml或web.xml 的module-name元素覆盖module-name值。 bean-name是EJB名称由本博文前面部分中描述的机制指定。 interface-fqn部分是EJB业务接口的标准名称。 容器必须为EJB及其无接口视图实现的每个本地和远程业务接口注册一个JNDI全局条目。 具有一个业务接口或无接口视图的会话EJB 如果EJB仅实现一个业务接口或仅具有无接口视图则还需要容器使用以下JNDI名称注册这种视图 javaglobal [/ 应用程序名称] / 模块名称 / bean名称 应用 应用程序名称空间中的名称只能由同一应用程序中的代码访问并且符合以下语法 javaapp / 模块名称 / bean-名称 [interface-fqn] 每个路径片段保留与上一节中为全局名称空间JNDI名称语法描述的相同含义。 上一节中描述的兼容容器的发布规则相同。 模组 模块名称空间中的名称只能由同一模块中的代码访问并且符合以下语法 javamodule / bean-name l [interface-fqn] 同样每个路径片段都保留了针对全局名称空间JNDI名称描述的相同含义。 全局命名空间部分中描述的兼容容器的发布规则相同。 本地客户 这可能是重要的发现虽然本地接口和无界面视图公布的全球JNDI名称这并不意味着这样的接口将是在另一个JVM中运行的组件访问。 结论 EJB v。3.1规范以及Java EE 6平台中的其他规范带来了简单性并为开发人员的工具箱添加了许多新功能和工具。 “全局JNDI名称”是一个杰出的功能尽管很简单因为它最终填补了该规范以前的版本以及整个Java EE平台的长期可移植性限制。 EJB 3.0和EJB 3.1提供了功能强大可移植但简单的组件模型来构建企业应用程序。 “ EJB糟透了 ”的日子已经过去了但是只有时间才能证明这项技术是否会重新获得我们开发人员的信任。 就我自己而言我对Java EE 6EJBCDI beanNetBeans或JDeveloper之类的IDE的良好支持尽管后者还不支持EJB 3.1以及所有规范感到非常满意。建立这个古老的平台 参考 The Gray Blog上来自我们的JCG合作伙伴 Gray的 EJB 3.1 Global JNDI访问 。 相关文章 EJB 3.0注入和查找简介 基本的EJB参考注入和查找 EJB程序化查找 使用Oracle WebLogic对应用程序外部的EJB的引用 GWT EJB3 Maven JBoss 5.1集成教程 Java泛型快速教程 JVM如何处理锁 翻译自: https://www.javacodegeeks.com/2011/08/ejb-31-global-jndi-access.html