EJB 3.1:是否允许将 Bean 注入到不受容器管理的资源中?

2023-11-30

我使用的是 JBoss 6.1,它不完全符合 EJB 3.1。截至目前,我无法通过以下方式将 EJB 注入到我的 Struts 操作类(或任何非 Java EE 容器管理的类中):@EJB,但是当 EJB 3.1 规范完全实现时这可能吗?

如果没有,在可预见的将来,由于性能原因,是否太不可行了?


任何容器都无法将任何内容注入到非托管对象中。

为了能够注入一个对象,容器需要管理该对象的生命周期,或者至少参与其生命周期的管理,这样它就可以在早期阶段获取该对象来进行注入。如果一个对象在没有暴露给容器的情况下被创建和使用(正如我想象的 Struts 动作 bean 一样),那么容器永远没有机会向其中注入任何东西。容器并不神奇——它不能仅仅检测在 JVM 中创建的对象并对它们执行操作。

Mikko 的答案列出了可注射对象的种类。除非动作豆是其中之一,否则恐怕没有骰子。

现在,说了这么多,隧道尽头出现了曙光:很可能为 Struts 编写一个处理注入的扩展。 @EJB 和 @Resource 注入相当直接地对应于特定的 JNDI 查找;扩展可以反射性地查找带注释的字段,然后执行相应的 JNDI 查找并注入结果。 CDI 注入甚至更容易,因为它有一个专门用于编写扩展的 API。有关执行所有这些操作的示例,请查看条纹注射浓缩机,它添加了对 @EJB、@Resource 和 @Inject 的支持Stripes网络框架。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

EJB 3.1:是否允许将 Bean 注入到不受容器管理的资源中? 的相关文章

  • 如何使用 Maven 构建带有 EJB 和 WAR 的 EAR 项目?

    我尝试使用 EJB 和 WAR 创建 EAR 项目 但遇到一些问题 我从创建了主项目Java EE 6 EAR 原型 https mvnrepository com artifact org codehaus mojo archetypes
  • 在 JAX-WS 中使用安全性的最佳实践是什么

    这是场景 我有一些需要保护的 Web 服务 JAX WS 目前 为了身份验证需求 我提供了额外的 SecurityWService 它为授权用户提供了一些需要在请求其他服务时描述的 userid 和 sessionid 使用一些java安全
  • JSF 2.x @EJB 依赖注入错误

    因此 正如编程中通常发生的那样 我提出了一个问题 而一个潜在的解决方案又引发了更多问题 和错误 我刚开始使用 servlet JSF 和 EJB 并且遇到了依赖注入错误 这是我原来的问题 JSF h 标签不显示 https stackove
  • 从一台服务器到多台可配置服务器的 JNDI 查找

    我们在具有不同 IP 的不同机器上有几个 JBoss 服务器 不是集群 而是属于不同客户的单个独立 JBoss 7 1 1 实例 所有系统上都部署了完全相同的 EAR 我们尝试发送一个名为Group从一个系统到另一个系统 问题 我们尝试了一
  • Tomcat 与 Weblogic JNDI 查找

    我们使用的 Weblogic 服务器已配置为允许 JNDI 数据源名称 例如 appds 对于开发 本地主机 我们可能会运行 Tomcat 并且在 server xml 的 部分中声明时 Tomcat 会将 JNDI 数据源挂在 JNDI
  • 如何在 J2EE 中进行动态 URL 重写

    回到我的 ASP NET 时代 我使用URL重写器 NET http urlrewriter net 进行动态 URL 重写 基本上 它是一个 HTTPModule 可以拦截页面请求并根据您定义的规则重写 URL 与 MOD REWRITE
  • 如何为用户的活动设置计时器?

    如果用户在 5 小时内停止工作 我需要执行特定的方法 假设用户已登录 但他在 5 小时内没有向数据库的特定表添加任何记录 任何时候用户将记录添加到指定的表中 该特定用户的计时器都应该重置 否则它将继续运行 如果达到 5 小时 应用程序应显示
  • 升级到 Netbeans 8.0.1 和 Glassfish 4,1 后包不存在

    我正在学习 JavaEE CDI 并使用 NetBeans 8 0 Glassfish 4 创建了一个小型应用程序 升级到 NetBeans 8 0 1 和 Glassfish 4 1 后 我收到很多错误报告 指出某些包不存在 例如 我无法
  • 约束验证@Null 的要点是什么?

    我正在检查可用约束列表 http docs oracle com javaee 6 api javax validation constraints package summary html in javax validation包 我注意
  • 仅使用 ServletContext 查找应用程序的 URL

    我正在使用 Spring MVC 编写一个 Java Web 应用程序 我有一个后台进程 它会遍历数据库并查找必须通过电子邮件发送给我的用户的通知 这些电子邮件需要包含应用程序的超链接 对于网络应用程序来说 这似乎是相当常见的模式 但我遇到
  • 如何在 Eclipse 中使用 Hibernate Tools 生成 DAO?

    我在用着 Eclipse Java EE IDE Web 开发人员 版本 Indigo 发布 使用 hibernate 工具 我对 Eclipse 中的 hibernate 很陌生 所以我学习如何配置 hibernate 并使用注释生成 P
  • 如何将 Ant 路径转换为文件集?

    我正在编写一个 Ant 脚本来将项目打包到 WAR 文件中 该软件由多个项目组成 它们有自己的源目录 库等 WAR 任务有一个嵌套元素lib我目前正在研究这个问题 我目前有所需库的参考作为Path 包含几个FileSets 我在类路径引用中
  • @Inject 和 @PostConstruct 不适用于单例模式

    我有一堂课如下 public class UserAuthenticator private static UserAuthenticator authenticator Inject private UserRepository user
  • war 文件大小是否会以某种方式影响应用程序和/或应用程序服务器的性能?

    我们一直在工作中遇到困难 有人建议我们应该减小 war 文件的大小 特别是 WEB INF lib 目录的大小 以提高生产 JBoss 实例的性能 有件事我至今仍心存疑虑 我们的应用程序服务器中部署了大约 15 个 Web 应用程序 每个应
  • 如何在 Struts 2 应用程序中读取文本文件 [重复]

    这个问题在这里已经有答案了 开发 Struts 2 应用程序时遇到以下问题 我需要读取使用我的应用程序部署在 Web 服务器中的文本文件 我怎样才能知道它的相对路径来访问它 换句话说 如果我知道部署目录内的相对路径 如何找到绝对路径 当我在
  • 有没有更简单的方法来部署到WebSphere?

    我见过这个问题 https stackoverflow com questions 4046 can someone give me a working example of a buildxml for an ear that deplo
  • Java如何从字符串实例化一个类[重复]

    这个问题在这里已经有答案了 可能的重复 在 Java 中从变量创建新类 https stackoverflow com questions 1268817 create new class from a variable in java 我
  • 立即重新部署 Java EE 应用程序

    我对 Java EE 很陌生 一直在为部署过程的缓慢而苦苦挣扎 并想知道我是否做错了什么 我对 Django 有丰富的经验 其中代码的更改会立即发生 而且似乎热部署 Java EE 应用程序有点令人困惑 有多种东西声称可以热部署 Glass
  • 无法让远程 EJB 与 Wildfly 上的 EJB 客户端 API 配合使用

    我目前正在努力让远程 EJB 调用在 wildfly 8 x 和 9 x 上工作 详细来说 它是关于使用 EJB 客户端 API 方法从独立客户端应用程序 而不是从另一个应用程序服务器 进行远程调用 远程命名方法适用于我 但不适用于我的场景
  • 部署 JSF 复合组件以供共享使用

    我从事一个 Java EE 项目 该项目计划在未来变得相当大 我想共享尽可能多的代码 这不仅包括 Java 代码 还包括 UI 元素的代码 我考虑开发基于明确定义的主题 如用户管理 税收 产品 的企业组件 这些组件在消息 bean 等的基础

随机推荐

  • Xamarin Forms - 在运行时翻译抽屉菜单项

    我正在遵循优秀的教程 Link 关于 Xamarin Forms 中的多语言 一切正常 但我有一个问题 在我的应用程序中 我使用 Syncfusion 的导航抽屉 因为我在 ListView 中生成菜单项 如下所示 DrawerPage x
  • 批处理脚本未按预期分配变量

    我正在编写一个批处理脚本 它将分配一个变量字符串 然后修剪它 我面临两个问题 变量分配不正确 它从变量文件中获取最后一个值 我第一次运行脚本时未分配变量 我需要第二次运行脚本以查看变量是否已分配 在第三次运行时 我可以看到修剪正在起作用 我
  • 将数据帧中的字符转换为时间戳

    我在数据框中有一个被识别为字符类的时间戳 由于某种原因 我无法将其转换为 poxis 时间戳 这是数据示例 ID dateTime stage 1 2016 11 01T00 00 00 000Z 4 82 2 2016 11 01T00
  • 如何使 Text::slug() 正确转换德语变音符号?

    我正在使用 CakePHP 3 6 当我使用带有德语变音符号的单词时 例如 Text slug Grundst cke 我会得到 Grundstucke 其中 u 但这是不正确的 我应该得到 Grundstuecke 其中 ue 是否有一个
  • 将整数数组传递给 ASP.NET Web API?

    我有一个 ASP NET Web API 版本 4 REST 服务 我需要在其中传递一个整数数组 这是我的操作方法 public IEnumerable
  • 多个 Mat Paginator 无法在 Angular 组件中工作

    我有三个不同的 div Post Todo User 根据用户选择我显示不同的表格 例如 默认情况下Post部分加载表100 records 如果用户选择Todo部分 表格应显示Todo记录等带有分页 I ve three datasour
  • R tableGrob 更改行的格式

    我有一些相对简单的代码来创建用于打印到 PDF 的表格 library gridExtra df lt head iris tableGrob df gp gpar fontsize 8 rows NULL 我想让最后一行的格式与标题行相同
  • 使用 Windows 批处理文件的单行多个命令

    我尝试了解批处理文件中单个命令行中的多个命令如何工作 dir md folder1 rename folder1 mainfolder 和其他具有类似命令的情况 但是 替换为 dir md folder1 rename folder1 ma
  • 为什么 Microsoft Azure(或一般的 Swift)无法更新变量以在表查询后返回?

    我一直在关注微软Azure文档成功查询表 将项目插入 读取和更新到数据库中工作正常 但在一个简单的方法结束时 立即关闭文档 func getAllEventIDs gt String var events String this is to
  • 基于 Django 类的 UpdateView 以及用于多个上传文件的表单

    针对我目前面临的问题 我有两个问题 django 中的最佳实践是覆盖 CreateView 中的 post 方法吗 如果不是 您是否在 CategoryFullForm 或 CreateView 中编写 form valid 函数 它会是什
  • 名称查找和类范围

    为什么setVal的返回类型是string类型 参数类型是double类型 typedef string Type Type initVal class Exercise public typedef double Type Type se
  • Ember renderTemplate 中继模型

    在这里努力开发我的 Ember 应用程序 一切进展顺利 但是 我遇到了意外行为的问题 并且不确定解决此问题的最佳方法 问题是在特定路线中 我想将另一条路线渲染到另一个出口 但是 我渲染到另一个出口的另一条路线并不保留它自己的模型 如果我这样
  • 如何在 Tensorflow 中将变量重用设置回 False?

    在Tensorflow中 我们可以将变量重用设置为True with tf get variable scope reuse variables 有什么方法可以在不离开范围的情况下将其设置回 False 吗 这不可能 在共享变量的教程中 他
  • 如何在 Linux 中转义 scp 复制路径中的空格?

    我想将文件从远程复制到本地系统 现在我在linux系统中使用scp命令 我有一些文件夹或文件名带有空格 当我尝试复制该文件时 它显示错误消息 没有这样的文件或目录 I tried scp email protected home 5105
  • Laravel 4 - 分页忽略 Fluent 中的不同

    我以清晰和分页的方式提出流畅的请求 我的问题是分页请求在不同的请求之前执行 我的流利要求 candidates DB table candidates gt select candidates gt distinct gt join can
  • 如何使 For-Each 循环向后运行

    我用 VBA 编写了一个小脚本 它根据列表检查给定范围内的单元格的值 如果单元格值与列表中的值匹配 则保留该单元格值 否则将其删除 我想知道如何让它向后运行 因为向前运行会产生问题 我对此进行了一些研究 并尝试将 Step 1 附加到开始
  • Matlab神经网络,如何强制使用某些集合进行训练、验证和测试?

    如果您使用 GUI nnstart 则仅提供输入和输出 但您无法决定哪些行将作为训练 验证和测试集 因为它们是随机选择的 如何手动指定它们 您可以使用从 NNSTART 启动的任何 GUI 来创建一些示例训练代码 然后通过设置以下数据划分值
  • 从 Base64 编码字符串中检索 ECC 公钥

    我一直在尝试创建一个实例java security PublicKey使用 Base64 编码的 ECC 公钥 MainActivity java Override protected void onCreate Bundle savedI
  • 生成的 SVG 图像不显示

    我正在开发一个 JavaScript 类来显示所有 SVG 对象 但是当我创建元素 image 时 浏览器不会显示它 但是 如果我复制生成的代码并将其放入另一个文档中 则会显示图像 当我使用 Firebug 的检查器搜索图像时 出现了对象但
  • EJB 3.1:是否允许将 Bean 注入到不受容器管理的资源中?

    我使用的是 JBoss 6 1 它不完全符合 EJB 3 1 截至目前 我无法通过以下方式将 EJB 注入到我的 Struts 操作类 或任何非 Java EE 容器管理的类中 EJB 但是当 EJB 3 1 规范完全实现时这可能吗 如果没